The VP4 has been added to the wiki.
Difference between revisions of "CPU usage"
Line 25: | Line 25: | ||
When a preset requires too much CPU, audio starts too crackle and a warning message may appear. The GUI may prevent you from adding blocks at this point. | When a preset requires too much CPU, audio starts too crackle and a warning message may appear. The GUI may prevent you from adding blocks at this point. | ||
− | <blockquote>“The audio processing is the highest priority thread. When there is time left the GUI thread is run. If CPU usage is high there simply isn't enough time to run the GUI at the normal refresh rate so the thread reduces the refresh rate.” </blockquote> | + | <blockquote>“The audio processing is the highest priority thread. When there is time left the GUI thread is run. If CPU usage is high there simply isn't enough time to run the GUI at the normal refresh rate so the thread reduces the refresh rate.” [https://forum.fractalaudio.com/threads/interface-sluggish-when-cab-sims-active.29977/post-435201 source]</blockquote> |
<blockquote>“The CPU simply monitors the time between frame interrupts and if it predicts it doesn't have enough cycles left to process the next effect in the grid it aborts and flashes a warning." [http://forum.fractalaudio.com/threads/cpu-at-overload.56751/#post-712983 source] </blockquote> | <blockquote>“The CPU simply monitors the time between frame interrupts and if it predicts it doesn't have enough cycles left to process the next effect in the grid it aborts and flashes a warning." [http://forum.fractalaudio.com/threads/cpu-at-overload.56751/#post-712983 source] </blockquote> |
Revision as of 07:02, 23 February 2020
Contents
About CPU usage
A preset takes up CPU cycles (CPU is used here as a synonym to DSP). The amount depends on the number of blocks, effect settings, controllers, overhead and more. You can check the current CPU usage percentage on the hardware and in the software editor.
Due to the power of the different processors in the hardware, the Axe-Fx II has more CPU available in presets than the AX8 and FX8, while the Axe-Fx III has much more CPU available than the Axe-Fx II and the FM3.
Bypassing a block on the grid does NOT lower CPU usage. Switching a block between X/Y or changing channels may affect CPU usage, depending on the parameter values. Removing a block will decrease CPU usage.
There's a reason for the CPU ceiling and the way it works. Explanation
Even an empty preset uses CPU, depending on things such as the input noise gate settings and overhead.
“CPU usage number represents the amount of CPU dedicated to audio processing in real-time. We chose to display the actual limitation, rather than scale the number.” source
CPU usage is also covered in the Owners Manuals.
"Also on II the CPU usage increases when you play whereas on the III it more or less stays constant." source
What happens when the CPU limit is approached
When you approach the CPU limit of your processor, you’ll notice the GUI becoming very slow, while audio is still okay. That's because the audio signal gets the highest priority, above the GUI refresh rate.
When a preset requires too much CPU, audio starts too crackle and a warning message may appear. The GUI may prevent you from adding blocks at this point.
“The audio processing is the highest priority thread. When there is time left the GUI thread is run. If CPU usage is high there simply isn't enough time to run the GUI at the normal refresh rate so the thread reduces the refresh rate.” source
“The CPU simply monitors the time between frame interrupts and if it predicts it doesn't have enough cycles left to process the next effect in the grid it aborts and flashes a warning." source
"Audio processing is the highest priority. Once you exceed 90% that remaining CPU is divided up between the display, expression pedals, MIDI, etc., etc. Something has to give." source
"The audio will always switch quickly. The display may take a while to switch since the audio processing takes priority. If CPU usage is high the display will take a little while to update." source
"The LCD is low priority. If CPU usage is high then the screen refresh rate drops because priority is given to the audio threads." source
CPU management on FX8 and AX8
The AX8 and FX8 allow you to put blocks into the grid that will push utilization above 88% (when not playing). When taking overhead into account, the real CPU ceiling is 90% (sustained).
When CPU usage gets above 90%, the FX8 and AX8 will automatically disable blocks. The firmware will look for effects which are the biggest offenders, starting with the last edited one. If disabling the last edited one does not reduce the load enough, big offenders are next. Usually the Reverb block (especially when set to High Quality) is the first to go. Switching Reverb to Normal Quality may help to regain CPU power.
When an effect is automatically disabled, audio passes through as if it were a shunt. If it’s a block that is placed in a parallel row, this can cause a signal level issue.
Note about the Pitch block: the Pitch block in the AX8 and FX8 is very sensitive to CPU load, far before the CPU limit is reached. So try to keep CPU usage low (below 60 - 70%) when using pitch effects.
Tip: when building presets, always add the most CPU-hungry effects first.
"If I am reading these posts correctly, it sounds as though folks seem to think that an effects CPU usage is a static thing. That is, if I use a compressor in my preset it uses X% of the CPU. This is not actually how it works. CPU usage fluctuates as you use the device. That is, depending on what an effect is doing, or how it is configured, the CPU usage will vary dynamically. The AX8 monitors and manages the CPU usage. This is done for two reasons: (1) If CPU load gets too high, then the audio is effected (2) If CPU load gets too high, the front panel (footswitches primarily) is adversely effected. The performance of preset, scenes, effect bypass, etc. starts to become effected. A lot of development time has been put into reducing these effects, but it is impossible to eliminate them entirely. Rather than just allow the AX8 to behave in an undesirable fashion, the unit manages the CPU load by disabling effects. The biggest offenders are disabled first in an effort to reduce the number of disabled effects. This typically means the REVERB block is the first effect disabled. The trick is to build your presets in a manner in which this does not happen when you are playing live. In other words, test your presets out and give yourself some head room for last minute changes whenever possible." source
"Lots of different parameters, controllers, etc. can cause variation in your CPU utilization. Also, playing your guitar will bump your CPU as well. So, if you are looking at the utilization while your input is quiet, then you should plan on a 2% - 3% increase when you start playing. The cutoff for CPU is 90%. This cutoff prevents audio glitches, and provides enough CPU for low priority activities." source
CPU management on FM3
If CPU usage gets too high, the audio will be muted. The FM3 will try to warn you at forehand, for example when adding a block will get you in the danger zone. CPU usage up to 80% is safe.
USB and CPU usage
Connecting via USB will increase CPU utilization. This is by design. If a preset uses much CPU, you may run into CPU overload problems when connecting the hardware to a computer through USB. source source
This does not apply to the Axe-Fx III or FM3, because USB traffic is handled by a dedicated USB processor.
“The Axe-Fx III USB audio does not add CPU usage. It's handled by a separate processor.” source
CPU usage per block and effect type
- RoxXxtar's CPU usage chart for the AX8
- Block CPU usage values for the Axe-Fx III
- Roby Rocks' CPU usage chart for the AX8 (firmware 10.01):
CPU usage management
- Effect blocks — the number of effect blocks in the preset has a great impact on CPU usage. Note that a bypassed block uses the same CPU capacity as when engaged
- 2nd Amp block — adding a second Amp block in an Axe-Fx preset increases CPU usage slightly (one DSP is dedicated to Amp blocks)
- Modifier on Input Drive in the Amp block — eats a lot of CPU. If you attach a modifier to the Input Drive, it is constantly recalculating the network which increases CPU usage”
- Noise gate — switching off the noise gate in Input decreases CPU usage
- Shunts — minimizing shunt blocks decreases CPU usage. If you use parallel paths, try to merge the paths instead of routing them all the way to the end separately
- Delay: Diffusion — Diffusion values above zero will increase CPU usage
- Compression — using OUT COMP and SPEAKER COMP in the Amp block will increase CPU usage
- Cab block — switching a Cab block to mono and/or another resolution saves CPU usage
- Cab block — when using more than one external IR in a mono rig: mix them into a single IR to avoid having to use a stereo Cab or two mono Cabs
- Cab block — shorten an IR with the IR LENGTH parameter to save CPU usage
- USB — connecting USB increases CPU usage (not on Axe-Fx III)
- Effect types — some effect types in an effect block use more CPU than others. Example: Studio compressor versus Pedal compressor types, and Hall versus Spring Reverb
- X/Y or channels — use these instead of two instances of an effect block to save CPU
- Controllers — reduce the number of attached controllers to save CPU
- Reverb — High Quality Reverb uses more CPU than Normal Quality
- Reverb — decrease CPU usage by decreasing Echo Density in the Reverb block
- Compressor — the Fast RMS detector type in the Studio Comp uses less CPU than the other types
- Filter — use a lower Order and Q
- Multi Delay — use a different type
- Chorus — use less voices
- Phaser — use less stages
- Pitch — the Pitch block in the FX8 and AX8 has an Economy mode that decreases CPU usage
- FX8 — disable the Looper
- Synth — turn off voices that you don't use
- Cab (firmware Ares) — muting IRs decreases CPU usage
- Cab — Preamp simulation uses more CPU in High Quality mode than in Economy mode