[FFmpeg-devel] [PATCH] swresample/resample: improve bessel function accuracy

Ganesh Ajjanagadde gajjanag at mit.edu
Tue Nov 3 18:42:33 CET 2015


On Tue, Nov 3, 2015 at 11:53 AM, Timothy Gu <timothygu99 at gmail.com> wrote:
> On Tue, Nov 3, 2015 at 4:47 AM Ganesh Ajjanagadde > - GCC vectorization
> slows down compilation A LOT in all versions. The newer
>
>> > the worse.
>>
>> A ~ 20% slowdown on a build for a ~ 20% improvement in an overall FATE
>> bench - sounds like a win to me especially with ccache.
>
>
> Of course, but unfortunately the FATE improvement is on the order of 1-2%,
> i.e. near negligible, rather than ~20%.
>
>
>>
>> > - If you are developing, use clang, and DON'T use GCC 5 with
>> vectorization.
>>
>> This is an opinion, so I will state mine here: if you are developing
>> use ccache + GCC > ccache + clang > clang = gcc. Reason for the first
>> is due to the terrible interaction ccache has with clang. I still will
>> use GCC 5.2 + ccache (with vectorization) for my builds, and will
>> inform Arch packagers once we have finalized configure in this respect
>> :).
>>
>
> Personally ccache has proved itself to be more of a trouble than its worth
> in my experiences, but if you have a fast enough machine or ccache working
> that it doesn't matter.
>
>
>>
>> > - For release builds, an option to turn it on (or rather to not turn it
>> > off) would be helpful; but if you really care about performance _that_
>> much
>> > then you should probably use some other compilers instead.
>>
>> No, not true at all. Why do we bother with asm? Many times for such
>> "last mile" optimizations. A 20% improvement in FATE across board is
>> nothing to sneeze at given what I have seen in FFmpeg.
>
>
> Again, the improvement is more like 2%.

Oops, can't do arithmetic, got an extra 0. My views still don't really
change on this.

>
> Furthermore, barring ICC (for Intel), Clang and GCC are among the best
>> quality compilers today. I don't know about what "other compilers" you
>> are referring to.
>>
>
> I meant ICC, which has a much more mature vectorizer.

By the way, GCC is heavily working on its auto-vectorizer, so
interesting things may happen soon.

>
> Timothy
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


More information about the ffmpeg-devel mailing list