Readin', Writin', Speedin'

Before we get to matters of reading and writing speed, there's a bit of housecleaning to take care of.

In the old days - when a big hard drive offered 250 MB in a full-height 5.25" bay - there was a problem holding tolerances as the drive heated up with use. Those drives occasionally took time out for thermal recalibration. Drives which did contnuous recalibration were able to support continuous data streams, so were designated A/V (audio/visual). Modern drives have much tighter tolerances, so they all recalibrate continuously and don't stop working just for that. Unfortunately, the term 'A/V' has been retained to designate very high-speed drives. But what we care about is that you do not need an A/V drive for CD-R. However, remember that if you let your hard drive go to sleep, it will have to spin up again. Now, that's out of the way.


Writing

Okay, how fast should you write? For most users, it is not important. If you are in production, turning out copies of your own Greatest Hits album, then you care. But since modern mastering software uses only a small amount of a modern system's power and permits you to do almost anything while burning, it is no longer a big deal. If you are going to burn a half dozen discs a day or fewer, you will feel less pain waiting for a 4x burner than you will paying for a 16x. It's also a lot easier to find inexpensive media which write well at lower speeds.

Drives are getting faster all the time, so a 24x is better (quicker) than a 16x, right? Not exactly. Up to 16x, speeds do go up uniformly and as expected. But above that, the manufacturers start playing the same game they do with readers: 24x means a maximum speed of 24x, but the job won't be done in half the time a 12x takes. In fact, achieving the higher speeds requires that the laser stop and start to shift write speeds, so all such writers have buffer underrun protection. In itself, that's good, but it can also mean that you don't get the speed you expect. With a high-speed drive, your reader may not be able to keep up (see below) but you think you're being saved by underrun protection. Well, you're not likely to get a coaster, but that protection costs write speed and you may well find that your 24x writer is slower for some jobs than a 16x or even a 12x.


Reading

This primer is about CD-R. If you want a high-speed reader for some other reason, fine - but that is not of interest here. You want a CD-ROM reader to read discs for writing. In order to write "on the fly" - directly from reader to writer through mastering software - your source must supply a steady stream of data as fast as your writer will write them. The hardware provides some buffering of those data, but that is only enough to handle a short transient, typically 6-7 seconds. Modern mastering software provides additional buffering from spare system RAM. Still, eventually the buffer will be drained if the source dries up long enough.

To be sure that your source does not lag behind the demand, it must be able to supply data continuously at the needed speed. A rule of thumb is that the source should be twice as fast as the writer. In general, a CD-ROM drive rated at more than 8x does not deliver constant speed. The speed on the innermost part of the disc may be less than half that on the outermost. As a result, a drive rated at 24x may not be able to provide data fast enough to keep a high-speed writer happy. Complicating the matter further is the fact that audio extraction is often substantially slower than data transfer. Some drives do not do DAE at all; others may be rated 24x but deliver digital audio at 2x, 1x or slower.

Surprisingly, there can also be a problem with a reader which is too fast. A very fast reader may fill the buffer very quickly, then sit in idle while the buffer is draining. If that takes long enough, the reader may spin down. When the buffer needs to be refilled, the source starts to spin up again. If it takes too long to supply the data, the laser can be starved and the dreaded buffer underrun may appear. There are many ways to address that problem if it occurs for you: reduce the software buffer, slow the reader or increase its spindown delay. In fact, it may also be solved by slowing the write; that would give more time for the buffer to be reloaded. This problem will only occur when writing on the fly, it is detectable during test, and it can be monitored by watching buffer utilization if your software displays that information.


Emptying the cache

In a Windows system, writing to a drive is usually cached - buffered in RAM. That speeds up normal operations substantially and is necessary in practice if your system is to run well. However, it introduces a potential for disaster in some forms of CD recording. In particular, if you are writing to a packet disc, a lot of information is being held in RAM. Typically, that will include much of the information you want to store and (for fixed-length packets) the directory to all of the disc's contents. If you're in a hurry to get the disc out and eject it manually or shut down the computer without ejecting it at all, some or all of that will vanish. Needless to say, recovering what was in RAM instead of on the disc can be a problem.

When you shut down Windows, if you're smart you let the software establish equilibrium first. If you're writing packets, the same rule applies. Use the software to eject the disc; it will ensure that the pending information is written where it belongs. Save a few seconds by forcing the disc out of the drive and you may lose data, the directory or even the whole disc.


E-mail me at cdrecording@mrichter.com
Return to Mike's home page