List of plugins that exhibit the P4 denormalization bug?

Discussion in 'Tracking / Mixing / Editing' started by sserendipity, Jun 12, 2003.

  1. sserendipity

    sserendipity Member

    Does anyone know where I can find a list of plugins that exhibit denormalisation errors?

    What is denormalisation? From digital fish phones :

    Denormalisation is an issue with some audio hosts that don't switch off the plugin's audio task when the song is stopped or a track contains silence (or with instruments: no key is pressed while a sound decays).

    The problem happens when the CPU (precisely: the floating point unit (FPU) inside of it) detects extremely small numbers and wishes to process them with the same precision as usual. Then it switches into 'denormal' mode which is another way of representing small floating point numbers with the available bit range.
    Converting between the two states takes a lot of time for the FPU and thus might cause heavy load jumps.

    Some algorithm such as delay lines and filters are prone to denormalisation as they work with feedback structures.
    Here, if an impulse is followed by absolute silence, the resulting signal gets smaller and smaller but in theory, it can never reach zero.
    In practice, there is an internal threshold of the FPU that switches to denormal mode to carry on processing those small numbers (which might not be of any use for proper operation).
    Currently, the Pentium 4 processor seems highly addicted to denormalisation. It turned out that its threshold is actually very much higher than of former Pentium types.
    Plugins that used to work fine with older CPUs might slow down the entire system when used with a P4.
    But other FPUs might as well suffer from denormalisation issues.

    Most developers are aware of denormalisation although the methods to avoid it are many. Some algorithms ask for the current FPU status from time to time, reacting to it by changing small values to zero.
    Other developers prefer adding an an extra signal to the audio which is carried along the entire process of the plugin, thereby forcing it to remain above the internal threshold.
    Should the input become silent, the additional noise will still keep the whole thing from denormalizing.
    All the digitalfishphones plugins actually work this way, and so does the normalizer.
     

Share This Page