Performance tuning is a primary duty of the systems administrator. The task can be fun but also a challenge. Sometimes, you face a tug-of-war between tight budgets (which force you to delay new system purchases) and new applications (which demand more from the systems you have).
The struggle leaves you scrambling for cost-effective tools that can coax as much performance as possible from your overburdened servers.
One tool that you shouldn't overlook is a disk-defragmentation utility. Although disk defragmentation is hardly a glamorous task, you can realize significant performance gains by reducing the number of file fragments on your servers' disks. Heavy fragmentation can hamstring even the fastest SCSI drive. Also, no matter how much you expand and tune your RAM, data always needs to pass through the I/O bottleneck that your relatively slow, electromechanical hard disks produce. This restriction becomes even more pronounced when heavy fragmentation is causing those disks to thrash. Thus, a reliable and effective defragmentation utility is a crucial component of your performance-tuning toolkit.
As you probably know, Windows 2000 incorporates a scaled-down version of Executive Software's Diskeeper as its default defragmentation utility. This Win2K tool is the equivalent of Diskeeper Lite, a freeware product that runs manually, has no scheduling capability, and offers no support for command-line execution. Because of these limitations, you'll need to purchase a full-featured defragmentation utility to centrally manage and automate defragmentation on your servers and workstations. In this comparative review, I examine the features and performance of three prominent defragmentation products: Diskeeper 6.0, Raxco Software's PerfectDisk 2000, and Symantec's Norton Speed Disk 5.1.
The Test Environment
I graded each defragmentation product according to two general categories: overall performance and functionality. To measure performance, I recorded the length of time each product required to complete a defragmentation cycle, then I critiqued the effectiveness of the defragmentation. My functionality tests focused on deploying, scheduling, and monitoring defragmentation procedures in a networked environment.
For my performance test bed, I used four identical Hewlett-Packard (HP) NetServer LT 6000r enterprise-class servers. Each server came with six 550MHz Intel Pentium III Xeon processors and 1GB of RAM. Each server also contained an onboard HP NetRAID adapter attached to three 18GB IBM Stingray 10,000rpm Low Voltage Differential (LVD) SCSI hard disks.
For my functionality test bed, I used a segment of the Windows 2000 Magazine Lab network. To deploy the defragmentation utilities and test their scheduling and monitoring features, I used a variety of this segment's workstations and servers.
Because defragmentation utilities must perform well in all types of environments, I set up multiple configurations of data and fragmentation. My goal was to obtain a good performance sampling from each product while forcing that product to work with both extremely fragmented and extremely full diskstwo scenarios that defragmentation utilities have historically struggled with.
I began by dividing each NetServer LT 6000r server's 18GB system disk into two NTFS partitions. These C and D partitions were 4GB and 14GB, respectively. I installed Win2K Advanced Server (Win2K AS) on the C partition. I let Win2K create a pagefile with an initial default size of 1.5GB. To test each product's ability to handle large files, I installed Microsoft SQL Server 7.0 on one of the servers and created an 8.4GB database on the D partition; I used T-SQL scripts in the SQL Query Analyzer to populate the database with data. Including the database log file, the total data on the D partition was 9.9GB.
For the remaining three servers, I progressively filled the D partitions with random data while maintaining a constant level of fragmentation. For the C partitions, which were the system partitions on the four servers, I kept the amount of data constant while progressively increasing the level of fragmentation. Because the four HP NetServer LT 6000r servers were identical, I could simulate a single server in eight distinct levels of fragmentation and available free space. For detailed statistics about each partition in its fragmented state, refer to the sidebar "Performance Results." This sidebar's tables show detailed results of all my tests. (Instant DOC ID 16443)
After my servers' partitions were ready for testing, I backed up each system to ensure that I would test all the products under identical conditions. To do this, I used RAID 1 mirroring, which each HP server's HP NetRAID adapter provided. First, I prepared each disk with an appropriate amount of data and fragmentation and mirrored it in a RAID 1 configuration. Then, I broke the mirror. I used one of the disks for testing and put the other aside as a backup. After I finished testing a product, I restored the original environment from the backup disk and recreated a RAID 1 mirror set. I repeated this process for each of the four servers' disks.
Because the products differ in their adoption of the Microsoft MoveFile API, I tested each product on the C (i.e., system) partitions according to the vendors' directions to achieve the best results. For Diskeeper and PerfectDisk, I used a combination of online and boot-time defragmentation modes. The timed results for these two products reflect the cumulative time required for both passesstarting from when I clicked OK to restart the server to the moment that the Windows logon screen appeared. Typical reboot time for the HP servers is approximately 2 minutes 40 seconds. Because Speed Disk doesn't adhere to the MoveFile API and instead defragments all files online, that product's timed results reflect one pass with no reboot. For more information about the MoveFile API and system files, see the sidebar "The Challenge of Defragmenting an NTFS Partition," page 106.
The test results for the D partitions reflect each product's results from one online pass. Because these were nonsystem partitions, I thought each product had an equally fair shot at defragmenting the data without needing to work around a pagefile or heavily fragmented Master File Table (MFT). This scenario is also more likely in production environments, in which administrators prefer not to reboot a busy file server for the sake of defragmenting its nonsystem disks or partitions.
The Final Analysis
In my assessment of these products, I tried to keep in mind network administrators' highest priorities. Obviously, performance tops that priority list, followed closely by ease of use and manageability. Although a good UI certainly contributes to ease of use, I wouldn't expect to be using the interface frequently. A defragmentation utility should reliably do its job in the background within a reasonable period of time, freeing me to accomplish more pressing tasks.
All three products do a good job of maintaining moderately fragmented partitions that have ample free space. Under more severe conditions, however, I would select Speed Disk as the most impressive product of the three I tested. The performance numbers speak for themselves. Although Speed Disk didn't complete its passes as quickly as Diskeeper did, Speed Disk defragmented files splendidly while keeping its overall run times well below PerfectDisk's results. Additionally, Speed Disk performed on every system I tested, whereas the competition stumbled with large databases and pagefiles. Equally as important, Speed Disk impressively defragmented free spacea crucial capability for preventing future fragmentation.
Another important Speed Disk feature is its ability to defragment online. Perhaps I'm paranoid, but the less often I need to reboot my servers, the better. If I do need to reboot a server, I like to make sure the server comes back online as expected. With offline defragmentation passes and features such as Diskeeper's Frag Guard and adjustable fragmentation thresholds that vary when an offline pass occurs, you might not know exactly when your server will reboot.
Finally, the deployment and management functionality of Speed Disk's Norton System Center (NSC) are great selling points. Many shops don't use Microsoft Systems Management Server (SMS) or its competitors, so a free tool with which you can deploy and manage your defragmentation utility is a big bonus.