[Ardour-Users] Denormals

Carl Hetherington lists at carlh.net
Wed Jan 4 11:35:37 PST 2012


On Wed, 4 Jan 2012, John Rigg wrote:

> On Wed, Jan 04, 2012 at 06:58:26PM +0000, Carl Hetherington wrote:
>> OK; I have a theory that you may be running into problems due to the way
>> the plugins are built, combined with the fact that you are in 32-bit
>> mode. It may be worth trying to rebuild the plugins some source, with a
>> few changes, to see if the problems go away.
>
> If scons isn't recognising the CPU type properly (and CPU specific
> features are not enabled), could this mean that Flush To Zero (FTZ)
> mode in SSE is ignored? Additionally, doesn't using these CPUs in
> 32 bit mode prevent the use of the Denormals Are Zero (DAZ) mode provided
> by SSE2?

I *believe* (but am happy to be proved wrong) that DAZ should work fine in 
32-bit mode, but that the plugin code *must* be compiled with -msse 
-mfpmath=sse.  If it is not, the DAZ stuff doesn't work (since the plugin 
is generating denormals using non-SSE instructions) and so denormal 
behaviour will be very bad.

A very limited straw poll of both plugins and CPUs suggests that most 
plugins use -ffast-math, which seems to make no improvement to poor 
denormal processing on CPUs running in 32-bit mode (though it seems to 
always help in 64-bit).

I was hoping that we could compile the OP's plugins with -msse 
-mfpmath=sse to SSEe (boom boom) if that helped.

If scons isn't recognising the CPU properly, and so not offering to turn 
on FTZ/DAZ, that is another fly in the ointment, but not the only one 
here, I think.

Carl



More information about the Ardour-Users mailing list