You’re thinking of the MFT or Master File Table. By default 12.5% of your hard disk space is set aside for the MFT when an NTFS drive is formatted.
Become a Patron of Ask Leo! and go ad-free!
If the system later needs to make the MFT larger, it will. The problem is fragmentation. Chances are very high that if the MFT grows, then it will be fragmented. Apparently it’s also common that if you converted a drive from FAT to NTFS, the MFT is may be fragmented from the start. Unfortunately the defragger that is part of the operating system cannot defrag the MFT.
So is 12.5% enough? If not, how much is enough? Microsoft, in their support article How NTFS Reserves Space for its Master File Table (MFT) doesn’t give any guidelines, and suggests experimenting to determine the optimal setting for your system.
But I’ll make a wild approximation.
Your MFT needs are primarily a function of the number of files you’ll generate and the size of your NTFS partition. MFT entries range in size from 1 to 4k, so if we assume the 4k maximum then that 12.5% on a 60 gigabyte drive can hold entries for just under 2 million files.
There is a registry setting that can be changed such that all future reformats of NTFS drives will set aside more MFT space. The instructions for changing that setting are included in the Microsoft support article I referenced above.
By the way, if 12.5% seems like a lot of space to be dedicating to the MFT, it may not be as bad as you think. Small files, I’m guessing 2k or less in size (it varies), actually reside within their MFT entry. It’s only larger files that need any space outside the MFT.
So the bottom line: if you can, FORMAT, don’t convert, your drives to NTFS, and if you think you’ll need a larger MFT (and you probably don’t), change the registry setting before you format.
15 comments on “Can I adjust some master NTFS table size to handle large number of files better?”
Changing the reserve space for MFT DOES affect the current drive and has nothing to do with ‘future reformats’. Changing MFT reserve size does not affect the actual format of ANY volume present or future. It is a run time parameter and is wiped out in any reformat of the primary drive!
Read closer your support link to Microsoft. It can be confusing. As long as the drive is not too full, optimizing MFT reserve has great benefits. Using Diskeeper in conjunction with changing reserve is highly recommended.
Note that Dell computers we received were all delivered with 50% MFT reserve. We use many large files and reducing the MFT reserve to 12.5% saved these machines from being dog slow when they ‘filled up’ quickly.
How much MFT space is needed? My rule of thumb for estimating is ‘number of files times 4k divided by total drive size’. The result is the percent of drive space needed for MFT. As you note, the actual requirement will vary… but you have to start some place!
The values for the REG_DWORD registry setting are 1=12.5%, 2=25%, 3=37.5% and 4=50%. Always round up so that the MFT reserve is not too small.
Thanks for making your blog available.
Thanks for your comments Andrew. I suspect that the most difficult part of any rule of thumb, and yours is a fine one, is predicting how many files you’ll have.
can you tell me how to format window xp because i dont no how to format the window like delete the window
I’m sorry, arslan, I don’t understand your question.
I’m told that Windows XP sends reports to Microsoft about what files are on your comp, what you are accessing. Is this true? I’m kinda paranoid, so if I am accessing stuff, I don’t like the idea that everything I do is monitored. Is it true? And if so, can it be disabled?
To the best of my knowledge they do NOT. If any information is collected at all, it is done anonymously … meaning there’s no way to track it to the computer that it came from, and even then it’s only after they’ve explicitly asked for your permission to do so.
Everything you do it most certainly NOT monitored by Microsoft. Even they don’t have the computing power to monitor millions of Windows users.
My windows Installer is broken. I can’t install some programs. I am running Windows XP. If there’s a way to fix this without doing a PC Recovery, then i’d appreciate it.
First thing I would do is run the System File Checker. http://ask-leo.com/archives/000074.html
A few details here are wrong. The size of each MFT entry is fixed once the drive is formatted. Usually 512 or 1024 bytes, not 4K as suggested here. The actual size of both the entire MFT and each MFT entry is conveniently reported by chkdsk, so there is no need to guess for any actual disk in question.
The percentage reserved through the registry for MFT use is not truly reserved in the sense that the disk fills up more quickly, it is only reserved in the sense that as long as there is at least one free cluster outside the MFT zone, files that grow will grow into those files, not those within the xx% margin from the start of the MFT. This reduces the risk of a fragmented MFT as long as free disk space does not drop below those xx%.
If xx% is set larger than the free space, the risk of a fragmented MFT increases dramatically, even if the MFT is actually much smaller than xx%. If the MFT gets bigger than xx% the same happens. So try to put the xx% selection strictly between the actual MFT size reported by chkdsk and the percentage of free disk space.
Oh, and one of the other posters was correct: The xx% does not affect the format command and is not stored on disk. It doesn’t even survive a simple reboot, it just affects which free cluster will be used first by the code in NTFS.SYS, until the next time the registry entry is read by NTFS.SYS (which is at reboot and possibly other times).
I copied the contents of a drive to another so that I could format the first drive and now that I’ve done so and moved everything back, I’ve found that I have a large 4 gb (my size choice) MFT on both drives. How do I get rid of the one I don’t want?
actually I am wondering if there is any ‘rule of thumb’ for creating a larger MFT or determining if the default size is enough. I am working with a 4 terabyte raid volume that is currently 2,350 GB in use. The XP defragger reports a total MFT size of 304 MB with 311,559 record count.
Total files is 303,575 with average size of 8MB. The article appears to refer to more general drive space requirements for smaller drives (60 gigs). I have larger space requirements due to the specific applications in use and the data required.
Good article, saved my bacon!
The reference to Diskeeper was invaluable — I don’t like to manually intervene in the registry.
OK, only one thing I would add – the disk defragmenter provided in the system can defragment the MFT in later versions of NT4.0 and XP and later – this is in the Microsoft article referenced.
The article is interesting. You make no mention that Ultimate Defragger by Disktrix is capable of changing the MFT file and moving it. It can do the same with all of the other system files.
Hiberfil.sys on laptops is best moved out of the way to the middle of the disk.