[MPlayer-dev-eng] [PATCH] SSE version of DCT64 for mp3lib

Guillaume POIRIER poirierg at gmail.com
Thu Jun 22 23:21:25 CEST 2006


Hi,

On 6/22/06, Zuxy Meng <zuxy.meng at gmail.com> wrote:
> 2006/6/23, Rich Felker <dalias at aerifal.cx>:
> > 60% faster than 0% cpu usage is still 0% cpu usage. :)
> > Seriously, even on my K6, mp3lib uses so little cpu time that I can't
> > even measure it with top (shows up at bottom of list as 0% :).
> >
>
> There's another reason other than performance: MMX, 3DNow! and
> 3DNow!Ext versions hardcoded 32-bit registers in the inline asm, which
> might cause problem under x86-64.

FYOI:

Your SSE version (dct64_sse.o) builds fine here, dct36_3dnow.o doesn't,
dct64_3dnow.o,  dct64_MMX.o, dct64_k7.o builds

> Or you can stick to the C version under x86-64. Of course it's still
> fast enough on concurrent CPUs.

Hehe: it's very funny: the C version is the only thing that gets built on AMD64:
~/mplayer/mp3lib$ make
/usr/lib/gcc-snapshot/bin/gcc -c -I.. -I../libvo -I../../libvo  -O4
-march=k8 -mtune=k8 -pipe -ffast-math -fomit-frame-pointer
-D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64   -o sr1.o
sr1.c
ar r libMP3.a sr1.o
true libMP3.a

Looks like you put a finger on an interesting issue. I'll have a look
at it later this week-end, hopefully.

Guillaume
-- 
"Success consists of going from failure to failure without loss of enthusiasm."
 -- Winston Churchill



More information about the MPlayer-dev-eng mailing list