In this new column, we identify several computing industry trends and then examine the implications of each for the CM industry. Last time we looked at the increasing capacity and decreasing cost of disk space and the implications for CM. In future columns, we'll take a look at networking, CPU speeds and multi-core systems, and more. This month, we continue our discussion on disk drives, and in particular technology and performance trends and implications.
Mass storage (typically disk) performance has improved significantly in the past 30 years. The larger capacities of the newer drives yielded correspondingly faster read and write performance. And interface standards have been upgraded or replaced to accomodate these changes. Yet, mechnical limitations remain very real when reading from a spinning platter. In particular, the initial seek delay to access a file depends on spin and seek delays. Even on a drive spinning at 15k rpm, the delay is up to 4 milliseconds. 7200 rpm drives double that. In addition, seek times also remain significant. Such overhead limits the maximum rate at which files can be checked out. After all, if it takes 1/100th of a second to access and read a file, then at most 100 files can be checked out in a second. In addition, if disks can write at a peak of 40 MB/s, then this presents a limit on check out performance for large data files and large numbers of files.
RAID technology has resulted in some increase in performance, though seek times are not improved much. In short, mechanical devices are slow compared with the other electronics in your computer system.
As solid state disks become more common, some of these characteristics are changing. In particular, time to first data is much faster, and data delivery rates are also improved. Though solid state drives have their limitations in certain applications of frequent changes, the relatively static data stored in a version control repository match well with the capabilities of today's solid state drives. In particular, if the repository stores only whole revisions, each revision, once stored, will never be changed.
We also expect that as the technology improves, applications of frequent change will work well with solid state drives, including development systems hosting workspaces.
What's likely to happen as solid state devices become more common is that other performance limiters will become more apparent. As an example, let's say the repository can today deliver 100 files per second, and with a solid state drive, this increases to 500 or 1000 files per second. While today there is little incentive to optimize a network protocol that can check out 200 files per second, with the new drive, that protocol also will need to be enhanced to see the full benefit of the drive.
Solid state drives today can provide a significant performance benefit for CM applications, and that benefit is likely to improve further into the future. As the slowest component of a computer system becomes a 1000 times faster, many design assumptions will need to be revisited in order to achieve optimal performance.
And what impact would such a drive have on other parts of SnapshotCM? We will continue looking next time. Stay tuned!