[PlanetCCRMA] Pentium-4 and denormal numbers on planetccrma

Fernando Lopez-Lezcano nando@ccrma.Stanford.EDU
Fri Jan 28 16:48:00 2005


On Fri, 2005-01-28 at 16:33, Fernando Lopez-Lezcano wrote:
> Some more tests for the record (and another day is almost gone)
> 
> - cmt 1.15, no patches --> no reverb
> - cmt 1.15, undenormal #define redefined to do nothing:
>   it takes a long long time for the internal stuff to decay and generate
>   denormals, when that happens cpu load goes up to almost 100%
> - cmt 1.15, undernormal #define redefined to:
>   static inline float
>   undenormalise(volatile float s)
>   {
>    s += 9.8607615E-32f;
>    return s - 9.8607615E-32f;
>   }
>   it takes significantly less for the cpu load to go up, and it "only"
>   goes up to 50/60% (from a standard of ~15% on a P4 1.7G).
> 
> So, I think I will release a package with the "white noise added to
> input" solution (no optimization, it would be possible to use a table
> but I don't think it is worth it in terms of wasted cpu), and with the
> built in denormal code turned off. 

Also, we could suggest a --noisy option to be added to jackd so _it_
takes care of inserting noise in all inputs, warding us from evil
denormals on intel cpus :-) 

I imagine that would not be well received...
-- Fernando