[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