There's nothing more disruptive to music‑making than an unstable PC. Fortunately, there are many utilities and diagnostic tests available to help you resolve your problems.
If your computer starts to crash whenever you perform a certain task, just after you install a new piece of hardware or software, the cause of the problem is usually fairly obvious. However, in many cases fault‑finding isn't so easy — you may not become aware of a problem for some time, and by then have installed several new items, making it more difficult to track down the cause. Even more annoying are problems that happen once in a blue moon, seemingly at random. This makes them far more difficult to solve, especially if you've built the PC yourself, since you won't have an unending supply of replacement hardware components to swap over to narrow down the offending item, like the professionals often do. Instead, you'll need to do a little more detective work, find ways to force your system to expose its intermittent weaknesses, and relate specific symptoms to likely troublemakers.
Before we get stuck in, it's well worth reiterating some very basic advice. If you contact the telephone help line of almost any PC software developer, one of the first things they will ask you is whether you've installed the latest available driver versions for your hardware, and are running the latest versions of your software applications. In the case of hardware drivers this always makes good sense, since as any software bugs are confirmed, they get put onto a list and hopefully get dealt with during the next update — only rarely will a new bug appear in a more recent driver version. Don't forget things like dongles — few of us like having to use them, but they sometimes get driver updates as well.
You can face a slightly different situation when it comes to software applications, since more often than not an update will incorporate new features as well as bug‑fixes, which may complicate the issue. Thankfully, Internet user forums now expose any weaknesses of a new release within a few weeks and sometimes days. If you do have Internet access, moreover, don't forget that most manufacturers have FAQs on their web sites, and in many cases independent user sites and forums exist for specific products as well.
The other general piece of advice I would offer is to install your music applications in a separate partition, as I described in PC Musician in SOS May 2001. Judging by some of the comments on the SOS Forum, I know that not everybody is convinced, but tracking down problems in a slimline system with a minimum of installed applications is both quicker and easier. For instance, if you suspect a possible hardware problem you can immediately rule this out if you don't get the same symptoms on your other partitions.
Performance of each partition is also likely to be better, because in each case the Registry is smaller and tidier, and fewer system files get loaded each time you boot up. I've even disabled USB support in my BIOS for my music partition, giving me another IRQ and completely removing the need to install drivers for my USB modem and printer.
If you use a utility like PowerQuest's DriveImage or Norton's Ghost, keeping up‑to‑date image files of each partition is also quicker, and if you do get a problem requiring you to restore an image file to 'backtrack' the state of your PC, you don't need to tamper with the other partitions. Even in the worst‑case scenario requiring a reformat and complete Windows and applications reinstall, I'd much rather do this for one of my partitions than for the whole PC!
If and when your PC crashes, there's no point kicking it (unless this happens to reseat an intermittent PCI card or IDE cable, in which case it might just work). What you need to do is try to narrow down the cause of the problem, so that you can do something about it. At first sight this might seem an almost impossible task, but you can nearly always make some headway by noting down which applications you were running at the time of the crash, and what error message appeared if any.
The best course of action is to start by trying to remember what, if anything, you've changed recently that may tie in with the start of the problem. It may be a new piece of hardware, or a new software application. If you suspect a new hardware item, try removing it to see if the problem goes away — if it does, it may be either a fault, or a conflict with something else in your PC. With a new system built from scratch, try systematically removing all your PCI expansion cards one by one except the graphics card, to see if this stops the problem happening.
If you keep getting error messages when shutting down Windows, or when booting, even when you're not running any applications, it may be due to a corrupted Windows file or driver, or faulty hardware. You can often find out which by entering Safe Mode — hold down the Ctrl key while booting and wait for the text Startup Menu to appear, and then choose the Safe Mode option. This will finish booting your PC with a very basic set of drivers that don't use any of the special features of your hardware. If the error message doesn't occur in Safe Mode then the problem is probably due to an application or driver file. If it does, then Windows files may be corrupted or you may have faulty hardware. Microsoft have extensive articles on fault‑finding in their Knowledge Base, which you can find at search.support.microsoft.com.
There are lots of different utilities available that test out various aspects of your PC, but many are designed either to measure performance (benchmark tests) or to find specific faults (diagnostics). However, by far the best way to find out whether or not your PC hardware is stable is to make it perform some typical tasks — lots of them!
While you could do this manually, by running your favourite software applications, this might only stress some of the PC components, and not thoroughly or comprehensively. A far better solution is to use a specially designed software utility that thoroughly exercises all the hardware components, including your CPU, RAM, video card, hard drives, and so on, in exactly the same way that normal software would do over a much longer period of time. This has the added advantage that since processors and hard drives get hotter when called on to perform intensive activity, such tests will tend to expose any long‑term overheating problems much more rapidly than normal use.
The ideal time to do this is immediately after you've bought a new PC, or immediately after you've installed Windows on one you've built yourself. This allows all the components to be stress‑tested before you start saving lots of important data. However, you can do it at any time during your PC's (hopefully) long life, as long as you make sure that you've backed up all your data first. This isn't because such utilities will cause any data loss — on the contrary, they're normally very well behaved — but you'll be trying to expose hardware problems that might crash your machine, and bad crashes may corrupt data on your hard drive. Many professional PC retailers also do this as a matter of course before they ship any computer, leaving it on 'burn‑in' test on the bench for between 12 and 48 hours before despatch. Since most electronic components either fail in the first few hours of use, or after thousands of hours, this process weeds outs any faulty components that have already escaped the manufacturers' own screening.
If your PC reboots itself at random times, the most common cause is overheating and subsequent shutting down of the CPU, most often because your CPU fan has stopped working. You can soon check this by opening up the case and making sure that the fan is still spinning, but it would be preferable to be able to monitor both the temperature of the CPU and the rotation speed of the fan on demand using software, especially before you start stressing out your PC and pushing it to higher temperatures than normal.
Most modern motherboards incorporate temperature sensors, mounted just below the processor chip, to provide just this function. However, although these are extremely useful, unless they make good contact with the CPU chip they invariably measure a somewhat lower than actual value, and can therefore only be used as a guide. Far better are those processors with built‑in sensors, such as the Pentium III and Pentium 4 ranges. The internal temperatures measured by these are far more accurate, and as long as the motherboard supports this feature (and most now do), the current temperature can be read in a BIOS page typically named Hardware Monitor, along with that of the motherboard sensor. Together they provide a readout of Motherboard and CPU temperature that gets updated every 10 seconds or so.
This periodic monitoring is invariably carried out by one of a few specialised motherboard chips that at the same time also measure the various power‑supply voltages on the motherboard — typically ±5 Volts, ±12 Volts, +3.3 Volts, and whatever core voltage is being used by your particular processor. Most motherboards now also incorporate three‑pin connectors for your CPU and chassis fans, with the third pin being used to measure the rotation speed of a suitably‑equipped fan. It's well worth using these, since the same motherboard monitoring chips can then also provide a readout of fan speed in RPM.
However, although information within the BIOS is useful when you first switch on a new PC to make sure that the power supply voltages, fans, and temperatures are all within suitable limits, it's not much help when you're running Windows. In this situation you need a Windows utility that can interrogate the motherboard monitor chip. Sometimes your motherboard support CD‑ROM will include one, but if not various shareware and freeware authors have come to the rescue with suitable small utilities which you can download from the Internet.
The best ones I've come across are HMonitor and Motherboard Monitor. HMonitor is now up to version 184.108.40.206, runs on Windows 95, 98, ME, NT, and 2000, and provides a straightforward interface with the minimum of frills that displays all the information you'll ever need. Motherboard Monitor is currently at version 5.02, also runs on the same OS platforms, and provides a similarly comprehensive readout, but with a huge number of additional customisation options. Both automatically recognise which motherboard monitoring chip is installed in the majority of cases, and after a few preliminary configuration choices will provide you with as much information as you'll ever need. Although both utilities have very low resource usage, they still update their data once every few seconds, so don't be tempted to leave them running in the background when running music applications — I tend to launch them either when fault‑finding or soak testing, or on particularly hot days to check that nothing's overheating.
As for what constitutes a 'normal' temperature for your CPU, values from 30 to 40 degrees Centigrade are excellent, between 40 and 50 more likely, while anything over 70 degrees is a cause for concern, and probably means you need either a bigger or faster fan or a more efficient heatsink. By the way, Athlons dissipate more power than Pentium IIIs, and therefore tend to run hotter anyway, but any processor that reports an operating temperature of more than 80 degrees Centigrade is in danger of shutdown or burnout.
The first and most important hardware item to test is your CPU, since this is involved in every task your computer performs. Various Internet utilities are available for stress‑testing CPUs, and I downloaded quite a few to try out. One of the best seems to be Prime 95, which continuously calculates prime numbers, and provides the perfect option for our purposes, which it calls the Torture Test. Once started, this will carry on performing calculations until you stop it again, and to really push your processor to the limit you should leave it running overnight. This will allow it to reach its highest (hopefully) stable temperature, and is especially useful if you're attempting overclocking, since it will weed out any CPU instability problems. My new Pentium III 1GHz processor rose from 38 to 52 degrees Centigrade during the first 10 minutes, but stabilised at this point.
If your PC passes this test, the second component to test is your RAM. This can cause random errors if running 'close to the edge', especially if you're running the busses beyond their recommended settings, and to make sure that there are no weaknesses, every byte must be tested. The best way to test RAM in isolation is to use a DOS‑based utility, so that problems due to Windows are out of the picture altogether. Michal Tulacek's GoldMemory is a shareware utility that does just this: you install it onto a floppy disk, and then use this to boot up your PC. GoldMemory will then identify any incompatibility between your RAM and motherboard, an incorrect RAM setting in your BIOS, and log any memory failure during its continuous testing of every byte until you stop it — again, several hours of the testing cycle is ideal.
Musicians really don't need state‑of‑the‑art 3D video cards, but graphic stability is still important, and if you wish you can run one of a variety of specialist utilities to test this aspect out. I used a more general‑purpose utility, PassMark's BurnInTest (see box for more details). This proved ideal to run not only tests of both 2D and 3D graphics, but also CPU activity, RAM activity inside Windows, as well as floppy, CD‑ROM, and hard drive integrity.
Once you're happy that your PC hardware and drivers are reliable under stress, the chances are that any remaining glitches are software‑related, and if so you should refer to the developer's web site, relevant user groups and forums, or any technical help lines that are available for your specific application. However, don't automatically take the fashionable view that it's always your MIDI + Audio sequencer application that is the root cause of every music‑related problem. It only takes a few moments' thought to remember that Cubase, Logic, Nuendo, Sonar, and other similar applications are at the mercy of plenty of other software items. For instance, Cubase VST 5.0 has recently been declared compatible with Microsoft's DirectX 8.0a. However, Steinberg are at great pains to point out that this doesn't mean that your soundcard drivers, or the many third‑party plug‑ins you may be running, are also compatible, and these may still crash Cubase on launch.
In fact, plug‑ins seem to be the source of quite a few crashes, as well as some more obscure problems. Apparently, quite a few older plug‑ins are incompatible with DirectX 8.0a, and will therefore crash Cubase on launch when it's installed on your PC, and possibly Logic Audio as well. Admittedly, in such circumstances it's difficult to know which plug‑in to blame, and this is one reason why from version 2.0 onwards, Wavelab incorporates special 'protection layer' code when making calls to a plug‑in, so that the program will keep running even if the plug‑in crashes. If it manages to catch a plug‑in doing the dirty, it will display an error message to that effect. From version 3.04b onwards, it displays the name of each plug‑in on its status bar as it is loaded, so that if it does still crash at least the culprit's name is displayed for everyone to see.
From my talks with software developers I determined that one of the most common reasons for plug‑ins causing host applications to crash is writing to memory beyond their limits. The host application normally provides enough memory for each plug‑in when it's launched, but if it subsequently ignores these boundaries then anything can happen. Another problem area is code that works well when playing back audio until you try changing the parameters in real time.
More subtle problems include memory leaks, most commonly when memory required to draw bitmap graphics isn't returned to the system properly when the plug‑in window is shut. This leads to your PC gradually becoming sluggish over time as PC resources slowly ebb, the bitmaps eventually not being drawn correctly or at all, or your fonts becoming corrupted. This apparently happened on some early version of Jezar's Freeverb, for instance, but has since been cured. If you suspect such problems with any of your plug‑ins, you can open the System applet from Control Panel and click on its Performance page: this shows a figure named 'System Resources', and if you open and shut a particular plug‑in many times its value should be about the same when you next open this page.
Yet another potential plug‑in problem area is when signal levels get very low. Some processors apparently use twice as much memory and up to four times as many CPU cycles dealing with impossibly tiny floating‑point values, so if the plug‑in author doesn't deal with this it can sometimes make your audio application feel sluggish when little is happening in your song, or even when it's stopped.
Freeware developers are often seen as the principal source of badly behaved plug‑ins, and freeware effects do seem to cause their fair share of problems, largely due to lack of experience on the part of the programmer rather than from any deliberate intent. So, if you want to keep your PC as stable as possible, don't install every single plug‑in you can lay your hands on, just because it's free. Instead, remove or uninstall those that you don't ever use, and don't try out new ones for the first time when you're in the middle of an important project. However, you can't really generalise, since shareware and other commercial products are not without fault, and since they tend to be more complex than freeware offerings, they may be more difficult to debug thoroughly before release.
One way to minimise problems is to stop playback before launching a new plug‑in, since this reduces the number of simultaneous threads running during this initial one‑off process. However, by far the easiest way to exclude VST plug‑ins as a possible problem area is to temporarily remove them from your vstplugins folder. If you've recently installed some new ones, try moving these first to see if it solves your problem, but if not just drag the entire contents of the vstplugins folder somewhere else, and boot up your application again. If the problem no longer happens then you can systematically move the plug‑in files back into their original folder, and as soon as the problem reappears you've found the culprit.
It's not quite so easy with DirectX plug‑ins, since these have their own install routines, and they must be registered by Windows so that they appear in all DirectX‑compatible host applications. If they have a proper uninstall routine, you could instead remove them completely to see if this resolves a problem, and then reinstall them again later on. However, a far simpler solution is to employ the handy DXMan utility from AnalogX, which allows you to temporarily remove the registration for any plug‑in, and then re‑register it by dragging its DLL file back into the DXMan window.
Finally, at the risk of stating the obvious, do read the manuals and the, always more recent, 'readme' files that accompany both your hardware and software, as they may provide the answer to some more obscure problems that may seem unrelated to the symptoms. For example, an 'ASIO driver not found' message when launching Cubase VST may not point to a missing driver, but to another application such as GigaStudio automatically grabbing it each time you boot up. Since the driver is already allocated, Cubase won't find it unless you launch GigaStudio and choose another soundcard to use with it, or make sure that the appropriate 'Multi‑client audio' soundcard setting has been enabled, so that both applications can share the same driver.
To give another example, if you get occasional high CPU overhead readings in your MIDI + Audio sequencer when playing back audio tracks, you will probably suspect either the sequencer, the soundcard drivers, or a background task or OS setting interrupting the proceedings. However, it may be a problem related to the DMA performance of your hard drive. Enabling DMA should ensure that CPU overhead is only one or two percent when reading and writing audio files, but get it wrong and this value could rise to more than 50 percent. You can check this by running the DskBench utility.
Problems like these show that you have to have your wits about you before pointing the finger. They also show that sometimes your PC may fall over for an obscure reason that may take some tracking down. So, do invest in some drive imaging software, and save the state of your system while it's working well. Then, if something unexpected happens, you won't be tearing your hair out.
As you might expect, increasing the clock speed of your CPU or the buss speed of your motherboard, or even tweaking your graphics card beyond its normal settings, can increase the likelihood of your PC becoming less stable. Generically termed 'overclocking', these processes can make your PC go faster, but often at the expense of stability. This is not only because the various components get ever closer to the point where they physically can't perform any faster and are therefore tottering on the brink of causing a crash or a spontaneous reboot, but also because, just like an engine, the faster they run, the hotter they get. In fact, overheating is probably the single worst enemy of stability, and yet to run successfully at higher speeds, the tweaker will often have to increase the CPU core voltage, thus increasing heat generation even more.
I know lots of musicians are tempted to overclock their machines to squeeze the last drop of performance from them before they fall over, but this is a recipe for disaster unless you're absolutely sure that your PC is still stable. Now that processor speeds are so much higher than they were, and prices have come down so much, overclocking isn't perhaps as enticing as once it was. However, if you're still tempted to try, make sure that you stress‑test your PC at its standard settings before attempting any speed tweaks. If you don't sort out any temperature issues that prevent it running continuously for 12 hours or more, then it won't stand a chance of being overclocked successfully.
Although there seem to be plenty of stress‑testing software utilities available, one that particularly caught my eye is Passmark's BurnInTest, written by David Wright. This runs on Windows 95, 98, NT, 2000 and ME, and tests the CPU while running both general integer and floating‑point maths, as well as the extra instructions such as MMX, SSE, and 3DNow! available to many recent processors. It also tests your RAM from Windows, 2D and 3D graphics, the floppy drive, up to four hard drives, and a CD‑ROM drive, as well as your printer and network connection if available.
While its default comprehensive test will soon weed out any faults in your PC, if you're looking for a specific fault, you can run individual tests in any combination to isolate the problem. Each one also has its own 'Duty Cycle' value, adjusted by means of a slider, which determines the length of pause inserted between each test. When you're running a suite of tests, leaving these at their default 50 percent position is sensible, but when you really want to push a particular aspect of performance, increasing the slider to 100 percent will give this aspect a higher load.
Passmark have also formed a partnership with Hmonitor, and if you run this utility in the background, BurnInTest will monitor your motherboard and CPU temperatures while you run the various tests. The results can be logged to a file periodically, while the final figures along with any error reports can be saved to disk, printed out, or saved as a graphic image.
As downloaded, BurnInTest will only run for 15 minutes at a time, although you can extend this by clicking on the Go button again every 15 minutes. Once you register for a very reasonable $22 you can run tests of any length you like. A Pro version is also available for $49, and this also lets you test a specific CPU on multi‑CPU systems, your serial and parallel ports with a suitable loopback cable (also available from Passmark if required), and a tape drive (on Windows NT and 2000 only). Both are extremely useful utilities, and invaluable for bringing intermittent or hidden PC problems to the surface.
If you want to avoid possible complications, choosing bog‑standard hardware components with a history of reliability from reputable manufacturers is likely to give you a more stable system. Here I'm not only referring to your choice of motherboard, RAM, and hard drives, but to the little extras such as keyboards and mice. Some users have experienced problems running exotic cordless mice and trackballs, possibly due to the extra drivers that they normally need, while multimedia keyboards with loads of extra buttons may also cause you grief for the same reason. After all, with a basic mouse and industry‑standard keyboard, at least you're running two components that you know shouldn't throw a wobbly.
When it comes to graphic cards, musicians have traditionally used cheap, basic models anyway, since they don't need turbo‑charged 3D graphics, and this also simplifies your setup if you stick to well‑known models such as the ATI Rage range, or the Matrox G400 and G450 models if you want to run twin monitors. Once you know that your PC is stable and reliable, by all means indulge in a little exotica, but not before.