[FFmpeg-devel] [PATCH] avcodec/huffman: replace qsort with AV_QSORT
Ganesh Ajjanagadde
gajjanagadde at gmail.com
Fri Oct 23 04:25:16 CEST 2015
On Thu, Oct 22, 2015 at 9:28 PM, Timothy Gu <timothygu99 at gmail.com> wrote:
> On Thu, Oct 22, 2015 at 5:01 PM Ganesh Ajjanagadde <gajjanagadde at gmail.com>
> wrote:
>>
>> Sample benchmark (x86-64, Haswell, GNU/Linux), fraps-v2 from FATE:
>> new:
>> 280110 decicycles in qsort, 1 runs, 0 skips
>> 268260 decicycles in qsort, 2 runs, 0 skips
>>
>> old:
>> 1469910 decicycles in qsort, 1 runs, 0 skips
>> 952950 decicycles in qsort, 2 runs, 0 skips
>
>
> Usually it takes more than 2 runs to make sure something is faster than the
> other (try -stream_loop 10000 on the input).
In this case the gain should be obvious due to inlining. Nevertheless,
here are new numbers. I chose vp6 for two reasons:
1. Above was for fraps-v2, giving vp6 for more "completeness".
2. stream_loop throws errors: Error while decoding stream #0:0:
Invalid data found when processing input for fraps-v2.
Here they are:
vp6 (old):
78930 decicycles in qsort, 1 runs, 0 skips
45330 decicycles in qsort, 2 runs, 0 skips
27825 decicycles in qsort, 4 runs, 0 skips
17471 decicycles in qsort, 8 runs, 0 skips
12296 decicycles in qsort, 16 runs, 0 skips
9554 decicycles in qsort, 32 runs, 0 skips
8404 decicycles in qsort, 64 runs, 0 skips
7405 decicycles in qsort, 128 runs, 0 skips
6740 decicycles in qsort, 256 runs, 0 skips
7540 decicycles in qsort, 512 runs, 0 skips
9498 decicycles in qsort, 1024 runs, 0 skips
9938 decicycles in qsort, 2048 runs, 0 skips
8043 decicycles in qsort, 4095 runs, 1 skips
vp6 (new):
15880 decicycles in qsort, 1 runs, 0 skips
10730 decicycles in qsort, 2 runs, 0 skips
10155 decicycles in qsort, 4 runs, 0 skips
7805 decicycles in qsort, 8 runs, 0 skips
6883 decicycles in qsort, 16 runs, 0 skips
6305 decicycles in qsort, 32 runs, 0 skips
5854 decicycles in qsort, 64 runs, 0 skips
5152 decicycles in qsort, 128 runs, 0 skips
4452 decicycles in qsort, 256 runs, 0 skips
4161 decicycles in qsort, 511 runs, 1 skips
4081 decicycles in qsort, 1023 runs, 1 skips
4072 decicycles in qsort, 2047 runs, 1 skips
4004 decicycles in qsort, 4095 runs, 1 skips
>
> Timothy
More information about the ffmpeg-devel
mailing list