[FFmpeg-devel] [RFC]Move is-align-a-power-of-two test up

Carl Eugen Hoyos cehoyos
Mon Apr 5 13:40:37 CEST 2010


Jason Garrett-Glaser <darkshikari <at> gmail.com> writes:

> > FFmpeg compilation with icc's interprocedural optimization between files
> > (-ipo) improves performance by 10% (h264) to 20% (theora).
> 
> I find these numbers extraordinarily dubious.  Theora is all in one file.

Yes, I don't know what I originally tested (probably unpatched vs patched tree).
r22802, only configure patched to force .align is not a power-of-two.
Samples are big_buck_bunny_1080p_stereo.ogg and big_buck_bunny_1080p_h264.mov.
Command line is ./ffmpeg -benchmark -i bunny -an -f null -
configure options are:
icc:
--cc=/opt/intel/Compiler/11.1/069/bin/intel64/icc 
--extra-ldflags=-Wl,-rpath-link,/opt/intel/Compiler/11.1/069/lib/intel64/
--enable-shared

gcc:
--cc=/usr/local/gcc-4.4.3/bin/gcc --enable-shared

ipo:
--cc=/opt/intel/Compiler/11.1/069/bin/intel64/icc 
--extra-ldflags=-Wl,-rpath-link,/opt/intel/Compiler/11.1/069/lib/intel64/
--enable-shared --disable-static --extra-cflags=-ipo

core2:
--cc=/opt/intel/Compiler/11.1/069/bin/intel64/icc
--extra-ldflags=-Wl,-rpath-link,/opt/intel/Compiler/11.1/069/lib/intel64/
--enable-shared --cpu=core2

All configurations pass make test, icc fails alsdec test.

icc bunny.ogg:
bench: utime=126.996s
bench: utime=126.488s

icc bunny.mov:
bench: utime=106.363s
bench: utime=106.039s

gcc bunny.ogg:
bench: utime=129.152s
bench: utime=128.516s

gcc bunny.mov:
bench: utime=111.959s
bench: utime=110.175s

ipo bunny.ogg:
bench: utime=126.780s
bench: utime=125.152s

ipo bunny.mov:
bench: utime=106.871s
bench: utime=107.331s

core2 bunny.ogg:
bench: utime=127.440s
bench: utime=127.032s

core2 bunny.mov:
bench: utime=105.891s
bench: utime=105.423s

I still think we should try to support ipo if it just means an ar patch for
configure (for static ipo) and a changed align test.

Carl Eugen




More information about the ffmpeg-devel mailing list