[FFmpeg-devel] [PATCH] avcodec/aacsbr_tablegen: always initialize tables at runtime
Ganesh Ajjanagadde
gajjanagadde at gmail.com
Sat Dec 5 20:49:14 CET 2015
On Thu, Dec 3, 2015 at 8:13 PM, Ganesh Ajjanagadde
<gajjanagadde at gmail.com> wrote:
> On Sun, Nov 29, 2015 at 10:58 PM, Ganesh Ajjanagadde
> <gajjanagadde at gmail.com> wrote:
>> This gets rid of virtually useless hardcoded tables hackery. The reason
>> it is useless is that a 320 element lut is anyway placed regardless of
>> --enable-hardcoded-tables, from which all necessary tables are trivially
>> derived at runtime at very low cost:
>>
>> sample benchmark (x86-64, Haswell, GNU/Linux, single run is really
>> what is relevant here since looping drastically changes the bench). Fluctuations
>> are on the order of 10% for the single run test:
>> 39400 decicycles in aacsbr_tableinit, 1 runs, 0 skips
>> 25325 decicycles in aacsbr_tableinit, 2 runs, 0 skips
>> 18475 decicycles in aacsbr_tableinit, 4 runs, 0 skips
>> 15008 decicycles in aacsbr_tableinit, 8 runs, 0 skips
>> 13016 decicycles in aacsbr_tableinit, 16 runs, 0 skips
>> 12005 decicycles in aacsbr_tableinit, 32 runs, 0 skips
>> 11546 decicycles in aacsbr_tableinit, 64 runs, 0 skips
>> 11506 decicycles in aacsbr_tableinit, 128 runs, 0 skips
>> 11500 decicycles in aacsbr_tableinit, 256 runs, 0 skips
>> 11183 decicycles in aacsbr_tableinit, 509 runs, 3 skips
>>
>> Tested with FATE with/without --enable-hardcoded-tables.
>>
>> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde at gmail.com>
>> ---
>> libavcodec/Makefile | 8 ++-----
>> libavcodec/aacsbr_fixed_tablegen.c | 42 -------------------------------------
>> libavcodec/aacsbr_fixed_tablegen.h | 4 ----
>> libavcodec/aacsbr_tablegen.c | 42 -------------------------------------
>> libavcodec/aacsbr_tablegen.h | 4 ----
>> libavcodec/aacsbr_tablegen_common.h | 4 ----
>> 6 files changed, 2 insertions(+), 102 deletions(-)
>> delete mode 100644 libavcodec/aacsbr_fixed_tablegen.c
>> delete mode 100644 libavcodec/aacsbr_tablegen.c
[...]
> ping for AAC people or anyone else interested.
rebased on master, posted v2 that is essentially identical.
More information about the ffmpeg-devel
mailing list