[Ffmpeg-devel] [PATCH] Optimization of 'dct_unquantize_h263_intra' for ARM (armv5te) (try2)

Siarhei Siamashka siarhei.siamashka
Sat Jan 6 17:07:53 CET 2007


Hello,

An updated patch of dct_unquantize_h263_intra optimization for armv5te is
attached. It was further optimized based on the comments from Michael
Niedermayer and now requires 6 cycles to process one element (instead of
7 cycles in the previous version). Also I tried to correct the problems
detected in the previous patch.

Now I think it is a final version and it would be extremely hard (if possible)
to optimize it more. It passed all my tests (both synthetic and on real video
files) and seems to work correctly. If you notice any problems, I'll try to
fix them in the next revision.

It processes 8 elements per loop iteration and finally optionally processes 2
elements in the end. As the number of elements to process tends to be a
multiple of 8 plus one or two extra elements, overhead should be minimal.
Typical distribution of nCoeffs for mpeg4 video:

freq[0] = 215126
freq[1] = 26219
freq[2] = 0
freq[3] = 0
freq[4] = 0
freq[5] = 0
freq[6] = 0
freq[7] = 0
freq[8] = 38495
freq[9] = 0
freq[10] = 0
freq[11] = 0
freq[12] = 0
freq[13] = 0
freq[14] = 0
freq[15] = 0
freq[16] = 57982
freq[17] = 11626
freq[18] = 0
freq[19] = 0
freq[20] = 0
freq[21] = 0
freq[22] = 0
freq[23] = 0
freq[24] = 9448
freq[25] = 0
freq[26] = 0
freq[27] = 0
freq[28] = 0
freq[29] = 0
freq[30] = 0
freq[31] = 0
freq[32] = 50958
freq[33] = 6139
freq[34] = 0
freq[35] = 0
freq[36] = 0
freq[37] = 0
freq[38] = 0
freq[39] = 0
freq[40] = 7171
freq[41] = 0
freq[42] = 0
freq[43] = 0
freq[44] = 0
freq[45] = 0
freq[46] = 0
freq[47] = 0
freq[48] = 58177
freq[49] = 4447
freq[50] = 0
freq[51] = 0
freq[52] = 0
freq[53] = 0
freq[54] = 0
freq[55] = 0
freq[56] = 7226
freq[57] = 48354
freq[58] = 5655
freq[59] = 36158
freq[60] = 5727
freq[61] = 16421
freq[62] = 3739
freq[63] = 888754
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mpegvideo_armv5te_try2.diff
Type: text/x-diff
Size: 9507 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20070106/8c9bc7e9/attachment.diff>



More information about the ffmpeg-devel mailing list