DiskTune

DiskTune.jpg

DiskTune is a freeware defragmentation program for Windows XP/2003 Server/Vista (32-bit and 64-bit). It supports FAT16, FAT32 and NTFS file systems.

As common with other defragmentation programs, DiskTune uses the Windows defrag API. DiskTune is capable of moving the MFT (online). DiskTune provides boot and application launch optimization utilizing the Windows layout.ini (see:Prefetcher). DiskTune counters interaction between the Shadow Copy service and defragmentation I/O by offering a VSS safe-mode option.

Unique to DiskTune is its capability to monitor the temperature of the host disk using Self-Monitoring, Analysis, and Reporting Technology.

Features

DiskTune offers 'normal' defragmentation as well as an optimization mode. The goal of optimization is to improve boot-time and faster application as well as frequently used files loading times. To accomplish the latter DiskTune moves those frequently used files and directories and the MFT in what it calls the 'system area' at the start of the volume.

DiskTune can be run with command-line parameters (Shortcuts created by DiskTune itself employ this capability).

  • Works in Microsoft Windows XP, 2003 Server, Vista (32-bit and 64-bit).
  • Supported file systems: FAT16, FAT32, NTFS.
  • Safe to use: utilizes Windows defrag API and other high level APIs only.
  • 3 operation modes: defrag, optimize and compact.
  • HDD temperature monitor; DiskTune will pause when your disk gets too hot.(how hot?)
  • Includes module to create jobs.
  • VSS safe-mode to reduce interaction between defragmentation and shadow copies
  • Background and low priority mode.
  • Context menu integration, can defrag selected folder only.
  • Boot optimization utilizing the Windows layout.ini file.
  • MFT defragmentation and optimization (online).

Compatibility

  • Although DiskTune is a 32-bit application it is capable of moving files in the system folder on 64-bit Windows versions: DiskTune will detect if it is running in a WOW64 environment and will disable the File System Redirector for its own process for the duration of the process.
  • VSS safe-mode 'emulates' a 16 KB clustersize to ensure all disk I/O is 16 KB alligned. As a result, in VSS safe-mode it will not move files smaller than 16KB nor will it move larger files if they can't be moved to a location where the move-delta between original location and new location is not an increment of 16 KB[http://msdn.microsoft.com/en-us/library/aa363911(VS.85).aspx MSDN article on defragmenting files] "Minimizing interactions between defragmentation and shadow copies

When possible, move data in blocks aligned relative to each other in 16-kilobyte (KB) increments. This reduces copy-on-write overhead when shadow copies are enabled, because shadow copy space is increased and performance is reduced when the following conditions occur:

The move request block size is less than or equal to 16 KB. The move delta is not in increments of 16 KB. The move delta is the number of bytes between the start of the source block and the start of the target block. In other words, a block starting at offset X (on-disk) can be moved to a starting offset Y if the absolute value of X minus Y is an even multiple of 16 KB. So, assuming 4-KB clusters, a move from cluster 3 to cluster 27 will be optimized, but a move from cluster 18 to cluster 24 will not. Note that mod(3,4) = 3 = mod(27,4). Mod 4 is chosen because four clusters at 4 KB each is equivalent to 16 KB. Therefore, a volume formatted to a 16-KB cluster size will result in all move files being optimized."

Limitations

  • DiskTune can not move files which an administrator does not have access to. These are files that can typically only be accessed by the 'system' account.
  • DiskTune can not access files for which Windows bypasses 'normal' file system access (raw access) such as the pagefile and the hybernation file.
  • Under circumstances DiskTune May Be unable to access 'in use' files (it can most of the time however). These can include logfiles constantly being written to.
  • An 'open bug' makes that DiskTune misses directories for which the name starts with "." (example: "\.cache\").

Notes and references