Why do instrument tracks take CPU when no notes are playing?

This topic has been visited many times over the years, I remember discussions as far back as 1998 (Cubase VST 3!). But to again cover this…

The Cubase Performance meter (Devices → VST Performance) is NOT a CPU meter. It does NOT necessarily correspond to your system overhead (processor “crunch” power). It deals with the h/w buffer, specifically TIME, and the probability that given the current buffer size, whether the task(s) at hand are likely to run out of buffer headroom. These “tasks” are influenced by a wide range of things–for example, instantiating an instrument that adds latency (convolution for example), creates additional busses, or anything else that puts pressure on the buffer stream (forcing it to cover more ground in the same amount of time) can cause the meter to rise. And this can be true even though the instrument is not “using” the CPU to play voices. So right away, you see that it is possible to get readings that have little to do with overall CPU load.

A while ago, when everyone was paranoid about how many cores to buy, we were all forced to read and understand this:

Note in particular this caption in the “Multiple-Threaded Applications” section:

“Here’s some classic multi-processing confusion, illustrated by Cubase 4 running 28 voices of a heavy-duty physically modelled soft synth that together consume almost 100 percent of a single core of this dual-core PC. The high Cubase ‘VST Performance’ meter reading (bottom left) simply indicates that one or more cores is approaching its limit. However, since Cubase 4 is optimised for multi-processing, if you create another track and connect its output to another instance of the same soft synth, you’ll still be able to run a further 28 voices on the other core.”

This is another counter-intuitive realization that occurs if you regard the ASIO meter as a CPU meter–just don’t do that and you’re fine.

For add’l information, also see