Running out of processor power is a frequent source of frustration for those working with computer‑based digital audio. Martin Walker tackles some common queries about how to avoid it.
While the average word processor or spreadsheet application rarely takes more than a tiny fraction of any computer's power, digital audio recording and especially real‑time sound generation and signal processing are very demanding of processor power. If you regularly find yourself desperate for more processor power then you should seriously consider getting a faster CPU — in the case of the PC, prices are currently in free fall, and you can buy a processor today for £50 with the sort of power that cost several hundred pounds a couple of years ago. In many cases, however, you can squeeze a few more ounces of power from your existing processor by applying a clearer understanding of what processor power is and how it is consumed.
Every computer contains at its heart a CPU (Central Processing Unit), more commonly referred to as the processor, which carries out the instructions that constitute a program. Each processor is designed to run at a fixed frequency, known as the 'clock speed' because it syncs to an external clock (just like digital audio circuitry). This speed is measured in MHz (millions of cycles per second).
Different designs of processor are used in PCs, Macs, and Ataris, but all work with comparatively simple instructions, such as performing an addition sum, or moving the contents of one memory location to another. Each of these instructions will take one or more 'clock cycles' to perform. So, the faster a processor's clock speed, the less time it takes to carry out any instruction. Note that the same type of instruction may take a different number of cycles to perform on a processor of a different design, and the only way to compare different processor designs (for instance, to measure the performance of an Intel Pentium versus a Motorola G4) is to run software tests known as benchmarks. Thus, for example, while a 500MHz Intel Pentium is faster than a 450MHz Pentium, both are actually slower on most benchmarks than a 400MHz Motorola PowerPC chip as used in Apple's latest G4 computers.
However slow a particular computer is, it will eventually finish any set of calculations: a high‑end graphics program might take hours to render a particularly complex image. Until a few years ago, the average home computer was similarly not fast enough to carry out digital signal processing in real time; you had to click on an 'Apply' button and wait for the process to be carried out 'off‑line'. When the calculations were finally completed you could then (and only then) audition your new sound.
However, as soon as the processors in home computers became fast enough to cope, software could be written in such a way that huge digital audio files were split into much more manageable packets. Each of these was processed independently, and the packets were then joined together again at the output side, to emerge in a steady stream in real time. This 'streaming' enabled any audio data to be processed continuously, because you no longer had to wait for the entire file to be processed before starting to hear the results.
The problem is that every processor has a limit as to how many calculations it can perform in real time. If you attempt to do additional processing (for instance, by opening another plug‑in) when the processor is already occupied 100 percent of the time in continuous calculations, you reach the point at which the data will start to emerge too slowly — you have 'run out of processor power'.
Different audio processes require different numbers of calculations to be performed, and so take up different amounts of processor power. Possibly the hungriest algorithms are those used to perform noise reduction: despite their complexity, it is invaluable to be able to hear the effect of adjusting each control in real time, so that you can extract the cleanest signal while removing the minimum amount of programme material. However, noise reduction is thankfully rarely needed during multitrack recording and playback, so these algorithms rarely have to compete with other processor‑hungry tasks. In any case, if you do want to clean up a single track from a multitrack recording, dealing with the track in isolation will let you hear any unwanted sounds more clearly. If you really must clean up your tracks 'in situ' then a noise gate plug‑in will take far less processor power.
Traditionally reverb is always quoted as a huge power‑guzzler: when I first starting measuring plug‑in consumption, the Waves TrueVerb occupied 67 percent of my Pentium 166MMX. However, the development of faster processors and improved software algorithms have both made reverb plug‑ins far less of a problem. The latest TrueVerb version 2.6 takes about 15 percent of the power of a Pentium II 300MHz processor, and only 10 percent of a Pentium II 450MHz.
However, reverb is still likely to consume more processing power than any other regularly used real‑time plug‑in, and no matter how powerful your computer it pays to know how to use this effect wisely. Always make reverb globally available to all tracks in a MIDI + Audio sequencer by setting it up as a send effect, rather than using multiple copies of the plug‑in as inserts on different channels. In this way you can add variable amounts of the same reverb plug‑in to various tracks independently, without taking any more processor power. Few songs need more than two types of reverb at most, and this approach will give you the maximum of control with the minimum of overhead.
If your processor is so slow that you simply can't manage to run a reverb in real time, or you want to release some overhead to add other effects, you could create a copy of a track, and run a plug‑in off‑line to apply 100 percent wet (ie. with no dry signal at all) reverb to this. You can then use the relative levels of the 'wet' and 'dry' tracks to control the amount of reverb on that part. Though it will place more strain on your hard drive, playing back an extra track with no plug‑ins will consume far less processor power than running a reverb plug‑in. If you want to regain the hard disk space later on you can delete the reverb tracks, safe in the knowledge that you can recreate them at any time in the future.
There are several ways to streamline your songs and save processor power at the same time. One way, if your sequencer allows it, is to define an audio Group channel. By sending the output of several similar audio tracks (such as brass or backing vocal parts) to this you can create a stereo submix, and apply EQ and effects to this submix rather than having individual plug‑ins on each track's own channel.
Although, as I've just mentioned, running additional tracks doesn't necessarily use a huge amount of processor power, you can still run into CPU problems running a huge number of audio tracks. If so, you could try bouncing several of them down to a single new stereo track pair. To do this you temporarily mute the other tracks, and then either use the mixdown function provided by your sequencer, or directly re‑record the remaining tracks using your soundcard's digital or analogue input. Normally your sequencer will permanently apply the effects of any plug‑ins being used on the relevant tracks, thus saving even more processor power.
A good safeguard is to leave the original unmixed tracks in your arrangement, but muted. The beauty of this approach is that it gives you the option of backtracking later on if you want to change your mind about the mix.
Many MIDI + Audio sequencers now provide a range of built‑in real‑time effects, which are normally carefully optimised to combine good sound quality with low processor overhead. You will probably find these perfectly adequate for most run‑of‑the‑mill duties such as individual track EQ and compression, and using them in preference to third‑party plug‑ins will help to save your CPU for areas where quality and hence processor usage are really noticeable, such as reverb, special effects and plug‑ins used across the whole mix.
For instance, if you need to roll off a little bottom end from a single track you could probably use any basic EQ plug‑in, whereas tweaking the EQ of an entire mix would probably benefit from a more esoteric option such as Waves' Renaissance model, at the expense of consuming rather more of your CPU power. A more fundamental choice can be made where a particular plug‑in is available in several forms. Cubase VST for instance has two modes of EQ — high‑quality mode is selected by default, but you could try switching some channels to the less processor‑intensive mode to save a small amount of processor power. In fact many third‑party plug‑ins are supplied in several versions, each with different feature sets, and you can save processor power by choosing the most appropriate one. For instance, Waves' Q10 10‑band paragraphic EQ can also be launched as a Q1 (one‑band), as well as Q2, Q3, Q4, Q6, and Q8 versions. Each consumes a proportionate amount of processor power, so there's little point launching the 10‑band Q10 if you only want to add a little sparkle to your top end.
Q. Most of the time I can run enough real‑time effects with processor power to spare, so why does my sequencer occasionally glitch or stop altogether?
This is often a result of running close to the edge with processor power, so you need to look for anything that might cause a temporary blip that takes you over 100 percent CPU power. One possible culprit is graphic redraws: when the song position cursor reaches the right‑hand side of the screen, the computer has to perform a complete update of your monitor display, which can require a large amount of processing power. The cure is to zoom out so that the entire song is displayed at once — this ensures that a screen update is never required, and may let you add more effects without glitching. Similarly, opening other editing windows or switching to your synth editor or soundcard mixer utility all require momentary bursts of processor power. The simple answer is to resist the temptation to change anything on your monitor screen during recording or final mixdown; sometimes even moving your mouse can tip things over the edge if your system is on the brink
Applications that run as background tasks, such as virus checkers, screensavers, and installation monitors (such as Cleansweep for the PC), can sometimes kick in unexpectedly, even if you are not aware of them doing so. This may be enough to exceed 100 percent processor overhead and cause audio problems such as glitches. By removing such potential time bombs from the background you stand a much better chance of your processor having a smoother ride.
These will always consume a considerable amount of processor power, although various tricks can be employed to minimise the damage. First, limiting the maximum number of simultaneous notes will make a significant difference. It is sometimes possible to run the software engine at a lower sampling rate than your main sequencer, and again this will save a considerable amount of CPU.
However, adding real‑time effects to soft synths is an additional drain that you can sometimes circumvent. If you use Steinberg's Cubase VST, Emagic's Logic Audio, or Opcode's Vision DSP or Studio Vision on the Mac, you have Rewire capability. This allows the output from Rewire‑compatible soft synths to be piped directly to the sequencer (see the 'Rewired For Sound' feature in SOS November '99 for more details), permitting you to re‑use the same reverb and other global effects that may already be in place for your digital audio tracks, and make a considerable saving in processor power.
Scouring your software application manuals can often yield a few more ways to lower CPU consumption, largely by switching off certain options that you may not be using anyway. For instance, in Cubase VST you can deactivate inputs that you are not using, and turn them all off during mixdown. Similarly, you should deactivate any output busses that you are not using.
Finally, let's hope that the design of Wavelab 3.0 (see review on page 102) starts a trend. In its Audio Montage window you can add effects to sections of a track individually, but they only consume processing power while that part actually plays. This is a huge improvement in design, since you can run a wide variety of effects during the course of a song, but they need never all be on and consuming power at once.