I'm a big fan of disk defragmentation. There are many times when I get to a client site and listen to complaints from the principles that their computers aren't as "fast" as they used to be, or that the computers seem to be getting tired because they are making more "mistakes". In almost every instance I've found that the machines have never been defragmented, and after a good defragging the clients says its like they have their old machines back.
If defragging is a good thing, its got even better because now a defragger is included with Windows 2000. This is a streamlined version of the disk defragmentation utility Diskeeper. The primary differences between the built-in version of the defragger and the full version of Diskeeper is that you cannot easily schedule defragmentation runs with the built-in version, and the built-in version does not perform off-line directory defragmentation. If you want those features, you'll have to grab the full version from Executive Software.
When the Defragger Doesn't
We get calls from time to time after clients try to do the defragmentation runs themselves and find that the disks never seem to get full defragged and that they don't notice any performance enhancements after the defragging run. In addition, when they do another analyze on procedure on the disk, they are told that they need to defrag the disk again. After doing this for about three or four times, they call us.
Gimme Some Space
The problem is that the defragger needs about 10-20% of the disk free in order to do a complete defragmentation. If there are many large and highly fragmented files, we've found that you'll need up to 40-50% of the disk free in order to accomplish a complete defragging. And if you have very large files (> 1 GB) and you don't have several GBs free on the disk, you'll never get those files defragged using the built-in defragger.
Sometimes the problem is severe enough to give you a warning, such as the following:
This is an extreme condition. You can go ahead and have the defragger try its best to defrag this volume, but all you do is listen to it chug away for a little while, and then it'll finish without accomplishing much of anything.
However, a proper defragmentation still won't take place even if you don't get this message. All you're see is the repeated message after the Analyze process is run that you need to defrag the drive.
The Fix is In
There are several ways you can correct this problem:
- Free up some disk space and try the defrag again
- Run the defragger hundreds of times and hope for the best
- Back up the data on the volume, then reformat and restore the data.
What solution you should implement depends on your working environment. If there's only a couple of large files on the disk, you could copy those files to another volume, then perform the defrag, and then copy them back. If you have a great number of moderately sized files that are highly fragmented, its best to back everything on the volume up, reformat, and restore. I don't recommend running the defragger hundreds of times.
Also, remember the page file can get fragmented if you are using a dynamically resized paging scheme. Its usually not a good idea to have the pagefile dynamically resized, but if you choose to do this, you'll have to whack the pagefile when trying to defrag the volume.
For More Information:
For more information, check out this TechNet article that gives you some handy advice on how to deal with defragging problems: