iXBT Labs - Computer Hardware in Detail

Platform

Video

Multimedia

Mobile

Other

FAT and NTFS performance



This article is devoted to file systems, used in Windows95/98/ME and WindowsNT/2000. There are no any graphs as they are mostly depend on the definite system used. We will just describe the general tendency of the file systems performance. And then, you are to judge what is better for you. We will take a look at three systems - FAT (further FAT16), FAT32 and NTFS.

The article consists of many parts, each describes a definite issue connected with performance. At the end I will collect everything together and evaluate what would be said above.

1. Theory

The most fundamental feature influencing the performance of any file system is the structure of data organization and storage. So, in this part we will analyze the aspect of physical working with structures and data of the file systems.

Any file system stores data in sectors (it's the smallest part of the useful information of the disc). The sector's size is 512 bytes. All the file systems read and transfer the information without any data treatment to applications. Of cause, if the file is encoded, the system, first, has to decode data (it can be i.e. in NTFS). In other cases data reading and recording is implemented with the equal speed.

Now let's take a close look at the major processes for file access:

File data search

The search of the information on the data storage differs in different file systems (notice, that it does not mean the file data access).

What this parameter influences: access speed to the required fragment in the file. Any kind of work with huge files and documents in case their size is more then a megabyte. The parameter shows how the fragmentation influences the system performance.

  • NTFS is capable to find the fragment quite fast, since the whole information is kept in several compact records. If a file is fragmented quite strongly, then, the HDD head has to implement many movements. It slows the process down.
  • FAT32, since it is itself big enough, will have difficulty, if the fragments of the file are spread out on the disc. The matter is that the FAT (File Allocation Table) represents some kind of a mini disc, where each its cluster is located. To access the fragment of the file in the system of FAT16 and FAT32 it's necessary to apply to the corresponding part of the FAT. If the file consists of 3 parts which are located in the beginning of the disc, in the middle and in the end, then in the FAT it's necessary to apply to the beginning, to the middle and to the end as well. In FAT16 with the maximum size of 128 KBytes it won't cause any problems - the whole FAT is stored in the memory, or read at one time and buffered. FAT32 has much bigger size. And the HDD head must commit as many movements as there are fragments groups in the different parts of the disk. It tremendously slows the process.

Conclusion: The absolute leader is FAT16, it won't make the system execute extra operations for this purpose. Then goes NTFS - the system doesn't require reading of the unnecessary information, at least if the file has not so many fragments. FAT32 works much slower, if the file is spread out on the disc. The operation with large files is quite complicated in FAT32. It should be noted that, if the file is fragmented, but all the fragments are close to each other, FAT32 doesn't have so much difficulty, since the physical access to the FAT would be compact and buffered as well.

Free space search

This operation is executed in case of file creating or copying on another disk. Space search for physical file data depends on how the information on the recorded disc parts is stored.

What this parameter influences: file creation speed (especially for big files). Creation or saving of the big multimedia files (i.e., .wav) in the real time mode, copying of huge amount of information etc. The parameter shows how fast the system is able to find the place for new data and what operation it must implement.

  • To determine whether the cluster is free or not, the FAT systems must check the FAT recording that corresponds to this cluster. The size of one recording is 16 and 32 bits for FAT16 and FAT32 correspondingly. Sometimes, to find free place it might be necessary to look through the whole FAT. So, the system has to resort to various tricks to prevent it.
  • In NTFS one cluster corresponds to 1 bit. So, the system has to spend much less time to find free space, than in FAT and FAT32.

Conclusion: NTFS has the most effective searching system. We have noticed, that there are different optimization methods for FAT16 and FAT32 to reach the higher speed. Though in DOS you won't get it.

Operations with folders and files

The speed of these operations depends on the principles of organization of data on different files, and on the directory structure.

What this parameter influences: speed of operations with files (including the access speed).

  • FAT16 and FAT32 have quite compact directories. The structure of long names storage in the FAT is not so effective, but it's efficient. The operations with directories are not so slow, since they are not fragmented. Although this speed can be lower because of a large number of files in the directories. The system of data storage is designed as a line array. And to find the required file, it's necessary to look through the half of the all files in this folder.
  • NTFS uses a more effective addressing method, that is a binary tree. This organization allows working effectively with directories of any size. However, the NTFS directories are less compact than that of FAT. It's connected with the size of one directory recording. This causes a fragmentation of the directories in NTFS. If in FAT the typical directory takes only one cluster, in NTFS it takes much more, and this leads to the fragmentation.

Conclusion: In theory, the structure of directories in NTFS is more effective. NTFS performance is higher if one directory contains thousands files. In this case the operating speed in NTFS is tens times higher than that of FAT and FAT32.

2. Practice

Unfortunately, the practice is not accord with the theory. In practice, NTFS doesn't have such an advantage. What else influences the FS performance? Below we will consider these factors.

2.1. RAM size (caching)

A lot of data in the modern FS are cached and buffered in PC's RAM, this allows to avoid unnecessary physical operations of data reading from the disc. The following kinds of information are to be kept in the cache for high system performance:

  • The data on the physical location of all open files. It allows to apply to system files and libraries without reading service information from the disc. It concerns also the files being executed at that moment (.exe, .dll), as well as a registry, virtual memory, .ini and the files of documents and applications.
  • The directories that used most of all. For example, start menu.
  • The data on the free disc space.

In case these data are not in the RAM, it might take a lot of time to achieve them. What must be the size of the RAM to work effectively with the FAT or NTFS?

  • FAT16 contains a few data charged with the organization of the file system. The service space of FAT16 takes only 128 KBytes! It is charged with file fragments search and free space search on the disc. The directories of the FAT are also very compact. The memory size for effective work with FAT can constitute up to megabytes.
  • FAT 32 differs from FAT16 in size. On the discs of 5-10 GBytes the FAT can take up to several megabytes. And it's difficult to cache so much space. The parts of the FAT with information on working files location are cached.
  • NTFS has more strict requirements for the memory. The caching is difficult to implement in the following case: the big size of directories (up to 20-30 MBytes), the map of the free disc space (hundreds KBytes), MFT records for the executed files (1 KBytes per file). Fortunately, in NTFS with the disc size increasing, the fixed areas remain the same. The amount of data do not depends on the disc size; the directories influence the amount of data to cache. Nevertheless, it's quite enough for the minimum amount of data for caching to reach 5-8 MBytes.

Unfortunately, NTFS loses its theoretical operating speed due to the insufficient caching. On the systems with less than 64 MBytes of the memory, NTFS is not able to be faster than FAT16 or FAT32.

The typical memory size of 64 MBytes does not leave a chance to organize effective work in NTFS. On the discs up to 10 GBytes FAT32 works faster. However, there are implemented much more fragmentation with FAT32 than with NTFS. But if you make a disc fragmentation sometimes, it's still better to use FAT32. However, many prefers NTFS thanks to its other advantages.

The systems with more than 64 MBytes memory will cache absolutely everything, what is necessary for system working. And for these systems NTFS is more efficient.

2.2. HDD performance

Do the physical parameters of HDD influence the FS performance? Yes, a little. We can define the following physical parameters:

  • Random seek time. To access the system areas the HDD heads have to make more movements in NTFS than in FAT16 and FAT32. NTFS has much more fragmentation of directories. That's why we won't recommend you to use it on the old discs, since the long time of the track search makes the performance worse.
  • Bus Mastering. It is a special mode of driver and controller work, when the data exchange with a disc is implemented without a processor. NTFS works quite effectively here.
  • Caching of reading and writing in the HDD (HDD buffer size is up to 2 MBytes). This factor is used for the systems based on FAT.

Conclusion: NTFS suffers from slow discs much more than FAT.

2.3. Cluster's size

In FAT32 and NTFS when formatting you can set this parameter arbitrarily. The more the size is, the better is the performance (especially for FAT32).

  • The typical cluster's size for NTFS constitutes 4 KBytes. But with the cluster of a big size, there isn't any more an opportunity of compression of separate files. So, the optimal size is 16 KBytes. The further increase is not effective. If you want to increase the performance of NTFS (though you will lose possibility of compression), make your disc formatted with the cluster's size more than 4 KBytes.
  • FAT32 performance may increase by making the cluster's size bigger. For example, when the cluster is enlarged 2 times, the FAT gets 2 times smaller. This causes the performance increase, since the amount of system data get smaller, and therefore, it will take less time to find the data on the location of files. Besides, the RAM size for buffering will get smaller. So, the cluster's size increase to 16 KBytes (especially for HDDs more than 10 GBytes) is a rational way.

2.4. Other considerations

NTFS is a quite complicated system. That's why there are other factors influencing its performance:

  • The NTFS disc was achieved by a conversion of FAT16/FAT32 partition. (the command convert). This procedure will lead to high fragmentation of the NTFS system area. You should avoid conversion of other system in NTFS.
  • The active work with the disc of 80% - 90% occupied space worsens the performance of NTFS. In this case the fragmentation of files and service areas will be rising too quickly. There you should use FAT32.

3. Conclusions

FAT highs:

  • The effective work requires few of RAM.
  • Fast work with small and average directories.
  • The disc implements less movements of the heads (as compared with NTFS).
  • The effective work on slow discs.

FAT lows:

  • Quick performance decrease with the fragmentation going up (only for FAT32).
  • Difficulty in access to big files (more than 10% of the disc space).
  • Very slow work with directories containing huge amount of files.

NTFS highs:

  • Fragmentation does not influence the system performance (the work might became worse as far as data access is concerned).
  • Complicity of the structure of directories and the number of files do not affect the performance.
  • Quick access to the required file fragment (i.e. editing of big .wav files).
  • Very quick access to small files (several hundreds bytes) - the whole file is located in the same place as the system data (MFT recording).

NTFS lows:

  • The memory size mustn't be less than 64 MBytes.
  • Slow discs and controllers without Bus Mastering slows the system performance down tremendously.
  • The work with average-size directories is quite difficult, since they are fragmented.
  • The disc working for a long time with 80% - 90% of its space occupied shows low performance.

Remember, that the RAM size is the chief factor influencing the system performance. In case of 64-96 MBytes both NTFS and FAT are equal. If you are using only an OS and simplest applications, FAT32 might turn to be better on the PCs with bigger size of memory.

NTFS is still a system for future. On the typical game system it won't show the brilliant operating speed. The main advantage is that the complicity of directory structure, disc size, fragmentation do not have an influence on the system performance. In FAT, on the contrary, all these factors slow the operating speed down.

FAT 32 is the better choice for simple users' systems. As for graphics workstations, office computers with thousands of documents and moreover file-servers, NTFS shows higher performance.


Write a comment below. No registration needed!


Article navigation:



blog comments powered by Disqus

  Most Popular Reviews More    RSS  

AMD Phenom II X4 955, Phenom II X4 960T, Phenom II X6 1075T, and Intel Pentium G2120, Core i3-3220, Core i5-3330 Processors

Comparing old, cheap solutions from AMD with new, budget offerings from Intel.
February 1, 2013 · Processor Roundups

Inno3D GeForce GTX 670 iChill, Inno3D GeForce GTX 660 Ti Graphics Cards

A couple of mid-range adapters with original cooling systems.
January 30, 2013 · Video cards: NVIDIA GPUs

Creative Sound Blaster X-Fi Surround 5.1

An external X-Fi solution in tests.
September 9, 2008 · Sound Cards

AMD FX-8350 Processor

The first worthwhile Piledriver CPU.
September 11, 2012 · Processors: AMD

Consumed Power, Energy Consumption: Ivy Bridge vs. Sandy Bridge

Trying out the new method.
September 18, 2012 · Processors: Intel
  Latest Reviews More    RSS  

i3DSpeed, September 2013

Retested all graphics cards with the new drivers.
Oct 18, 2013 · 3Digests

i3DSpeed, August 2013

Added new benchmarks: BioShock Infinite and Metro: Last Light.
Sep 06, 2013 · 3Digests

i3DSpeed, July 2013

Added the test results of NVIDIA GeForce GTX 760 and AMD Radeon HD 7730.
Aug 05, 2013 · 3Digests

Gainward GeForce GTX 650 Ti BOOST 2GB Golden Sample Graphics Card

An excellent hybrid of GeForce GTX 650 Ti and GeForce GTX 660.
Jun 24, 2013 · Video cards: NVIDIA GPUs

i3DSpeed, May 2013

Added the test results of NVIDIA GeForce GTX 770/780.
Jun 03, 2013 · 3Digests
  Latest News More    RSS  

Platform  ·  Video  ·  Multimedia  ·  Mobile  ·  Other  ||  About us & Privacy policy  ·  Twitter  ·  Facebook


Copyright © Byrds Research & Publishing, Ltd., 1997–2011. All rights reserved.