[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 17763
  • Last Modified:


I am running windows XP professional. The problem is there is an application which does a lot of file I/O (nearly process 1 million files ). Initially it runs ok but with the passage time lets say after 10 hours it slows down. We discovered that within the first few hours it processes 100,000 files after that the average processing goes down to 30,000 files in an hour.

We looked at the MFT percent in use and that was 99%. REAL PATHETIC. ABOVE ALL the total MFT size was only 190 MB out of 106 GB available free size.

Clearly the MFT size is the problem. Is there a way I can increase the MFT size make it like 20 % of the total disk space. Is this parameter in our control or it is contolled by the OS?

thanks in advance.
4 Solutions
By default, 12.5% of the disk is reserved for MFT use -- so this should NOT be a bottleneck here (remember that many small files can reside entirely within the MFT entry;  so that's not as bad as it sounds).   It's more likely that your problem is a fragmented MFT than running out of space.   Diskeeper Pro is one of the few defragmenters that specifically target defragmentation of the MFT, which may significantly improve the performance you're seeing.   I'd download the trial version and give it a try.   If it does the trick, the cost is pretty nominal.

... additional note:  Before XP  (in NT & 2000) you could adjust a registry parameter to control how large of a reserved "zone" was kept for the MFT expansion ==> this was a reserved area that allowed the MFT to expand without causing MFT fragmentation.

Here's the Microsoft KB article that describes that:  http://support.microsoft.com/default.aspx?scid=kb;en-us;174619#appliesto

Note two things, however:  (a)  Even if that key was adjusted upward, the reserved area would only apply to any FUTURE NTFS formatted partitions (i.e. it doesn't change what's already been formatted); and (b)  most importantly, the article does not apply to XP - so I assume that key would have no effect with XP.

I'm not aware of -- nor could I find -- any XP key that does the same thing.
rxrazaAuthor Commented:
In my case the MFT size is 190KB which is not close 12.5 %. Does the MFT size grow automatically if that is the case then when does it feel like growing ?

My concern here is that % MFT in use which is 99 %
NEW Veeam Agent for Microsoft Windows

Backup and recover physical and cloud-based servers and workstations, as well as endpoint devices that belong to remote users. Avoid downtime and data loss quickly and easily for Windows-based physical or public cloud-based workloads!

It grows automatically as necessary -- up to 12.5% of the disk.   But, like any file structure, it can become fragmented; and fragmentation decreases performance.  Unfortunately, Microsoft's defragmenter does NOT defragment the MFT.

Although the KB article I linked to above does not mention XP, it would be interesting to see if you created that value (and set it to 4 for max reserved space); what kind of performance you get on a newly formatted NTFS volume.   If you have enough disk space to try it, you might want to give it a shot.

In addition to Diskeeper Pro that I mentioned above (http://www.diskeeper.com/diskeeper/professional/professional.asp?pe=3), Raxco's PerfectDisk also defragments the MFT (http://www.raxco.com/products/perfectdisk2k/)

... Here's one more defragger that also defrags the MFT:  http://www.oo-software.com/en/products/oodefrag/

Just to expand upon garycase's comment regarding Diskeeper Pro ... the latest version is capable of increasing the size of the MFT also via Diskeeper Configuration Properties/FragShield (Paging File and MFT Settings)/Edit - from there Diskeeper will recomend the most appropriate values.


rxrazaAuthor Commented:
on a newly formatted volume we get around 100,000 files per hour.

So when it gets filled then it should expand itself automatically. Why in my case it is not expanding for the past two or three hours the MFT in use is set to 99% and I do not think that it is expanding
It should be expanding -- but once it starts to expand I would think it will always be very close to full, so I'm not surprised at the 99% value.

Just to see if there's any impact (I'm skeptical since the KB article doesn't mention XP), try adding the "NtfsMftZoneReservation" value and set it to a value of 4;  then reboot; and then format a new volume with NTFS and see if that impacts your performance.

Here's the details from the KB article:

1. Run Registry Editor (Regedt32.exe), and go to the following subkey:
2. From the Edit menu, click Add Value.
3. Type the following information in the dialog box:
Value Name: NtfsMftZoneReservation
Data Type : REG_DWORD
Data : (valid range is 1-4)  
The MFT % in use figure is misleading as it represents the % of the MFT that is allocated that is full. ie, you have an MFT size of 109MB which is 99% of the current MFT allocation. It would allocated another chunk to this as it needs it and this will increase the MFT size dynamically. Next time you may see 126MB size and 89% full.

Hope this helps
If you want to change the MFT size to max, download this:
rxrazaAuthor Commented:
Well, thanks guys for the informative post. Actually the problem was not related to the MFT it was some dead locking issues at the database end.


the registry key works under XP as well.

I am going to split the points.


Featured Post

Fill in the form and get your FREE NFR key NOW!

Veeam is happy to provide a FREE NFR server license to certified engineers, trainers, and bloggers.  It allows for the non‑production use of Veeam Agent for Microsoft Windows. This license is valid for five workstations and two servers.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now