[opus] Antw: AVX Optimizations in Opus

Velea, Radu radu.velea at intel.com
Thu Jan 21 09:37:48 UTC 2016


To answer your question: AVX for starters, and then later on AVX2 if there is a need for improvement. The detection code is already upstreamed into opus: both compile time and runtime detection:
According to Wikipedia AVX is supported on a wide range hardware:



-----Original Message-----
From: Ulrich Windl [mailto:Ulrich.Windl at rz.uni-regensburg.de] 
Sent: Thursday, January 21, 2016 9:20 AM
To: Velea, Radu; opus at xiph.org
Subject: Antw: [opus] AVX Optimizations in Opus


AFAIK, there are different version of AVX; maybe clarify which versions you use, and how you detect the availability of the instructions needed. Also you could point out which CPUs are expected to be supported. Also consider that besides Intel there still exists AMD ;-)


>>> "Velea, Radu" <radu.velea at intel.com> schrieb am 20.01.2016 um 19:02 
>>> in
<81B494F3CB9BA140BC4E7A506215EB0C5C442CFE at irsmsx105.ger.corp.intel.com>:
> Hello,
> I had talked earlier with 'Timothy B. Terriberry' <tterribe at xiph.org>, 
> about adding support for AVX instructions in Opus, but since he 
> appears to be busy I would like to resend this on the mailing list.
> I've created a pull request https://github.com/xiph/opus/pull/5 to add 
> the testing infrastructure for the changes before adding the actual code.
> A draft for the rest of the code for the AVX functions can be found here: 
> https://github.com/rvelea/opus/commits/workspace. Timothy advised me 
> to break them into smaller commits before trying to push them so as 
> not to break anything.
> If anyone is interested in reviewing this please let me know and I 
> will follow up with the rest of the code via pull requests.
> Thanks,
> Radu

More information about the opus mailing list