[FFmpeg-devel] [PATCH] VP8: correctly use optimal epel functions for splitmv mode

Ronald S. Bultje rsbultje
Sun Jun 27 02:19:02 CEST 2010


currently, we apply MC/epel for splitmv coding as 4x4 subblocks (of
4x4px each) in the 16x16px MB. This is suboptimal, because the MVs are
actually shared between multiple subblocks, so applying epel in
16x8/8x16/8x8 would be more optimal, particularly if we use SSE2/SSSE3

The attached patch tries to improve the situation.

Once the SSE2/MMX patches are applied, this leads to about 10% speedup
for splitmv MBs (5937 to 5486 cycles per whole splitmv-MB for sample
15 in the vector testsuite). Of course this depends on the coding of
the MB and thus on the sample. With SSSE3 it probably leads to even
better speedups, but I can't test that because my CPU is old.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: vp8_subblocks.patch
Type: application/octet-stream
Size: 6489 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20100626/5928a75d/attachment.obj>

More information about the ffmpeg-devel mailing list