hi derek...
What are the maintainers of the windoze packages of PD using to compile? Whatever it is, it seems to clear up any denormal or CPU spike problems.
just a guess, but maybe the linux system libraries create more denormals than the windows ones ...
well, there is pd's PD_BADFLOAT macro that _should_ to that, too, but this has only effect if the nubers are already denormal, so maybe it's a good idea to reset the value to flush every number a 24 / 32 bit dac would consider to be zero to zero...
Can you tell me a bit more about this? How and where should I start with that?
the PD_BADFLOAT macro is currently just checking for actual denormals... denormals occur at about 1e-34 ... a 32 bit dac should have a resolution of about 5e-10 ... so i suppose we could implement a macro that flushes everything below 1e-12 to zero... the best would be to find a fancy mask, to detect these numbers ... well, you'll have to mess around with mantissa ... if you could have a look at this it would be great...
I have found that certain objects have *stong* denormal tendencies, including hip~, lp~, np~, throw~, catch~ and probably more that I haven't weeded out yet.
well, digital filters and other delay lines are dangerous about denormals, but i'm a bit confused about the throw~ / catch~ objects ... i haven't had a look at the code, but to me it seems they just copy sample arrays ...
The bottom line is that patches which are completely fine to run on windoze and on most AMD processors with Linux completely screw up my P4 laptop. We are talking grinding halts of DSP, sudden [+ lasting!] leaps of CPU usage over 100% and even completely freezing the machine if I happen to be in realtime mode. Not pretty.
i know the problem, tooo :-(
Using "./configure --enable-icc --enable-optimize=pentium4 --enable-jack --enable-fftw" still uses GCC. Using "CC=icc CXX=icc" tells it to use ICC, but I get an error that the C compiler cannot create executables. I have a hunch that this is because I still haven't gotten this ridiculous key ["It should arrive within one business day", sez Intel...]
you shouldn't have to set the CC or CXX variables ... i'll have a look at it ... about the configure message ... is you icc executable in the /usr/bin path? if not, you'll probably have to create a symlink to it...
cheers...
Tim mailto:TimBlechmann@gmx.de ICQ: 96771783 -- The only people for me are the mad ones, the ones who are mad to live, mad to talk, mad to be saved, desirous of everything at the same time, the ones who never yawn or say a commonplace thing, but burn, burn, burn, like fabulous yellow roman candles exploding like spiders across the stars and in the middle you see the blue centerlight pop and everybody goes "Awww!" Jack Kerouac