Performance FAT and NTFS
This article assesses the performance of file
systems used in operating systems Windows95/98/ME and WindowsNT/2000. Article
does not contain schedules and test results, as these results are too heavily
dependent on the case, testing methods and specific systems, and have little
connection with reality. In this paper describes the overall trends and
considerations related to the performance of file systems. After reading the
material, you get information for reflection and will be able to draw
conclusions, to understand what system will be faster in your circumstances, and
why. Perhaps some facts can help you to optimize the performance of their
vehicles in terms of file systems, catch any decisions that will increase the
speed of the entire computer. The review mentions three-FAT system (the FAT16),
FAT32 and NTFS, as the main issue before the Windows2000 users is a choice
between these options. I send apologies to users of other file systems, but the
problem of choosing between the two, apparently quite equivalent, options
acutely now only available for Windows2000. I hope, however, expressed concerns
that strike you as curious, and you will be able to come to some conclusions and
the system with which you are working. This article consists of many parts, each
of which focuses on a single issue of speed. Many of the sections in a field are
closely intertwined. Nevertheless, it does not transform the art of gruel, in
the appropriate section, I will only write about that is relevant to the
discussion at the moment so, and nothing more. If you have not found any
important facts in the text-not hurry to wonder : most likely you will meet them
later. You also do not make any hasty conclusions about the disadvantages and
advantages of a system, as well as the contradictions and pitfalls of these
considerations very, very much. In the end, I will try to collect everything
that can be said about the performance of the system in real-world conditions.
1. The theory most fundamental properties of a file system, affecting the
performance of disk-structure of the organization and storage of information
that is how, indeed, turned himself filesystem. The first section is an attempt
analysis of this aspect of work, that is physical work with the data structures
and file system. Theoretical considerations, in principle, could miss those who
are interested only in the practical aspects of performance file systems can
apply immediately to the second part of the article. To begin, I would like to
note that any file system in one way or another store files. Access to data
files is a major and integral part of the file system, and therefore, you must
first say a word about it. Any file system stores data files-some of the sectors
that are being used equipment and the driver, as the smallest unit of useful
information drive. The sector in the vast majority of today's systems is 512
bytes, and all file systems to read the information and pass it without any
processing applications. Were there any exceptions? Virtually none. If the file
is stored in compressed or encrypted form as possible, for example, NTFS, then,
of course, the restoration or interpretation of information and resources spent
time processor. In other cases, reading and writing of data file is the same
speed, what file system you are used to. See the fundamental processes of the
system to access files : Search data file to determine the areas in which the
disk is kept a bit of the file, a process which is fundamentally different
expression in different file systems. Keep in mind that this is only seeking
information on the location of the file-access to the data, fragmented or not,
there is no longer seen as the process the same for all systems. These are the "extra
" activities to be carried out before the system access to real data files. At
that affect this option : to speed navigation file (arbitrarily block access to
the file). Any work with large data files and documents if their size, and more
than a few megabytes. This parameter shows how much file system itself suffers
from the fragmentation of files. * NTFS can provide quick search fragments,
since all the information is stored in several very compact entries (typical
size of a few kilobytes). If the file is highly fragmented (contains many
fragments), NTFS have to use a lot, which often lead to store them in different
locations. The extra traffic heads in search of the data, in this case, lead to
a severe slowdown in the process of finding data on the location of the file. *
FAT32, because of the large area of the table itself will be crippled if the
file fragments scattered all over the disk. In fact, that the FAT (file
Allocation Table, file Allocation Table) is a mini-disk image, which includes
each cluster. To access a piece of the file system FAT16 and FAT32 had to be a
part of the FAT. If the file, for example, is in three pieces-at the beginning
of the drive in mid - and late-in the FAT system, we will have to turn to a bit
of FAT in its beginning, middle and end. In FAT16 system, where the maximum size
of the FAT is 128 KB, it is no problem, the whole area FAT simply stored in
memory or read from disk in a single pass and buffered. FAT32, on the other hand,
is typical of hundreds of kilobytes of FAT, and the big drive even a few
megabytes. If the file is located in different parts of the drive system is
forced to perform hard disk head movement as many times as groups of fragments
in different areas is file, which is very, very slow process of finding
fragments of a file. Conclusion : The absolute leader, FAT16, it will not make
the system to make extra disc operation for the purpose. Then comes NTFS, the
system also does not require reading unnecessary information, at least so far,
is a reasonable number of file fragments. FAT32 hard until reading extra
hundreds of kilobytes of FAT, if the file dispersed to different areas of the
disk. Working with the impressive size of the files on FAT32, in any case, is
hard to understand where on the disk is a fragment of a file is to be reviewed
the sequence clusters file from the beginning, treat for every one cluster (every
4 MB file in a typical system). It is noteworthy that when the file is
fragmented, but is compact heap of debris-FAT32 is not experiencing great
difficulties, as well as physical access to the area FAT will also compact and
buferizovan. Search space This operation is in the event that the file be
created from scratch or copied to disk. Find a place in the physical data file
depends on how information is stored on the disk of employees. At that affect
this option : to speed the creation of the files, especially large ones. Saving
or in real time large multimedia files (. Wav, for example), copy large amounts
of information, etc. This parameter shows how quickly to find a place to record
new data on the disk and what operations it will have to do so. * To ascertain
whether the cluster is free or not, based on the FAT system should see a record
FAT, with this cluster. The size of a FAT16 record is 16 bits, the same record
FAT32-32 bits. To find the disk space may be required to view almost the entire
FAT is 128 MB (maximum) for FAT16 and to a few megabytes (!) In FAT32. In order
not to make the search space of a catastrophe (for FAT32), the operating system
has to go to various ruses. * NTFS is a bitmap free, one cluster with one bit.
To find the disk space is measured in tens of times smaller than the FAT and
FAT32 system. Conclusion : NTFS is the most efficient system of free space. It
is noteworthy that the act "head on" with FAT16 or FAT32 very slowly, so in
order to find space in these systems use different methods of optimization, and
as a result, there is an acceptable speed. (What is certain-the search space
when working in DOS to FAT32-catastrophic to speed the process, because no
optimization is not possible without the support of at least as serious
operating system). Working with directories and files, each file system is the
basic operation of the file-access, deleting, creating, moving, etc. The speed
of these operations depends on the principles of data storage on a single file
and directory structure of the device. At that affect this option : the speed of
any dealings with the file, including the speed of any operation of the file,
especially in places with a large number of files (thousands). * FAT16 and FAT32
are very compact directories size of each record which very small. Moreover,
because of past historical storage long file names (more than 11 characters),
the FAT file system is not very efficient and seemingly failed, but very
economical structure of these very long file names. Using FAT directory is fast
enough, as the vast majority of cases folder (directory data file) and is not
fragmented disk in one place. The only problem, which could significantly reduce
the rate at which catalog FAT-many files in a single directory (about a thousand
or more). Storage area network-linear array is not able to effectively search
files in a directory, and to find the file must handle large amounts of data (an
average of half a file folder). * NTFS uses a much more effective way of
addressing - binary tree, the principle of which can be found in another article
(NTFS file System). The organization provides work effectively with directories
of any size-NTFS directories nor increase in the number of files in one
directory and to the tens of thousands. It should be noted, however, that the
directory NTFS is much less tightly structured than FAT directory is linked to
the much larger (several times) as a record catalogue. This fact leads to what
directories to NTFS that in the vast majority of cases highly fragmented. The
size of a typical directory of e FAT- fit in one cluster, while hundreds of
files (or even less) in the directory to NTFS already led to the size of the
file directory, exceeding the typical size of one cluster. This, in turn, almost
guarantees fragmentation file directory, which, unfortunately, are often negated
the benefits of a much more effective organization of the data. Conclusion : a
directory structure on the theory NTFS much better, but the amount of inventory
in the hundreds of files is almost irrelevant. Fragmentation NTFS directories,
but confidence is already at this level directory. For small and medium-sized
directories NTFS, as this is not sad is, in practice, less speed. Advantages
NTFS directories are real and true only if one catalog has thousands of files-in
this case, speed up fragmentation of the catalogue and difficulties with the
physical handling of data (for the first time further cache directory). Hard
work with directories containing thousands of files and more, is literally on
NTFS is several times faster, and sometimes gains in speed compared to FAT and
FAT32 dozens of times. 2. Practice Unfortunately, as is often the case in all
kinds of computer issues, the practice is not well with theory. NTFS with the
seemingly obvious advantages in the show was less exciting results, as might be
expected. What other considerations affect the performance file system? Each of
the issues discussed further contributes to the final performance. Keep in mind,
however, that actual performance is the result of all the factors at once, it is
in this part of the article should not jump to hasty conclusions. 2.1. The
amount of memory (cache) Too many of today's file systems or buferiziruyutsya
cached in the computer's memory, thus avoiding unnecessary physical operations
reading data from disk. For the normal (high) of the system must be kept in the
cache following types of information : data on the physical location of all open
files. This is, after all, would turn to the system files and libraries, access
to which is literally constantly, without reading performance (not related to
the files themselves), information from the disk. The same applies to those
files, which are executed at the time - that is, to perform modules (. exe and.
dll) of active processes in the system. This category also includes the files,
which are the work of (primarily inventory and virtual memory, different. Ini
files, and document files and applications). * The most frequently used folders.
These include desktop, menu, "Flight", system catalogs, directories, Internet
cache, and so forth. * Data on free disk space, or the information that will
find a place to keep new data on the disk. If that base of information is not
available directly from RAM, the system will have to perform many unnecessary
operations even before it starts working with real data. Are these amounts in
different file systems? Or, the issue in more practical terms, how much free RAM
you need to have in order to effectively work with a file system? * FAT16 is
very little data on those responsible for the file system. Of the office area
can be identified himself only area FAT, which may not exceed 128 MB (!) - This
area is responsible for search and fragments of files, and search for free space
volume. Catalogues FAT system is also very compact. The total memory required
for an efficient work with FAT happened, can range from hundreds of kilobytes to
megabayta- another subject of great size and the number of directories that are
working. * FAT32 different from FAT16, but it is an area FAT may have larger
sizes. At volumes of 5 to 10 GB of FAT hold of a few megabytes, and this is a
very sizeable, reliable cache that is not possible. Nevertheless, state FAT, but
rather the fragments, which are responsible for the location of the working
files, in the vast majority of systems are in memory of the machine - is spent
on the order of several megabytes of RAM. * NTFS, unfortunately, has a much
greater memory requirements necessary for the operation of the system. First,
caching very difficult large directories. Size alone directories, which are
actively working system can routinely reach several tens of megabytes or even
megabytes! Add to this the need to cache the card free volumes (hundreds of MB)
and MFT records of the files, with which the business (in a typical system-on 1
KB per file). Fortunately, NTFS is a good system for storing data, which do not
result in any increase in the flat areas with increased disk. The amount of data
that the system operates on the basis of NTFS, little dependent on the volume
and substantive contribution to the volume of data to be cached, making catalogs.
Nevertheless, this is quite sufficient to only the minimum amount of data
required for basic caching of NTFS, got to 5 - 8 MB. Unfortunately, we can say
with confidence : NTFS lose huge amounts of their theoretical performance to a
lack of caching. On systems with less than 64 MB of memory, NTFS can not be
quickly FAT16 or FAT32. The only exception to this rule-FAT32 disks with dozens
of GB (I would personally seriously feared FAT32 disks of over, say, 30 GB). In
other cases, a system with less than 64 megabits of memory just to work with
FAT32 faster. Typical is the memory of 64 MB, unfortunately, also not possible
to effectively work with NTFS. Small and medium-sized disk (up to 10 GB) in the
typical FAT32 system will work, perhaps a bit faster. The only thing that could
be said about the performance of systems with RAM-system working with FAT32,
will be much stronger suffer from fragmentation, as the system NTFS. But even if
occasionally hard drives, the FAT32, in terms of performance, is the preferred
option. Many people, however, opt for such a system NTFS, simply because of the
fact that it gives some very important benefits, while a typical performance
loss is not very high. Systems with more than 64 megabytes, and especially with
128 megabytes or more of memory, can confidently cache is all that is necessary
for systems, and it is on such computers NTFS is likely to show higher
performance because of improved data organization. 2.2. Performance Drive Do
physical hard disk parameters on the performance of the file system? Yes, but
not much, but affected. These are the parameters of the physical disk, which can
have a different impact on different kinds of file systems : * Time random
access (random seek time). Unfortunately, access to the system on a typical
drive for more complex file system (NTFS) have to perform, on average, more
heads of the disk than in a simple system (FAT16 and FAT32). A far greater
fragmentation directories to the fragmentation of the system make it NTFS drives
much more susceptible to arbitrary speeds (accidental) on the disk. For this
reason, use of slow NTFS (old) drive is not recommended as a high (worst) search
paths is another plus for the FAT system. * A Bus Mastering. Bus Mastering-special
treatment of the driver and controller, the use of which exchange with CD made
without the participation of the processor. It is noteworthy that the late
caching NTFS can operate much more efficiently when there Bus Mastering, because
NTFS is a pending record much more data. Without Bus Mastering System now meet
infrequently (usually drives or controllers working in the mode or PIO3 PIO4),
and if you are working with such a disk is the most likely NTFS lose a couple of
points performance, especially when dealing modifying directory (for example,
Intensive work on the Internet, work with the Internet cache). * Caching as read
and write at the level of hard disks (HDD of a buffer from 128 KB to 1-2 MB in
modern expensive disk), a factor that will be more useful system based on FAT.
NTFS for reasons of reliability data storage system is a modification of the
flag "no cache entry, so NTFS weak performance depends on the ability of the
caching HDD. FAT systems, in contrast, will receive some of the cache plus
entries at the physical level. It should be noted that, generally speaking,
seriously take into account buffer size HDD in evaluating the performance of
different file systems is not. Summarizing the impact of speed and disk
controller to speed the system as a whole, one can say this : NTFS suffers from
a slow drive much stronger than FAT. 2.4. Cluster I would like to say a word on
the size of the cluster-parameter which file systems FAT32 and NTFS formatting
can be set almost at random. First, it must be said that most cluster size is
almost always a great performance. Cluster of NTFS volume, but have less impact
on performance than the cluster size to the FAT32 system. * A typical cluster
size for NTFS-4 KB. It is noteworthy that with the increased size of the cluster
off built into the file system to compress individual files, as well as standard
API stop working hard, or the overwhelming number defragmentatorov, including
built-in Windows 2000 will be unable to defragment the drive. SpeedDisk, however,
it can work without the use of the API. The best in terms of speed, at least for
the medium and large files, it (the Microsoft) 16 MB size. Increase the size of
further unwise because of spending too much on inefficient data storage and by
the tiny further increase performance. If you want to improve performance at the
cost of loss of NTFS compression-think about formatting disk cluster size, large
than 4 KB. But keep in mind that this will be a modest increase in speed, which
often is not even reduce the effectiveness of files on the disk. * Performance
FAT32 system, in contrast, can be significantly improved by increasing cluster
size. If NTFS little effect on the size and nature of the system area, the FAT
system, increasing cluster in half, we cut FAT area in the same twice. Recall
that in a typical system, FAT32 is very important for the performance area is a
few megabytes. Reduction of FAT several times a marked increase in performance
will, as the volume of system data file system-much shorter and less time spent
reading data on the location of files and the amount of RAM necessary to
buferizirovaniya this information. Typical of cluster systems FAT32 is also 4 KB,
and increase it to 8 or even 16 MB, especially for large (ten or more gigabytes)
of disk-a reasonable step. 2.3. Other considerations NTFS is a complex system,
so, unlike FAT16 and FAT32, there are other factors that can lead to a
significant slowdown of NTFS : * Disk NTFS received conversion section FAT16 or
FAT32 (team convert). The procedure in most cases is a difficult case for
performance, as well as the structure of the office of NTFS is likely to get
very fragmented. If possible, avoid converting other systems in NTFS, as this
would create a very bad drive, which will not even typical disk (the non), a
type Diskeeper- or built into Windows 2000. * Intensive work with the disk,
filled more than 80% - 90%, is a catastrophic event for the performance NTFS, as
well as the fragmentation of files and, most importantly, the field office will
be fantastic to grow rapidly. If your disk is used in such a mode-FAT32 is a
good choice under any other circumstances. 3. Conclusions In this final part of
"one line" collected key performance features of these three file systems. FAT-pros
: * To work requires little memory. * Quick work with small and medium-sized
directories. * Disk commits an average of fewer head movements (compared with
NTFS). * Effective at the slow disk. FAT-minuses : * catastrophic loss of
performance with increasing fragmentation, especially for large disks (only
FAT32). * Difficulties with random access to a large (say, 10% or more of disk
size) files. * Very slow work with the directory containing many files. NTFS-pros
: * file fragmentation had little effect on the file system itself, the work has
only a fragmented system in terms of access to the data files. * The complexity
of the directory structure and the number of files in one directory to neither
special performance constraints. * Quick access to arbitrary piece of a file (such
as editing large. wav files). * Very fast access to small files (several hundred
bytes), the entire file in the same location, and system data (MFT record). NTFS-minuses
: * Substantial demands on system memory (64 MB-absolute minimum, preferably
more). * The slow drives and controllers without Bus Mastering severely reduces
performance NTFS. * Job Directory-sized by the fact that they almost always
fragmented. * Disk, long employed in a full 80% to 90%, will be to show very
poor performance. I would like to emphasize once again that, in practice, the
major factor affecting the performance of the file system is, strangely enough,
the memory machine. Systems with 64-96 MB of memory-a point at which performance
NTFS and FAT32 roughly equivalent. Note also the complexity of the data on your
machine. If you do not use anything but the simplest applications and the
operating system - it may happen that FAT32 will show higher performance and the
machine with a large number of memory. NTFS system, which assumed for the future,
and this is the real future for the majority of today has, unfortunately, it may
not come. At this point NTFS ensures stable and indifferent to a number of
factors, but perhaps still low by typical "game" home-performance system. The
main advantage of NTFS in terms of speed is that the system insensitive
parameters such as directories complexity (the number of files in a directory),
the amount of disk fragmentation, etc. In the FAT system, on the other hand,
each of these factors lead to a substantial reduction in the speed of work. Only
highly complex systems, such as graphic stations, or simply to serious office
computers with thousands of documents, or even worse, for file servers, the
advantages of NTFS will be real gains speed, which is sometimes visible to the
naked eye. Users who do not have big drives slaughtered information, and not
using complex programs do not expect miracles from NTFS speed, in terms of
performance on simple home of a much better show FAT32.
|