[MPlayer-dev-eng] Re: Compile options

Loren Merritt lorenm at u.washington.edu
Wed Sep 20 19:46:09 CEST 2006


On Wed, 20 Sep 2006, Andrew Savchenko wrote:

> I've made some tests for 3 movie types: H264 HD
> (http://images.apple.com/movies/wb/the_fountain/the_fountain-tsr_h480p.mov),
> x264 and mpeg4; and for 4 sets of compile options: general -O4 option,
> general -O4 and -fno-inline-functions for dsputil_mmx.o only, general
> -O4 and -O2 for dsputil_mmx.o only, general -O2.
>
[...]
>
> As you can see, for H264 HD -O4 general build, -fno-inline-functions for
> dsputil_mmx.o is indeed the fastest, also it is the fastest for an
> ordinary h264. But for mpeg4 is is slower than -O4.
>
> Thereby there is no compile option which provides the fastest code for
> decoding arbitrary type of movie. When we make optimizations for h264,
> we simultaneously make mpeg4 playback slower and vice versa.
>
> Thus we must decide. Mpeg4 is widely used than h264, moreover a lot of
> slow CPU's can decode mpeg4, but can't decode h264 (the last one is
> more cpu-hungry). IMO it is the main reason to make mpeg4 playback as
> fast as possible for those systems, even by cost of _slightly_ slowing
> down playback of h264 on fast machines.
>
> So, I think all optimization parameters must remain unchanged (i.e. -O4
> by default with no exception). Do you agree with me?

The obvious next thing to try is: add attribute(noinline) just to the h264 
dsp functions.

> Results for MPEG4:
> ==> General -O4 build:
>
> vc: (8.835 \pm 0.019)s
> vo: (176.051 \pm 0.070)s
> user: 1m(45.945 \pm 0.152)s

What vo are you using, that manages to take 20 times as much cpu-time as 
the codec?

--Loren Merritt



More information about the MPlayer-dev-eng mailing list