[MPlayer-dev-eng] MPEG-1/2 decoding benchmarks

Diego Biurrun diego at biurrun.de
Tue Apr 19 03:52:34 CEST 2005


On Mon, Apr 18, 2005 at 04:47:13PM +0200, Michael Niedermayer wrote:
> 
> On Monday 18 April 2005 15:06, Diego Biurrun wrote:
> >
> > If you have further suggestions or things I should do differently,
> > speak up.  I _could_ also test on a Pentium MMX 233, but I doubt the
> 
> maybe try a different gcc version, i didnt benchmark ffmpeg with 2.95 lately, 
> but with 3.3 ffmpeg beats libmpeg2 by 10% on many files like 
> matrixbench_mpeg2.mpg, while on others it lost miserably by a similar amount

I retested with gcc 3.3.5 on x86 as requested as well as 2.95.4 on
PPC.

Result:

x86:
libmpeg2 0.4.0 is up to 5% faster than 0.3.1, but gcc 3.3.5 gives up
to a 5% slowdown compared to 2.95.4.

For FFmpeg "lavdopts idct=4" no longer is an improvement, but
"lavdopts fast" is still the quickest.

When comparing FFmpeg and libmpeg2, libmpeg2 no longer is the clear
winner, it's faster (7%) for bomb.mpeg, but slower for heist60.mpeg
(5%) and dvd.mpeg (8%).

PPC:
FFmpeg is clearly faster than libmpeg2 when compiled with gcc 2.95.4,
but since 2.95.4 barely reaches 50% (!) of the performance of 3.3.5 I
think these numbers can be ignored.  Apparently gcc 3.x is one hell of
an improvement over 2.95.x on PPC.

Conclusion:
It might be interesting to benchmark with gcc 3.4 or 4.0 as well since
I found 3.4 to be the same speed as 2.95 in a compiler benchmark a
long time ago, while 3.3.x was the absolute low point.

The race between FFmpeg and libmpeg2 is not completely decided.
Somebody should go ahead and speed up FFmpeg a bit to tilt the scales
in FFmpeg's favor ;-)

detailed numbers below

Diego


###############
# AMD K6-III+ #
###############
_____________
libmpeg 0.3.1
~~~~~~~~~~~~~
mplayer -vc mpeg12  bomb.mpeg
BENCHMARKs: VC:   0.711s VO:   0.004s A:   0.000s Sys:   0.104s =    0.819s
BENCHMARK%: VC: 86.8036% VO:  0.4652% A:  0.0000% Sys: 12.7312% = 100.0000%

mplayer -vc mpeg12  heist60.mpeg
BENCHMARKs: VC:   4.432s VO:   0.013s A:   0.000s Sys:   0.377s =    4.822s
BENCHMARK%: VC: 91.9077% VO:  0.2756% A:  0.0000% Sys:  7.8167% = 100.0000%

mplayer -vc mpeg12  dvd.mpeg
BENCHMARKs: VC:  13.069s VO:   0.008s A:   0.000s Sys:   1.147s =   14.224s
BENCHMARK%: VC: 91.8805% VO:  0.0555% A:  0.0000% Sys:  8.0640% = 100.0000%

_____________
libmpeg 0.4.0
~~~~~~~~~~~~~

mplayer -vc mpeg12  bomb.mpeg
BENCHMARKs: VC:   0.677s VO:   0.003s A:   0.000s Sys:   0.095s =    0.775s
BENCHMARK%: VC: 87.3980% VO:  0.3692% A:  0.0000% Sys: 12.2328% = 100.0000%

mplayer -vc mpeg12  heist60.mpeg
BENCHMARKs: VC:   4.213s VO:   0.014s A:   0.000s Sys:   0.327s =    4.553s
BENCHMARK%: VC: 92.5262% VO:  0.3010% A:  0.0000% Sys:  7.1728% = 100.0000%

mplayer -vc mpeg12  dvd.mpeg
BENCHMARKs: VC:  13.046s VO:   0.008s A:   0.000s Sys:   1.103s =   14.158s
BENCHMARK%: VC: 92.1488% VO:  0.0578% A:  0.0000% Sys:  7.7934% = 100.0000%


______
FFmpeg
~~~~~~

mplayer -vc ffmpeg12  bomb.mpeg
BENCHMARKs: VC:   0.739s VO:   0.002s A:   0.000s Sys:   0.101s =    0.842s
BENCHMARK%: VC: 87.7377% VO:  0.2858% A:  0.0000% Sys: 11.9764% = 100.0000%

mplayer -vc ffmpeg12  heist60.mpeg
BENCHMARKs: VC:   4.087s VO:   0.006s A:   0.000s Sys:   0.322s =    4.415s
BENCHMARK%: VC: 92.5690% VO:  0.1336% A:  0.0000% Sys:  7.2974% = 100.0000%

mplayer -vc ffmpeg12  dvd.mpeg
BENCHMARKs: VC:  12.512s VO:   0.005s A:   0.000s Sys:   1.081s =   13.598s
BENCHMARK%: VC: 92.0160% VO:  0.0356% A:  0.0000% Sys:  7.9484% = 100.0000%


mplayer -vc ffmpeg12 -lavdopts fast  bomb.mpeg
BENCHMARKs: VC:   0.724s VO:   0.002s A:   0.000s Sys:   0.102s =    0.829s
BENCHMARK%: VC: 87.3818% VO:  0.2740% A:  0.0000% Sys: 12.3442% = 100.0000%

mplayer -vc ffmpeg12 -lavdopts fast  heist60.mpeg
BENCHMARKs: VC:   4.053s VO:   0.007s A:   0.000s Sys:   0.331s =    4.391s
BENCHMARK%: VC: 92.2988% VO:  0.1664% A:  0.0000% Sys:  7.5348% = 100.0000%

mplayer -vc ffmpeg12 -lavdopts fast  dvd.mpeg
BENCHMARKs: VC:  11.973s VO:   0.005s A:   0.000s Sys:   1.093s =   13.071s
BENCHMARK%: VC: 91.6001% VO:  0.0352% A:  0.0000% Sys:  8.3647% = 100.0000%


mplayer -vc ffmpeg12 -lavdopts idct=4  bomb.mpeg
BENCHMARKs: VC:   0.751s VO:   0.002s A:   0.000s Sys:   0.099s =    0.852s
BENCHMARK%: VC: 88.1448% VO:  0.2753% A:  0.0000% Sys: 11.5799% = 100.0000%

mplayer -vc ffmpeg12 -lavdopts idct=4  heist60.mpeg
BENCHMARKs: VC:   4.282s VO:   0.006s A:   0.000s Sys:   0.304s =    4.592s
BENCHMARK%: VC: 93.2411% VO:  0.1357% A:  0.0000% Sys:  6.6232% = 100.0000%

mplayer -vc ffmpeg12 -lavdopts idct=4  dvd.mpeg
BENCHMARKs: VC:  12.933s VO:   0.004s A:   0.000s Sys:   1.090s =   14.027s
BENCHMARK%: VC: 92.2017% VO:  0.0311% A:  0.0000% Sys:  7.7672% = 100.0000%



######
# G4 #
######
______________
libmpeg2 0.3.1
~~~~~~~~~~~~~~
mplayer -vc mpeg12  bomb.mpeg
BENCHMARKs: VC:   0.786s VO:   0.002s A:   0.000s Sys:   0.065s =    0.852s
BENCHMARK%: VC: 92.1781% VO:  0.1867% A:  0.0000% Sys:  7.6353% = 100.0000%

mplayer -vc mpeg12  heist60.mpeg
BENCHMARKs: VC:   4.118s VO:   0.004s A:   0.000s Sys:   0.172s =    4.294s
BENCHMARK%: VC: 95.8987% VO:  0.0915% A:  0.0000% Sys:  4.0097% = 100.0000%

mplayer -vc mpeg12  dvd.mpeg
BENCHMARKs: VC:  12.912s VO:   0.005s A:   0.000s Sys:   0.787s =   13.703s
BENCHMARK%: VC: 94.2266% VO:  0.0329% A:  0.0000% Sys:  5.7406% =
100.0000%

______________
libmpeg2 0.4.0
~~~~~~~~~~~~~~
mplayer -vc mpeg12  bomb.mpeg
BENCHMARKs: VC:   0.775s VO:   0.002s A:   0.000s Sys:   0.065s =    0.842s
BENCHMARK%: VC: 92.0909% VO:  0.2005% A:  0.0000% Sys:  7.7087% = 100.0000%

mplayer -vc mpeg12  heist60.mpeg
BENCHMARKs: VC:   4.075s VO:   0.004s A:   0.000s Sys:   0.176s =    4.255s
BENCHMARK%: VC: 95.7723% VO:  0.0946% A:  0.0000% Sys:  4.1331% = 100.0000%

mplayer -vc mpeg12  dvd.mpeg
BENCHMARKs: VC:  12.770s VO:   0.004s A:   0.000s Sys:   0.763s =   13.537s
BENCHMARK%: VC: 94.3307% VO:  0.0328% A:  0.0000% Sys:  5.6365% = 100.0000%


______
FFmpeg
~~~~~~
mplayer -vc ffmpeg12  bomb.mpeg
BENCHMARKs: VC:   0.610s VO:   0.002s A:   0.000s Sys:   0.065s =    0.677s
BENCHMARK%: VC: 90.1049% VO:  0.2376% A:  0.0000% Sys:  9.6575% = 100.0000%

mplayer -vc ffmpeg12  heist60.mpeg
BENCHMARKs: VC:   3.039s VO:   0.004s A:   0.000s Sys:   0.168s =    3.211s
BENCHMARK%: VC: 94.6472% VO:  0.1157% A:  0.0000% Sys:  5.2371% = 100.0000%

mplayer -vc ffmpeg12  dvd.mpeg
BENCHMARKs: VC:  10.331s VO:   0.003s A:   0.000s Sys:   0.781s =   11.115s
BENCHMARK%: VC: 92.9461% VO:  0.0303% A:  0.0000% Sys:  7.0236% = 100.0000%


mplayer -vc ffmpeg12 -lavdopts fast  bomb.mpeg
BENCHMARKs: VC:   0.595s VO:   0.002s A:   0.000s Sys:   0.065s =    0.662s
BENCHMARK%: VC: 89.8779% VO:  0.2408% A:  0.0000% Sys:  9.8813% = 100.0000%

mplayer -vc ffmpeg12 -lavdopts fast  heist60.mpeg
BENCHMARKs: VC:   3.039s VO:   0.003s A:   0.000s Sys:   0.167s =    3.209s
BENCHMARK%: VC: 94.6844% VO:  0.1034% A:  0.0000% Sys:  5.2122% = 100.0000%

mplayer -vc ffmpeg12 -lavdopts fast  dvd.mpeg
BENCHMARKs: VC:   9.905s VO:   0.003s A:   0.000s Sys:   0.778s =   10.687s
BENCHMARK%: VC: 92.6865% VO:  0.0322% A:  0.0000% Sys:  7.2813% = 100.0000%


mplayer -vc ffmpeg12 -lavdopts idct=4  bomb.mpeg
BENCHMARKs: VC:   0.609s VO:   0.002s A:   0.000s Sys:   0.065s =    0.676s
BENCHMARK%: VC: 90.0973% VO:  0.2384% A:  0.0000% Sys:  9.6643% = 100.0000%

mplayer -vc ffmpeg12 -lavdopts idct=4  heist60.mpeg
BENCHMARKs: VC:   3.023s VO:   0.004s A:   0.000s Sys:   0.166s =    3.193s
BENCHMARK%: VC: 94.6887% VO:  0.1103% A:  0.0000% Sys:  5.2010% = 100.0000%

mplayer -vc ffmpeg12 -lavdopts idct=4  dvd.mpeg
BENCHMARKs: VC:  10.327s VO:   0.003s A:   0.000s Sys:   0.782s =   11.112s
BENCHMARK%: VC: 92.9295% VO:  0.0309% A:  0.0000% Sys:  7.0396% = 100.0000%




More information about the MPlayer-dev-eng mailing list