Optimize/Improve NTFS Performance
Posted: March 6th, 2004, 1:08 am
NTFS is a great filesystem, but its feature-set comes at a slight cost in performance. You can negate this a little with the following tips:
* By default NTFS will automatically update timestamps whenver a directory is traversed. This isn't a necessary feature, and it slows down large volumes.
Disable it by pointing regedit to:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem and set 'DisableNTFSLastAccessUpdate' to 1.
* NTFS uses disparate master file control tables to store filesystem information about your drives. Over time these core MFT files grow and become fragmented, slowing down all accesses to the drive. By setting aside a little space, MFT's can grow without becoming fragmented. In the same key where you disabled the last access feature creat a new DWORD value called 'NtfsMftZoneReservation' and set it to 2.
1. Disable creation of short names. By default, NTFS generates the style of file name that consists of eight characters, followed by a period and a three-character extension for compatibility with MS-DOS and Microsoft® Windows® 3.x clients. If you are not supporting these types of clients, you can turn off this setting by changing the default value of the NtfsDisable8dot3NameCreation registry entry (in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Filesystem) to 1.
2. Disable last access update. By default NTFS updates the date and time stamp of the last access on directories whenever it traverses the directory. For a large NTFS volume, this update process can slow performance. To disable automatic updating, change the value of the NtfsDisableLastAccessUpdate registry entry (in HKEY_LOCAL_MACHINE\SYSTEM\CurrentContolSet\Control\Filesystem) to 1. If the entry is not already present in the registry, add it before setting the value. (Add it as a REG_DWORD)
3. Reserve appropriate space for the master file table. Add the NtfsMftZoneReservation entry to the registry as a REG_DWORD in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem. When you add this entry to the registry, the system reserves space on the volume for the master file table. Reserving space in this manner allows the master file table to grow optimally. If your NTFS volumes generally contain relatively few files that are typically large, set value of this registry entry to 1 (the default). Typically you can use a value of 2 or 3 for moderate numbers of files, and 4 (the maximum) if your volumes tend to contain a relatively large number of files. However, be sure to test any settings greater than 2 because these higher values cause the system to reserve a much larger portion of the disk for the master file table.
* By default NTFS will automatically update timestamps whenver a directory is traversed. This isn't a necessary feature, and it slows down large volumes.
Disable it by pointing regedit to:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem and set 'DisableNTFSLastAccessUpdate' to 1.
* NTFS uses disparate master file control tables to store filesystem information about your drives. Over time these core MFT files grow and become fragmented, slowing down all accesses to the drive. By setting aside a little space, MFT's can grow without becoming fragmented. In the same key where you disabled the last access feature creat a new DWORD value called 'NtfsMftZoneReservation' and set it to 2.
1. Disable creation of short names. By default, NTFS generates the style of file name that consists of eight characters, followed by a period and a three-character extension for compatibility with MS-DOS and Microsoft® Windows® 3.x clients. If you are not supporting these types of clients, you can turn off this setting by changing the default value of the NtfsDisable8dot3NameCreation registry entry (in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Filesystem) to 1.
2. Disable last access update. By default NTFS updates the date and time stamp of the last access on directories whenever it traverses the directory. For a large NTFS volume, this update process can slow performance. To disable automatic updating, change the value of the NtfsDisableLastAccessUpdate registry entry (in HKEY_LOCAL_MACHINE\SYSTEM\CurrentContolSet\Control\Filesystem) to 1. If the entry is not already present in the registry, add it before setting the value. (Add it as a REG_DWORD)
3. Reserve appropriate space for the master file table. Add the NtfsMftZoneReservation entry to the registry as a REG_DWORD in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem. When you add this entry to the registry, the system reserves space on the volume for the master file table. Reserving space in this manner allows the master file table to grow optimally. If your NTFS volumes generally contain relatively few files that are typically large, set value of this registry entry to 1 (the default). Typically you can use a value of 2 or 3 for moderate numbers of files, and 4 (the maximum) if your volumes tend to contain a relatively large number of files. However, be sure to test any settings greater than 2 because these higher values cause the system to reserve a much larger portion of the disk for the master file table.