Managing CPU load when using Wavetable
- Live Versions: All
- Operating System: All
While Wavetable is designed to be as CPU-efficient as possible, there are certain features which can tax the CPU more heavily than others. If you encounter high CPU load or dropouts while using Wavetable, try minimizing the usage of the features listed below:
Note: You can find more information in our Learn Live 11: Computer Performance video tutorial to help reduce the CPU load.
Polyphony
The highest impact on the device performance is determined by the amount of playing voices.
- By default, Wavetable supports 8 voices of polyphony, meaning that 8 MIDI notes can be fed to the device at the same time without any voice stealing taking place.
- The amount of voices can be capped via a drop down menu. The Poly/Mono switch can be used to force the device to act as a monophonic device (only 1 MIDI note is played at a time).
- Impact on CPU is determined by the voices currently active (playing).
Number of active oscillators
- Depending on the amount of active voices, activating more than one oscillator is potentially very CPU intensive.
- By default, only "Osc1" is enabled. A second wavetable oscillator can also be used, with a considerable impact on the performance.
- The sub oscillator can also be activated, which uses a different type of oscillator to the main oscillators. In a simple set, the sub oscillator may actually be more CPU intensive than an unmodulated main oscillator).
Unison Voices
- Activating one of the Unison modes (choosing anything other than "None" in the Unison drop down menu) means that each active voice is multiplied by the amount of unison voices.
- The impact of Unison is determined by the amount of unison voices specified (default is 3), times the number of active voices.
- Modulating Unison Amount has an impact on the CPU as each unison voice needs to have properties recalculated.
- The unison modes which adjust the table position (Shimmer, Noise, Position Spread and Random Note) are slightly more CPU intensive than the other modes, as tables need to be recalculated for each unison voice.
Example:
Trigger Wavetable with a C Maj chord:
- The default device setting will use just 3 voices.
- Activating "Osc 2" will double up, for a total of 6 voices.
- Enabling 8 voice unison and Osc 2 will amount to a total of 48 voices.
- This should clearly demonstrate that depending on the setting in use, the voice count might quickly go sky high, for example:
- 8 notes * 3 oscillators * 8 unison voices = 192 voices in total!
Oscillator FX
- Activating any of the oscillator FX adds some cost to the oscillator calculations.
- The FM mode activates an internal modulator oscillator per unison voice.
- Of the other FX, Fold is the most CPU intensive.
Filters
- Wavetable offers five different filter models which consist of the "Clean" default mode as well as four analog modeled filters:
- Analog modeled filters result in a higher impact on the CPU usage compared to the "Clean" filter which has a negligible impact on performance.
- Running two filters is twice as CPU intensive as one.
Modulation
It's worth noting that we run modulation sources in a 'low power' mode if they're not connected to a target, so if a mod source isn't important to the sound then its connections should be set to zero to avoid unnecessary work.
Amp Envelope (Release)
A long release time is potentially very CPU intensive, in that it will inevitably lead to a high voice count even when playing a monophonic melody, unless the amount of polyphony voices is capped via the Polyphony drop down menu.
Envelope slopes
Linear slopes are less CPU intensive to calculate than exponential ones. If an exponential slope isn't important to a sound then it's worth setting the slope value to 0% to avoid unnecessary work.
Windows
On Windows, make sure that “High Performance” is active in the Windows Power Plan. See this third party guide to setting a high performance power plan on Windows.
Freezing Tracks
If you've followed the tips above but are still experiencing CPU issues, then the last remaining option is to freeze the track. Right click and select "Freeze Track".