[FFmpeg-devel] [PATCH 4/4] lavc/fft-test: update benchmark code

Reimar Döffinger Reimar.Doeffinger at gmx.de
Fri Mar 25 17:27:46 CET 2016


On Fri, Mar 25, 2016 at 09:11:10AM -0700, Ganesh Ajjanagadde wrote:
> On Fri, Mar 25, 2016 at 7:53 AM, Michael Niedermayer
> <michael at niedermayer.cc> wrote:
> > On Thu, Mar 24, 2016 at 05:50:52PM -0700, Ganesh Ajjanagadde wrote:
> >> 1. The most important change is the addition of a permute call to ensure
> >> that the comparison between fftw and avfft is fair, since fftw does not
> >> require the call. This is evident from the test code additions in the
> >> previous commit, and also from http://www.fftw.org/benchfft/.
> >
> > So FFTW is slower than AVFFT
> > but FFTW is faster than AVFFT + fft_permute ?
> 
> As can be seen from the benchmarks above, with  fft_permute it is not
> a clear cut case, i.e for small lengths (< 512) they are roughly
> similar, but performance of avfft tanks for longer lengths relative to
> fftw.
> 
> BTW, fftw has multithreading options, these benches don't exercise them.

Note: from what I see their multithreading uses OpenMP.
OpenMP is really great in many ways, but one trick that
really helps it get the performance is using futexes.
futexes can be really bad on non-dedicated systems as
they can end up spinning a lot, stealing CPU time
for no benefit from the whole system.
So excluding that _might_ in fact be quite fair.


More information about the ffmpeg-devel mailing list