[MPlayer-dev-eng] Re: Compile options

Trent Piepho xyzzy at speakeasy.org
Sat Sep 23 16:17:26 CEST 2006


On Thu, 21 Sep 2006, Carl Eugen Hoyos wrote:
> Andrew Savchenko <Bircoph <at> list.ru> writes:
> Could somebody else repeat the test for H264 and MPEG-4?

I've repeated the tests for both H.264 and mpeg-4.  Using
mplayer-svn-r19836 with gcc 4.0.1 on a dual AthlonXP 1800+.

I'm using the 1080p serenity trailer for h264 and the 480p matrix trailer
for mpeg-4.

Options used were -quiet -benchmark -vo null -nosound

Compilation options tried, with -fno-PIC -march=athlon-xp
-fomit-frame-pointer -ffast-math:

-O2 (implies -fno-inline-functions)
-O2 with -finline-functions for dsputil_mmx.c only
-O2 -finline-functions for all files
-O4 -fno-inline-functions for all files
-O4 with -fno-inline-functions for dsputil_mmx.c only
-O4 (implies -finline-functions)

An overall plot of the times,
http://www.speakeasy.org/~xyzzy/pictures/mpopt1.png

>From the plot, we can see a few things..
1.  Inlining functions slows down both mpeg-4 and h264.
2.  For H264, there is little difference between inlining functions in just
    dsputil_mmx.c and everything.
3.  MPEG-4 isn't slowed down as much as H.264 is by inlining functions in
    dsp_util_mmx.c.

Testing certain pairs, the following are true with greater than 95%
probablility.

For H.264, -O4 -fno-inline-functions is fastest.
For MPEG-4, -O2 is fastest.

For H.264, it doesn't make any difference if -fno-inlune-functions is used
for everything or just dsputil_mmx.c.

Mean and sample standard deviation for each optimization level, 10 samples per test.
H.264
O2		132.4917	1.156209
O2.if_dsp	138.7776	1.000021
O2.if_all	138.8656	1.580287
O4.noif_all	130.8225	0.544290
O4.noif_dsp	130.9878	1.969634
O4		137.1514	1.163776
MPEG-4
O2		12.63180	0.0780139
O2.if_dsp	12.92850	0.0464405
O2.if_all	13.31500	0.1175538
O4.noif_all	12.74250	0.0764275
O4.noif_dsp	12.71870	0.0666967
O4		13.06280	0.0300843



More information about the MPlayer-dev-eng mailing list