by Charles Jefferies

Cache Size

 
Cache Size
 Reference Guide - Hard Disk Drives 

In the last couple of years, hard disk manufacturers have dramatically increased the size of the hard disk buffers in their products. Today, 8MB/16MB buffers are common on retail SATA drives; some drives are available with up to a 64MB buffer.

I believe there are two main reasons for this dramatic increase in buffer sizes. The first is that memory prices have dropped precipitously over the last few years; it doesn't cost much to increase the amount the manufacturers put into their drives. The second is related to marketing: hard disk purchasers have a perception that doubling or quadrupling the size of the buffer will have a great impact on the performance of the hardware.

The cache chip from a Seagate Barracuda hard disk
logic board. This chip is the entire cache: it's a 4 Mib chip,
which is 512 kiB, the size of the cache on this drive. Some
caches use more than one chip, especially the larger ones.

The size of the disk's cache is important to its overall impact in improving the performance of the system, for the same reason that adding system memory will improve system performance, and why increasing the system cache will improve performance as well. However, the attention that the size of the hard disk buffer is getting today is largely unwarranted. It has become yet another "magic number" of the hardware world that is tossed around too loosely and overemphasized by salespeople.

So, where does this leave us? Basically, with the realization that the size of the buffer is important only to an extent, and that only large differences (64MB vs. 8MB) are likely to have a significant impact on performance. Also remember that the size of the drive's internal buffer will be small on most systems compared to the amount of system memory set aside by the operating system for its disk cache. These two caches, the one inside the drive and the one the operating system uses to avoid having to deal with the drive at all, perform a similar function, and really work together to improve performance.

Next: Write Caching