PDA

View Full Version : XviD idct/fdct function compare


CruNcher
6th April 2003, 05:32
So thx to Koepi for his new Build to test first before release i think he will release it now for all of you :)

it was a hard night :p but finaly im finished :)
and here we go...


Video: 512x384x12 (YV12) @ 25.000 fps, 1501 frames

Quantizer 2

XVID_ENC_FRAME.motion = PMV_EARLYSTOP16 | PMV_HALFPELREFINE16 | PMV_EXTSEARCH16 | PMV_USESQUARES16 | PMV_EARLYSTOP8

|PMV_HALFPELREFINE8;

XVID_ENC_FRAME.general = XVID_H263QUANT | XVID_HALFPEL | XVID_HQACPRED | XVID_INTER4V;


Video: 512x384x12 (YV12) @ 25.000 fps, 1501 frames

Quantizer 2

XVID_ENC_FRAME.motion = PMV_EARLYSTOP16 | PMV_HALFPELREFINE16 | PMV_EXTSEARCH16 | PMV_USESQUARES16 | PMV_EARLYSTOP8

|PMV_HALFPELREFINE8;

XVID_ENC_FRAME.general = XVID_H263QUANT | XVID_HALFPEL | XVID_HQACPRED | XVID_INTER4V;


Build used Speed (fps) Quality (PSNR) Size
-------------------------------------------------------------------------------------------------------
xvid-cvs-idct_mmx-fdct_mmx.dll 29 47.3076 10,6 MB (11.118.536 bytes)

xvid-cvs-idct_sse2-fdct_sse2.dll 29 47.3028 10,6 MB (11.155.050 bytes)

xvid-cvs-idct_sse2-fdct_mmx.dll 30 47.3076 10,6 MB (11.118.536 bytes)

xvid-cvs-simpleidct_mmx2-fdct_mmx.dll 29 47.3119 10,5 MB (11.114.458 bytes)

xvid-cvs-simpleidct_mmx2-fdct_mmx-expsse2.dll 29 47.2946 10,7 MB (11.244.696 bytes)

xvid-cvs-simpleidct_mmx2-fdct_sse2.dll 30 47.3062 10,6 MB (11.156.718 bytes)

xvid-cvs-simpleidct_mmx2-xvid_fdct_mmx.dll 30 47.3052 10,5 MB (11.113.586 bytes)

xvid-cvs-simpleidct_mmx2-xvid_fdct_sse.dll 30 47.3052 10,5 MB (11.113.586 bytes)

xvid-cvs-simpleidct_mmx2-fdct_mmx-nosse2.dll 28 47.3119 10,5 MB (11.114.458 bytes)

XviD-05042003-1.exe - Koepis New Build 29 47.3119 10,5 MB (11.114.458 bytes)

XviD_Install.exe 30/03/03 by Nic 30 47.3055 10,6 MB (11.155.540 bytes)

DivXSchizoBeta.exe 3 No PP/Slowest/ 29 47.0979 10,8 MB (11.333.632 bytes)

3ivx D4 4.0.3 Installer.exe 27 47.0664 11,2 MB (11.747.076 bytes)
--------------------------------------------------------------------------------------------------------



Quantizer 2 + Qpel

XVID_ENC_FRAME.general = XVID_H263QUANT | XVID_HALFPEL | XVID_QUARTERPEL| XVID_HQACPRED | XVID_INTER4V;


Build used Speed (fps) Quality (PSNR) Size
-------------------------------------------------------------------------------------------------------
xvid-cvs-idct_mmx-fdct_mmx.dll 27 46.0244 11,9 MB (12.480.142 bytes)

xvid-cvs-idct_sse2-fdct_sse2.dll 26 46.0217 11,9 MB (12.561.432 bytes)

xvid-cvs-idct_sse2-fdct_mmx.dll 26 46.0244 10,6 MB (11.118.536 bytes)

xvid-cvs-simpleidct_mmx2-fdct_mmx.dll 26 46.0447 11,9 MB (12.480.142 bytes)

xvid-cvs-simpleidct_mmx2-fdct_mmx-expsse2.dll 25 45.9676 12,0 MB (12.633.008 bytes)

xvid-cvs-simpleidct_mmx2-fdct_sse2.dll 26 46.0439 11,9 MB (12.534.814 bytes)

xvid-cvs-simpleidct_mmx2-xvid_fdct_mmx.dll 26 46.0393 11,8 MB (12.449.760 bytes)

xvid-cvs-simpleidct_mmx2-xvid_fdct_sse.dll 26 46.0393 11,8 MB (12.449.760 bytes)

xvid-cvs-simpleidct_mmx2-fdct_mmx-nosse2.dll 25 46.0447 11,8 MB (12.457.060 bytes)

XviD-05042003-1.exe - Koepis New Build 26 46.0447 11,8 MB (12.457.060 bytes)

XviD_Install.exe 30/03/03 by Nic 27 46.0235 11,9 MB (12.561.234 bytes)

DivXSchizoBeta.exe 3 No PP/Slowest/ 16 46.5027 11,1 MB (11.653.120 bytes)

3ivx D4 4.0.3 Installer.exe No Test possible no support yet
---------------------------------------------------------------------------------------------------------

trbarry
6th April 2003, 06:52
Cruncher -

The qpel file size for xvid-cvs-idct_sse2-fdct_mmx.dll seems to be a funny outlier. Are you sure of that number?

Otherwise it seems that the idcts for mmx, sse, and sse2 give exactly the same results, which matches with some of my own testing last summer.

This also makes me suspect a bug in fdct-sse2 compared to the others. For awhile last summer I had code in the idct section that would do both mmx and sse2 and hit a break point if there was any difference, and I did notify DMitryR about one sse2 bug this way. But I never did it for fdct.

- Tom

Koepi
6th April 2003, 12:40
Thanks for those tests Cruncher,

one question still is unanswered: does my build crash on P4? ...as sysKin fixed lumimasking and VHQ it should be safe to use with P4s now...

Maybe I'll just release the binary as-is. (As you can see from the numbers above, I'm using simple_idct_mmx2+fdct_mmx ;) )

Thanks a million cruncher,

best regards
Koepi

CruNcher
6th April 2003, 12:41
@ Tom

yeah correct the size was indeed wrong i corrected it as i said was a hard night sorry i hope someone will fix fdct_sse2 :)

Np Koepi as i said i only want to help OpenSource Rules :)

clima
7th April 2003, 18:28
I have just tryed your last build Koepi, it's all good it doesn't crash anymore.

Big thx, it was all I wanted :)