[XviD-devel] [BUG?] cbp_calc_mmx

Edouard Gomez ed.gomez at free.fr
Sun Oct 26 20:32:26 CET 2003


Edouard Gomez (ed.gomez at free.fr) wrote:
> Results:
> ffmpeg rolled xmm: 250
> ffmpeg unrolled xmm: 308
> ffmpeg rolled mmx: 280
> ffmpeg unrolled mmx: 340
> skal unrolled xmm: 280
> skal unrolled mmx: 308

Wrong results for ffmpeg version. I forgot one loop (doing only 7 row
DCTs).

> Skal code is unrolled  at the moment, i'll modify it a  bit to allow a
> rolled version.

I modified it a bit, and  could test both rolled and unrolled. Note that
the code looks even more like the ffmpeg one now we use double tables to
allow  loop treatment,  only the  rounding  seems to  be different.  The
FFMPEgcode was strictly  equivalent to the old one  (just factorized and
easier to maintain).

ffmpeg   rolled xmm: 290
ffmpeg unrolled xmm: 290
ffmpeg   rolled mmx: 340
ffmpeg unrolled mmx: 390
skal   unrolled xmm: 288
skal     rolled xmm: 290
skal   unrolled mmx: 322
skal     rolled mmx: 353

Using  one of these  fDCTs results  in an  amazingly HUGE  overall speed
increase of 1% and a little PSNR loss (0.00xdB) for the skal version.

I'm actually  modifying all  the needed parts  on my branch,  i'll merge
back things later.

Ah, what is the status of the fDCT sse2 code ? i droped it atm because
it's disabled, and the note says that it's inaccurate.

-- 
Edouard Gomez


More information about the XviD-devel mailing list