Dear Opus family, we have implemented the Opus codec at a Texas Instruments DSP C6418. It is working fine! Does anyone has experience with the configuration of the codec for a speed optimized implementation on that DSP? At the moment, we use the following settings: #define NONTHREADSAFE_PSEUDOSTACK 1 #define FIXED_POINT 1 #define DISABLE_FLOAT_API 1 #define OPUS_BUILD 1 #define CONFIG_TI_C6X 1 Are there any better or further possibilities to get a speed optimized code on the TI C6418? Code size is less relevant. Many thanks in advance! Best regards, Robert Robert Madinger [avt_logo_signatur] AVT Audio Video Technologies GmbH Nordostpark 91 | D-90411 Nuernberg T: +49 911 5271-0 | F: +49 911 5271-100 RMadinger at avt-nbg.de<mailto:%0bRMadinger at avt-nbg.de> | www.avt-nbg.de<http://www.avt-nbg.de/> Managing Director: Wilfried Hecht Registered Office: Nuernberg, HRB 14317 [Twitter_logo_blue Signatur] AVT is now on Twitter - Follow @AVTGmbH<https://twitter.com/avtgmbh> -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.xiph.org/pipermail/opus/attachments/20181019/9c205847/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: image001.jpg Type: image/jpeg Size: 2852 bytes Desc: image001.jpg URL: <http://lists.xiph.org/pipermail/opus/attachments/20181019/9c205847/attachment.jpg> -------------- next part -------------- A non-text attachment was scrubbed... Name: image002.png Type: image/png Size: 1257 bytes Desc: image002.png URL: <http://lists.xiph.org/pipermail/opus/attachments/20181019/9c205847/attachment.png>
Hi Robert, There's also a TI_C6X_ASM config option, that causes the fixed_c6x.h header to be used, but I think it hasn't been tested in years. I don't know if it still works, but if not it's probably not too hard to fix (patch welcome). The fixed_c6x.h file can also probably be extended to cover more of the C6x arithmetic operators. Beyond that, you'd have to go to assembly/intrinsic optimization of specific functions. Cheers, Jean-Marc On 10/19/2018 11:37 AM, Robert Madinger wrote:> Dear Opus family, > > > > we have implemented the Opus codec at a Texas Instruments DSP C6418. > > It is working fine! > > > > Does anyone has experience with the configuration of the codec for a > speed optimized implementation on that DSP? > > At the moment, we use the following settings: > > > > #define NONTHREADSAFE_PSEUDOSTACK 1 > > #define > FIXED_POINT > 1 > > #define DISABLE_FLOAT_API > 1 > > #define > OPUS_BUILD > 1 > > #define > CONFIG_TI_C6X 1 > > > > > > Are there any better or further possibilities to get a speed optimized > code on the TI C6418? > > Code size is less relevant. > > > > Many thanks in advance! > > Best regards, > > Robert > > > > > > Robert Madinger > > avt_logo_signatur > AVT Audio Video Technologies GmbH > Nordostpark 91 | D-90411 Nuernberg > T:+49 911 5271-0 | F: +49 911 5271-100_ > RMadinger at avt-nbg.de <mailto:%0bRMadinger at avt-nbg.de>_| www.avt-nbg.de > <http://www.avt-nbg.de/> > Managing Director: Wilfried Hecht > Registered Office: Nuernberg, HRB 14317 > > Twitter_logo_blue Signatur *AVT is now on Twitter - **Follow > @AVTGmbH <https://twitter.com/avtgmbh>* > > > > > > _______________________________________________ > opus mailing list > opus at xiph.org > http://lists.xiph.org/mailman/listinfo/opus >
Hi Jean-Marc, thank you for that suggestion! It seems that the file "fixed_c6x.h" is not part of the Opus sources, so the compiler cannot find it after enabling the TI_C6X_ASM config option. Maybe it was only part of an early version of the Opus sources? I looked for the file in versions V1.1, V1.1.1, V1.2alpha and V1.3 but did not found it. Do you have an idea, where I can get the file? Thank you and best regards, Robert AVT Audio Video Technologies GmbH Nordostpark 91 | D-90411 Nuernberg T: +49 911 5271-0 | F: +49 911 5271-100 RMadinger at avt-nbg.de | www.avt-nbg.de Managing Director: Wilfried Hecht Registered Office: Nuernberg, HRB 14317 AVT is now on Twitter - Follow @AVTGmbH -----Ursprüngliche Nachricht----- Von: Jean-Marc Valin <jmvalin at jmvalin.ca> Gesendet: Freitag, 19. Oktober 2018 20:04 An: Robert Madinger <rmadinger at avt-nbg.de>; opus at xiph.org Betreff: Re: [opus] OPUS at Texas Instruments C6418 Hi Robert, There's also a TI_C6X_ASM config option, that causes the fixed_c6x.h header to be used, but I think it hasn't been tested in years. I don't know if it still works, but if not it's probably not too hard to fix (patch welcome). The fixed_c6x.h file can also probably be extended to cover more of the C6x arithmetic operators. Beyond that, you'd have to go to assembly/intrinsic optimization of specific functions. Cheers, Jean-Marc On 10/19/2018 11:37 AM, Robert Madinger wrote:> Dear Opus family, > > > > we have implemented the Opus codec at a Texas Instruments DSP C6418. > > It is working fine! > > > > Does anyone has experience with the configuration of the codec for a > speed optimized implementation on that DSP? > > At the moment, we use the following settings: > > > > #define NONTHREADSAFE_PSEUDOSTACK 1 > > #define > FIXED_POINT > 1 > > #define DISABLE_FLOAT_API > 1 > > #define > OPUS_BUILD > 1 > > #define > CONFIG_TI_C6X > 1 > > > > > > Are there any better or further possibilities to get a speed optimized > code on the TI C6418? > > Code size is less relevant. > > > > Many thanks in advance! > > Best regards, > > Robert > > > > > > Robert Madinger > > avt_logo_signatur > AVT Audio Video Technologies GmbH > Nordostpark 91 | D-90411 Nuernberg > T:+49 911 5271-0 | F: +49 911 5271-100_ RMadinger at avt-nbg.de > <mailto:%0bRMadinger at avt-nbg.de>_| www.avt-nbg.de > <http://www.avt-nbg.de/> Managing Director: Wilfried Hecht Registered > Office: Nuernberg, HRB 14317 > > Twitter_logo_blue Signatur *AVT is now on Twitter - **Follow > @AVTGmbH <https://twitter.com/avtgmbh>* > > > > > > _______________________________________________ > opus mailing list > opus at xiph.org > http://lists.xiph.org/mailman/listinfo/opus >