[Ffmpeg-cvslog] CVS: ffmpeg/libavcodec mpegvideo.c,1.511,1.512

Jeff Clagg snacky
Fri Mar 24 02:17:32 CET 2006


On Fri, Mar 24, 2006 at 12:53:35AM +0200, Jan Knutar wrote:
> On Friday 24 March 2006 00:43, Diego Biurrun wrote:
> > On Thu, Mar 23, 2006 at 10:54:50PM +0100, Loren Merritt CVS wrote:
> > > 
> > > Modified Files:
> > >  mpegvideo.c 
> > > Log Message:
> > > prefetch pixels for future motion compensation. 4-10% faster mpeg1/2/4.
> > 
> > Have you benchmarked FFmpeg against libmpeg2 after the change?  Would be
> > very interesting...
> 
> As would benchmarks comparing ffmpeg before prefetch, with ffmpeg after
> prefetch, on other CPUs than Loren's.

I tried on one machine (not my own) and got mixed results, mostly
unfavorable.

The machine is a dual core 3.2ghz p4. I compared cvs from 3-21 (just
prior to Loren's last bunch of mmx commits) with cvs from after the
prefetch change, using GCC 4.0.3. In a nutshell, mpeg4 ASP is about 8%
slower, mpeg2 is 10%-20% slower, but H.264 speed improved by less than
2%. Below is a summary of the results. Maybe sometime later on, I'll try
these tests at home, using my Athlon 64 in 32-bit mode, with an older
GCC. Though maybe Loren's already done exactly this test.

---
test.avi: mpeg4 asp. using -ac null -ao null -vo null -benchmark
old (060321-13:15)
BENCHMARKs: VC:  14.590s VO:   0.175s A:   0.000s Sys:   0.943s =   15.708s
BENCHMARK%: VC: 92.8845% VO:  1.1117% A:  0.0000% Sys:  6.0038% = 100.0000%
BENCHMARKs: VC:  14.607s VO:   0.176s A:   0.000s Sys:   0.939s =   15.722s
BENCHMARK%: VC: 92.9094% VO:  1.1183% A:  0.0000% Sys:  5.9722% = 100.0000%
new (060323-19:36)
BENCHMARKs: VC:  15.835s VO:   0.176s A:   0.000s Sys:   0.949s =   16.960s
BENCHMARK%: VC: 93.3677% VO:  1.0392% A:  0.0000% Sys:  5.5931% = 100.0000%
BENCHMARKs: VC:  15.851s VO:   0.176s A:   0.000s Sys:   0.945s =   16.973s
BENCHMARK%: VC: 93.3922% VO:  1.0377% A:  0.0000% Sys:  5.5701% = 100.0000%


fulls1.264 4000 frames. using -vo null -benchmark
old
BENCHMARKs: VC:  31.984s VO:   0.052s A:   0.000s Sys:   0.394s =   32.430s
BENCHMARK%: VC: 98.6250% VO:  0.1601% A:  0.0000% Sys:  1.2149% = 100.0000%
BENCHMARKs: VC:  31.562s VO:   0.051s A:   0.000s Sys:   0.384s =   31.997s
BENCHMARK%: VC: 98.6404% VO:  0.1607% A:  0.0000% Sys:  1.1989% = 100.0000%
new
BENCHMARKs: VC:  31.702s VO:   0.052s A:   0.000s Sys:   0.379s =   32.132s
BENCHMARK%: VC: 98.6602% VO:  0.1612% A:  0.0000% Sys:  1.1787% = 100.0000%
BENCHMARKs: VC:  31.687s VO:   0.051s A:   0.000s Sys:   0.370s =   32.108s
BENCHMARK%: VC: 98.6888% VO:  0.1601% A:  0.0000% Sys:  1.1510% = 100.0000%

x264cbrtest1.264 4000 frames. using -vo null -benchmark
BENCHMARKs: VC:  30.013s VO:   0.053s A:   0.000s Sys:   0.377s =   30.442s
BENCHMARK%: VC: 98.5893% VO:  0.1730% A:  0.0000% Sys:  1.2377% = 100.0000%
BENCHMARKs: VC:  29.650s VO:   0.053s A:   0.000s Sys:   0.370s =   30.072s
BENCHMARK%: VC: 98.5958% VO:  0.1748% A:  0.0000% Sys:  1.2294% = 100.0000%
new
BENCHMARKs: VC:  29.307s VO:   0.054s A:   0.000s Sys:   0.359s =   29.719s
BENCHMARK%: VC: 98.6118% VO:  0.1815% A:  0.0000% Sys:  1.2067% = 100.0000%
BENCHMARKs: VC:  29.343s VO:   0.053s A:   0.000s Sys:   0.359s =   29.756s
BENCHMARK%: VC: 98.6138% VO:  0.1792% A:  0.0000% Sys:  1.2070% = 100.0000%

704x480.m2v
ffmpeg 10000 frames. using -vo null -benchmark
old
BENCHMARKs: VC:  25.933s VO:   0.123s A:   0.000s Sys:   1.594s =   27.650s
BENCHMARK%: VC: 93.7911% VO:  0.4447% A:  0.0000% Sys:  5.7642% = 100.0000%
BENCHMARKs: VC:  25.689s VO:   0.121s A:   0.000s Sys:   1.924s =   27.735s
BENCHMARK%: VC: 92.6240% VO:  0.4372% A:  0.0000% Sys:  6.9388% = 100.0000%
new
BENCHMARKs: VC:  30.941s VO:   0.122s A:   0.000s Sys:   1.710s =   32.773s
BENCHMARK%: VC: 94.4094% VO:  0.3725% A:  0.0000% Sys:  5.2181% = 100.0000%
BENCHMARKs: VC:  31.009s VO:   0.123s A:   0.000s Sys:   1.455s =   32.587s
BENCHMARK%: VC: 95.1573% VO:  0.3777% A:  0.0000% Sys:  4.4649% = 100.0000%

bbc-sample_small.mpg (H.264). no sound in stream; using -vo null -benchmark
BENCHMARKs: VC:   6.670s VO:   0.002s A:   0.000s Sys:   0.056s =    6.728s
BENCHMARK%: VC: 99.1493% VO:  0.0253% A:  0.0000% Sys:  0.8254% = 100.0000%
new
BENCHMARKs: VC:   6.581s VO:   0.002s A:   0.000s Sys:   0.051s =    6.634s
BENCHMARK%: VC: 99.2085% VO:  0.0239% A:  0.0000% Sys:  0.7676% = 100.0000%

720p.m2v
ffmpeg 8000 frames. using -vo null -benchmark
BENCHMARKs: VC:  38.564s VO:   0.101s A:   0.000s Sys:   1.690s =   40.356s
BENCHMARK%: VC: 95.5608% VO:  0.2515% A:  0.0000% Sys:  4.1877% = 100.0000
new
BENCHMARKs: VC:  43.419s VO:   0.103s A:   0.000s Sys:   2.024s =   45.547s
BENCHMARK%: VC: 95.3289% VO:  0.2269% A:  0.0000% Sys:  4.4442% = 100.0000%





More information about the ffmpeg-cvslog mailing list