[PD] switch~ & cputime climbing

Claude Heiland-Allen claudiusmaximus at goto10.org
Wed Jun 6 17:25:41 CEST 2007


Derek Holzer wrote:
> This could almost be the denormal problem again. Is it an Intel 
> processor on the MacBook? Intels are notorious for poor handling of 
> denormal numbers, which occur when the mantissa (decimal places) of a 
> number representing an audio signal becomes too long (such as happens 
> with reverb tails, etc). Check the archives for more than just a bit of 
> discussion on this, with some solutions (?) and certainly some workarounds.

Some solutions are presented here, with rationales as when each solution 
is best used:

http://www.musicdsp.org/files/denormal.pdf

In my exponential decay envelopes, I add a small number and subtract it 
again, which forces denormals (which are very close to zero) to be 
exactly zero.

Example: if you have 4 significant digits:

denoraml  = 0.00000001234
denormal  + 0.0001234            => 0.00012341234
truncate to 4 significant digits => 0.0001234
truncated - 0.0001234            => 0 (exact)

This has to be done *within* the feedback loop, as that is where the 
denormals cause bigger problems.

Other methods may be more appropriate for different scenarios...


BTW: it isn't just Intel processors, on AMD athlon-xp I reduced CPU 
usage a fair bit too (although I hear Intel Pentium-4 is particularly bad).


Claude
-- 
http://claudiusmaximus.goto10.org




More information about the Pd-list mailing list