[Tremor] LOW_ACCURACY mode and MDCT improvements

xiphmont at xiph.org xiphmont at xiph.org
Sun Mar 14 13:12:42 PDT 2010


> The speed up comes mainly from using a split radix fft that significantly
> reduces the number of add/mul operations required.  Additionally, we have
> provided some ASM segments to improve performance further.  However, even
> without ASM, we are still significantly faster then stock Tremor.

Yay, this is all fully believable.

> We have licensed it under BSD and would like to see it used in libtremor.

Sweet, I expect so would we.

Robin Watts is also in the midst of trying to roll alot ot ARM work
into the main Tremor branches (he's in the early stages of that now).
I expect he's done some amount of MDCT work as well.  We'll need to
compare and coordinate.

> One concern I have though is the _LOW_ACCURACY_ mode in Tremor.  This seems
> to allow 32 bit only multiplies for targets with no hardware 32x32->64 bit
> instruction.  We do not support this in our new MDCT because we are faster
> in full accuracy mode then current SVN in low accuracy mode on ARM.
>
> Is this a problem?

Not really, no.  The low accuracy modes were primarily a big deal for
floor 0 decode.  If a new MDCT is faster than even the low accuracy
mode of the old, I'll take the new.

>  I am of the opinion that it is not (in Tremor-main at
> least) as it has minimal advantage on arm/coldfire/x86 which constitute
> nearly all FOSS and commercial users of Tremor's main branch.  It also seems
> to confuse some hardware vendors who have used it on high end ARM cores that
> do not benefit significantly from it.

It was originally intended for a Maverick core (ARM7TDMI).  I don't
recall how much benefit it offered there.

Monty


More information about the Tremor mailing list