dev builds
themes manual
device status forums
mailing lists
IRC bugs
dev guide

Rockbox mail archive

Subject: Re: hello all (Tremor optimization)

Re: hello all (Tremor optimization)

From: Pedro Vasconcelos <>
Date: Mon, 23 May 2005 10:09:06 +0100

On Mon, 23 May 2005 01:50:24 +0200
Thom Johansen <> wrote:

> > The only optimization I've been able to do is write some asm functions
> > to implement the 32x32 bit arithmetic using the Coldfire MAC
> > instructions. That improved playbay speed slightly to about 24-25%. The
> > other advantage is full 32 bit precision -- i.e. no need to use the
> > lower accuracy mode.
> I'm very curious as to how you performed these optimisations. Did you
> implement them in assembler? Did you utilize the MAC instructions
> with the parallell load? Is there some way I can see your code?

What I did define the multiplication and cross-products MULT3x, XPROD3x,
etc. as assembly inlined functions in an asm_mcf5249.h include (i.e.
analogous to the stock Tremor asm_arm.h). I didn't use the parallel
loads as these functions aren't used with sequencial memory accesses.
Maybe I am missing something here?

I'm not at home at the moment, but I can send you the header file if
you're interested.

> > BTW, I also tested commmenting out mdct_backwards: playback improves to
> > 40-45%, so clearly something else must be optimized...
> Have you tried putting essential data in IRAM? This often gives huge
> performance boosts. As for other parts of the code to optimise, I
> haven't looked much at Tremor yet, only thing I can think of off the
> top of my head is that the windowing can be done faster using
> the EMAC unit.

Sorry, I don't known what the IRAM is--- could you point me to some

> Feel free to pop by #rockbox on, if you've got any
> questions or want to discuss your optimisation work. I'm the only person
> involved with codec optimisations at the time, and go by the
> nick 'preglow' there.

OK, I might get back to you later.


Pedro Vasconcelos, School of Computer Science, University of St Andrews
"The difference between Theory and Practice 
is greater in Practice than in Theory."
Received on 2005-05-23

Page template was last modified "Tue Sep 7 00:00:02 2021" The Rockbox Crew -- Privacy Policy