[MPlayer-dev-eng] TODO

Arpi arpi at thot.banki.hu
Wed Feb 13 02:17:36 CET 2002


Hi,

> > so mayeb making a specialized version with such syntax could make our life
> > easier and also saves us from some func calls and emms:
> >    agp2memcpy_pic(d,s,w,h,d_stride,s_stride);
> >
> > what do you think?
> i doubt that there will be a messureable difference in speed...
> anyway ill do it

i've made tests for YV12 (planar, use different strides) and YUY2 (single
big memcpy) and for YUY2 the new agp memcpy always won, while for YV12 there
is a race between memcpy's, all of them won at least once...

so, i think, packing the many small (120..720 bytes per call) copys to a big
loop should help...

let's see:

YV12 test:

File:  /3a/MPlayer/benchmark/testsuite2/Coyote.Ugly.Sample-highbitrate-atmos.avi
VIDEO:  [DIV3]  640x480  24bpp  25.00 fps  1867.1 kbps (227.9 kbyte/s)
agp memcpy  : BENCHMARKs: V:   5.885s VO:   5.487s A:   0.000s Sys:   0.416s =   11.788s
libc memcpy : BENCHMARKs: V:   5.852s VO:   6.001s A:   0.000s Sys:   0.396s =   12.249s
fast-memcpy : BENCHMARKs: V:   5.883s VO:   5.654s A:   0.000s Sys:   0.416s =   11.953s

File:  /3a/MPlayer/benchmark/testsuite2/Star_Wars_Episode_1.avi
VIDEO:  [DIV3]  720x576  24bpp  25.00 fps  1858.5 kbps (226.9 kbyte/s)
agp memcpy  : BENCHMARKs: V:  23.508s VO:  21.069s A:   0.000s Sys:   1.783s =   46.360s
libc memcpy : BENCHMARKs: V:  22.828s VO:  21.363s A:   0.000s Sys:   1.755s =   45.947s
fast-memcpy : BENCHMARKs: V:  24.106s VO:  21.945s A:   0.000s Sys:   1.782s =   47.834s

File:  /3a/MPlayer/benchmark/testsuite2/sample.light.it.up.avi
VIDEO:  [DIV3]  640x352  24bpp  23.98 fps  823.5 kbps (100.5 kbyte/s)
agp memcpy  : BENCHMARKs: V:   4.156s VO:   3.356s A:   0.000s Sys:   0.299s =    7.811s
libc memcpy : BENCHMARKs: V:   4.131s VO:   3.690s A:   0.000s Sys:   0.290s =    8.111s
fast-memcpy : BENCHMARKs: V:   4.182s VO:   3.520s A:   0.000s Sys:   0.300s =    8.001s

File:  /3a/MPlayer/benchmark/testsuite2/MI2-Trailer.avi
VIDEO:  [DIV3]  480x204  24bpp  24.00 fps  604.8 kbps (73.8 kbyte/s)
agp memcpy  : BENCHMARKs: V:   3.757s VO:   3.106s A:   0.000s Sys:   0.744s =    7.607s
libc memcpy : BENCHMARKs: V:   3.745s VO:   2.963s A:   0.000s Sys:   0.752s =    7.460s
fast-memcpy : BENCHMARKs: V:   3.795s VO:   3.094s A:   0.000s Sys:   0.747s =    7.636s

File:  /3a/MPlayer/benchmark/testsuite2/hannibal.avi
VIDEO:  [DIV3]  480x260  24bpp  24.00 fps  153.8 kbps (18.8 kbyte/s)
agp memcpy  : BENCHMARKs: V:   3.118s VO:   4.360s A:   0.000s Sys:   0.906s =    8.384s
libc memcpy : BENCHMARKs: V:   3.121s VO:   4.164s A:   0.000s Sys:   0.904s =    8.189s
fast-memcpy : BENCHMARKs: V:   3.152s VO:   4.351s A:   0.000s Sys:   0.911s =    8.414s

File:  /3a/MPlayer/benchmark/testsuite2/huge_bands.avi
VIDEO:  [DIV3]  640x512  24bpp  29.97 fps   10.9 kbps ( 1.3 kbyte/s)
agp memcpy  : BENCHMARKs: V:   4.792s VO:   7.998s A:   0.000s Sys:   0.620s =   13.410s
libc memcpy : BENCHMARKs: V:   4.758s VO:   8.789s A:   0.000s Sys:   0.600s =   14.148s
fast-memcpy : BENCHMARKs: V:   4.779s VO:   8.284s A:   0.000s Sys:   0.620s =   13.683s

YUY2:

File:  /3a/MPlayer/benchmark/testsuite2/Coyote.Ugly.Sample-highbitrate-atmos.avi
VIDEO:  [DIV3]  640x480  24bpp  25.00 fps  1867.1 kbps (227.9 kbyte/s)
agp memcpy  : BENCHMARKs: V:  12.338s VO:   7.667s A:   0.000s Sys:   0.412s =   20.416s
libc memcpy : BENCHMARKs: V:  12.099s VO:   8.025s A:   0.000s Sys:   0.399s =   20.523s
fast-memcpy : BENCHMARKs: V:  12.063s VO:   7.848s A:   0.000s Sys:   0.413s =   20.324s

File:  /3a/MPlayer/benchmark/testsuite2/Star_Wars_Episode_1.avi
VIDEO:  [DIV3]  720x576  24bpp  25.00 fps  1858.5 kbps (226.9 kbyte/s)
agp memcpy  : BENCHMARKs: V:  46.191s VO:  26.335s A:   0.000s Sys:   1.794s =   74.320s
libc memcpy : BENCHMARKs: V:  46.236s VO:  27.244s A:   0.000s Sys:   1.762s =   75.242s
fast-memcpy : BENCHMARKs: V:  46.498s VO:  27.379s A:   0.000s Sys:   1.781s =   75.657s

File:  /3a/MPlayer/benchmark/testsuite2/sample.light.it.up.avi
VIDEO:  [DIV3]  640x352  24bpp  23.98 fps  823.5 kbps (100.5 kbyte/s)
agp memcpy  : BENCHMARKs: V:   8.946s VO:   4.685s A:   0.000s Sys:   0.307s =   13.938s
libc memcpy : BENCHMARKs: V:   8.919s VO:   4.916s A:   0.000s Sys:   0.289s =   14.124s
fast-memcpy : BENCHMARKs: V:   9.012s VO:   4.868s A:   0.000s Sys:   0.305s =   14.185s

File:  /3a/MPlayer/benchmark/testsuite2/MI2-Trailer.avi
VIDEO:  [DIV3]  480x204  24bpp  24.00 fps  604.8 kbps (73.8 kbyte/s)
agp memcpy  : BENCHMARKs: V:   7.982s VO:   3.669s A:   0.000s Sys:   0.742s =   12.394s
libc memcpy : BENCHMARKs: V:   7.993s VO:   3.882s A:   0.000s Sys:   0.735s =   12.611s
fast-memcpy : BENCHMARKs: V:   7.991s VO:   3.776s A:   0.000s Sys:   0.742s =   12.510s

File:  /3a/MPlayer/benchmark/testsuite2/hannibal.avi
VIDEO:  [DIV3]  480x260  24bpp  24.00 fps  153.8 kbps (18.8 kbyte/s)
agp memcpy  : BENCHMARKs: V:   5.215s VO:   5.392s A:   0.000s Sys:   0.905s =   11.512s
libc memcpy : BENCHMARKs: V:   5.197s VO:   5.704s A:   0.000s Sys:   0.891s =   11.792s
fast-memcpy : BENCHMARKs: V:   5.206s VO:   5.553s A:   0.000s Sys:   0.907s =   11.666s

File:  /3a/MPlayer/benchmark/testsuite2/huge_bands.avi
VIDEO:  [DIV3]  640x512  24bpp  29.97 fps   10.9 kbps ( 1.3 kbyte/s)
agp memcpy  : BENCHMARKs: V:   8.266s VO:  11.070s A:   0.000s Sys:   0.611s =   19.947s
libc memcpy : BENCHMARKs: V:   8.256s VO:  11.598s A:   0.000s Sys:   0.603s =   20.458s
fast-memcpy : BENCHMARKs: V:   8.277s VO:  11.400s A:   0.000s Sys:   0.607s =   20.284s


A'rpi / Astral & ESP-team

--
Developer of MPlayer, the Movie Player for Linux - http://www.MPlayerHQ.hu



More information about the MPlayer-dev-eng mailing list