[FFmpeg-devel] [RFC] remove table_4_3_value with CONFIG_SMALL

Måns Rullgård mans
Thu Oct 15 12:19:05 CEST 2009


Reimar D?ffinger <Reimar.Doeffinger at gmx.de> writes:

> On Thu, Oct 15, 2009 at 09:59:33AM +0100, M?ns Rullg?rd wrote:
>> Reimar D?ffinger <Reimar.Doeffinger at gmx.de> writes:
>> 
>> > On Tue, Oct 13, 2009 at 01:53:06PM +0200, Reimar D?ffinger wrote:
>> >> On Tue, Oct 13, 2009 at 01:18:02PM +0200, Michael Niedermayer wrote:
>> >> > > Either way, should the code that generates the tables be updated to use
>> >> > > the same formula?
>> >> > 
>> >> > as you prefer ...
>> >> 
>> >> Ok, I propose then this patch, to be applied in two parts.
>> >> It generally replaces "pow(2," by "exp2f(" and "pow(.., 4.0/3.0)" by
>> >> ".. * cbrtf(..)".
>> >> make test passes on x86_64 at least, with and without --enable-small.
>> >
>> > Hm... It didn't play any files right though, attached version plays the
>> > files ok, though the CRC is not the same with and without
>> > --enable-small.
>> > Speed is probably about 4 times slower, though on a regular desktop
>> > system the overall speed difference for mp3 decoding is not measurable
>> > (the usual caveat about benchmarks by me apply).
>> 
>> It will totally murder performance on anything without an FPU.  Those
>> are also the systems most likely to need CONFIG_SMALL, so this is not
>> acceptable.
>
> Actually the only system that currently _needs_ CONFIG_SMALL is IA64.

IA64 builds with a plain ./configure over here.  It's --enable-shared
that's breaking it.

> Also, this is nearly the largest table in all of FFmpeg, so I very much
> think it should be under CONFIG_SMALL.

I repeat, there is a large overlap between systems with limited RAM
and those without FPU.  We don't want to make CONFIG_SMALL useless on
those.  Didn't you have a different idea without floating-point too?

-- 
M?ns Rullg?rd
mans at mansr.com



More information about the ffmpeg-devel mailing list