Jump to content

Return to Piriform.com

Photo

Does Defraggler fragment Vista MFT?


  • Please log in to reply
9 replies to this topic

#1 OFFLINE Tot

Tot

    Member

  • Members
  • PipPip
  • 10 posts

Posted 01 November 2008 - 01:58 AM

Hi,

First I would like to say I have been using CCleaner, extensively, for a little under 1 year now; I really love the product and recommend it to all my acquaintances. Many thanks to all at Piriform, I think you are doing a brilliant job out there.

Yesterday I was trying to split my Windows Vista (Premium) active partition, and was unable to shrink successfully despite having used Windows defrag, removing ‘page file.sys’ and Shadow Storage etc. I was aware of Defraggler, thought I would give it a try, and so I downloaded the new Defraggler v1.04.098. Having Defraggled a number of times - full disk and individual files - I was still unable to free up sufficient space for my needs and was racking my brains trying to think of another solution. It was then that I happened to run 'defrag c: -a -v' and noticed 'Total MFT fragments = 14'; luckily I had saved a log from an automated defrag/backup job I had run earlier in the day - this log showed 'Total MFT fragments = 3'. I recovered my Vista partition to its original state and was able to shrink it successfully in the process; job done!

I AM 99% SURE THAT DEFRAGGLER CAUSED FRAGMENTATION OF MY VISTA MFT

I do not wish to denigrate Piriform in any way - I COULD BE WRONG - I think they are providing valuable free products which are as good as, if not better than, many paid for alternatives. I have taken the time to open this post because I appreciate the work Piriform are doing and in the hopes that it may benefit others.

Thanks again to Piriform; sorry I can’t offer any definitive proof that Defraggler did cause my MFT problem, and hope you will appreciate my reluctance to try to recreate problem again.

#2 OFFLINE davey

davey

    Keep it simple !

  • Members
  • PipPipPipPipPip
  • 2,235 posts
  • Gender:Male
  • Location:Maryland U.S.A.

Posted 01 November 2008 - 04:42 AM

Hi,
I AM 99% SURE THAT DEFRAGGLER CAUSED FRAGMENTATION OF MY VISTA MFT

Thanks again to Piriform; sorry I can’t offer any definitive proof that Defraggler did cause my MFT problem, and hope you will appreciate my reluctance to try to recreate problem again.

In my testing of Defraggler "whole disk" defrag on WinXP Pro SP3 I did notice that the MFT had been changed from 3 to 7 fragments. I also noticed in further testing that the MFT fragmentation went back to 3 fragments.
It never caused me any problems in normal processing. This testing was with v 1.03 .

Maybe some input from the developers would help clear up things.
:) davey

#3 OFFLINE Augeas

Augeas

    Moderator

  • Moderators
  • 2,964 posts
  • Gender:Not Telling
  • Location:Where Stuff is made, UK

Posted 01 November 2008 - 05:46 AM

I'm going to be vague on this bright but frosty morning. Does Defraggler actually defrag the MFT? Doesn't the MFT expand in contiguous extents in the 12.5% default allocation of the MFT Zone, so a defrag would be irrelevant? Unless your disk is absolutely jam-packed full of several millions of tiny files forcing an extension outside of the MFT Zone, or full of larger files that have been forced into the MFT Zone, then the MFT is quite happy looking after itself, isn't it? Can any software defrag the MFT on the hoof? Would any software want to?

(I am not a Defragger or any defragger user. Ha ha!)

#4 OFFLINE Tot

Tot

    Member

  • Members
  • PipPip
  • 10 posts

Posted 01 November 2008 - 08:15 AM

In my testing of Defraggler "whole disk" defrag on WinXP Pro SP3 I did notice that the MFT had been changed from 3 to 7 fragments. I also noticed in further testing that the MFT fragmentation went back to 3 fragments.
:) davey

Thanks Davey,
Reading your response prompted me to investigate further and I came across this MS article "Features of the Windows Vista hard disk defragmentation utility" which states "If the MFT is spread into multiple fragments, the defrag engine can combine the MFT fragments during defragmentation". Nice to know.

Full article @ http://support.microsoft.com/kb/942092

This confirms your findings and as I did like the look of Defraggler I will certainly reinstall (lost during HDD Restore) and use it in the future.

CLEARLY I JUMPED THE GUN IN OPENING THIS POST - MY APOLOGIES TO ALL CONCERNED

#5 OFFLINE davey

davey

    Keep it simple !

  • Members
  • PipPipPipPipPip
  • 2,235 posts
  • Gender:Male
  • Location:Maryland U.S.A.

Posted 08 November 2008 - 12:10 PM

CLEARLY I JUMPED THE GUN IN OPENING THIS POST - MY APOLOGIES TO ALL CONCERNED

Hi again Tot,
No need for an apology at all. You noticed something that did not seem normal and you reported it.
Your report confirmed something that I thought I noticed also but I was not too sure about what I saw.
I am glad that you reviewed that article on the Vista Defragmenter. I was going to refer it to you.

This news about the MFT is good news to me and will probably be good news for many WinXP users.
This makes me think that the Defraggler developers are making more improved defrag features available to WinXP users. similar to the Vista Defragmenter.

As far as I know there is only one third-party defragmenter that can defragment the MFT. I feel Defraggler may be at that point or very close. :P

Good luck,
:) davey

#6 OFFLINE kiti kutu

kiti kutu

    Member

  • Members
  • PipPip
  • 12 posts

Posted 03 January 2009 - 06:19 AM

Hi again Tot,
No need for an apology at all. You noticed something that did not seem normal and you reported it.
Your report confirmed something that I thought I noticed also but I was not too sure about what I saw.
I am glad that you reviewed that article on the Vista Defragmenter. I was going to refer it to you.

This news about the MFT is good news to me and will probably be good news for many WinXP users.
This makes me think that the Defraggler developers are making more improved defrag features available to WinXP users. similar to the Vista Defragmenter.

As far as I know there is only one third-party defragmenter that can defragment the MFT. I feel Defraggler may be at that point or very close. :P

Good luck,
:) davey



thanks Mate... I will try Deflager now :) In some PC of my client need deflager i thing.. So i just browse and find someting related with Deflager... I hope its not go wrong here :)


regards.

#7 OFFLINE deathadder

deathadder

    Member

  • Members
  • PipPip
  • 10 posts

Posted 05 January 2009 - 06:24 AM

The Microsoft/Diskeeper defrag engine in Windows defraggers from XP onwards have the power to defragment the MFT, but unfortunately, hardly any defragmenters actually utilize this functionality.

I know for a fact that Diskeeper 2007/2008/2009 versions (i.e the ones I've used extensively) defrag the MFT, and without a boot-time defrag either. They nearly completely defrag the MFT during the normal defrag itself. Not sure if other third party defraggers have this feature...

#8 OFFLINE davey

davey

    Keep it simple !

  • Members
  • PipPipPipPipPip
  • 2,235 posts
  • Gender:Male
  • Location:Maryland U.S.A.

Posted 05 January 2009 - 06:46 AM

Hi deathadder,
Have you noticed or learned what algorithm the Windows Disk Defragmenter uses in XP ? I had originally read that the MFT defragmenting was only being used in Vista as regards MS supplied. I recently used WDD to test this and my 7 fragment MFT stayed at 7 fragments. I would not be surprised that many of those MFT fragments on my PC are all deleted files. At one time I added many files and then later deleted them.
Any input would be appreciated. Thanks, :) davey
P.S. Diskeeper does as you say and I have heard rumors about another 3RD party defragger handling the MFT but I don't know for a fact.

#9 OFFLINE deathadder

deathadder

    Member

  • Members
  • PipPip
  • 10 posts

Posted 06 January 2009 - 06:53 AM

Hi deathadder,
Have you noticed or learned what algorithm the Windows Disk Defragmenter uses in XP ? I had originally read that the MFT defragmenting was only being used in Vista as regards MS supplied. I recently used WDD to test this and my 7 fragment MFT stayed at 7 fragments. I would not be surprised that many of those MFT fragments on my PC are all deleted files. At one time I added many files and then later deleted them.
Any input would be appreciated. Thanks, :) davey
P.S. Diskeeper does as you say and I have heard rumors about another 3RD party defragger handling the MFT but I don't know for a fact.


Hi Davey,
Apologies, but I have no intimate knowledge of the defrag APIs since I am not in the software field (I am in materials science :) ). I am just reporting what I read somewhere else. As far as I am aware, the defrag API for NTFS in XP was developed jointly by Microsoft and Diskeeper, and although the API does support MFT defragmentation, the XP defragger itself cannot defrag the MFT. Don't know why MS thought it unnecessary to include the feature...maybe due to licensing agreements when they borrowed the 'lite' diskeeper version many years ago.

But since almost all defraggers use the same defrag API, some can leverage it's power better than others and include MFT defrag and other enhancements. Diskeeper surely defrags the MFT, but I think other commercial defraggers should also be able to do the same. I haven't investigated the other ones deeply enough to check, since Diskeeper has worked nicely for me all this time.

Vista defragger does defrag the MFT, so that's an improvement over the XP WDD! BTW, yes you are right I think addition of a large number of files would probably cause the MFT to expand and then when you delete the files, those records would also be removed, resulting in holes in the MFT and fragmentation.

#10 OFFLINE Augeas

Augeas

    Moderator

  • Moderators
  • 2,964 posts
  • Gender:Not Telling
  • Location:Where Stuff is made, UK

Posted 06 January 2009 - 08:21 AM

I'm only posting here 'cos I'm interested in the mechanics of it all. I don't think I'll ever want to defrag my MFT.

Vista creates an MFT zone of 200 mb by default. If a very large number of files are created, more than would be by what Microsoft thinks is an average user, then an additional 200 mb is allocated elsewhere on the disk.

Quote Microsoft: 'For workstation or server profiles that have large MFT’s, it is possible that the MFT will be more “fragmented” however these fragments will be 200MB in size a piece so the performance impact will be negligible.'

And again: 'If the MFT is spread into multiple fragments, the defrag engine can combine the MFT fragments during defragmentation.'

And yet again, but from a different article: 'However, it is exactly the size that the MFT file was before the defrag operation.'

So defrag, but to no great advancement in speed or size. I don't know how many files it would take to force a second (or third!) MFT zone to be created, but it's likely to be a large number, many hundreds of thousands or more.

Now for those holes in the MFT. Another quote from M/S, but this time it is more general than specifically referring to Vista.

'An MFT can be too big if a volume used to have lots of files that were deleted. The files that were deleted cause internal holes in the MFT. These holes are significant regions that are unused by files. It is impossible to reclaim this space.'

This is different from the event where the disk is full of data and an attempt is made to create new files. In this event new files will be forced into the MFT zone, if there is space, and this space can be retrieved by defragging, after freeing up enough space to be able to run the defragger. However such a disk, and its operating system, would be in dire straits.

Most of the M/S MFT stuff seems to be generic to NTFS volumes, the Vista specific stuff refers to differences in space allocation and how the defragger utility behaves. Personally I think that for the vast majority of users defragging the MFT, or attempting to, is a waste of time. But don't let me stop you playing with it if you want to.

Oh Yes, does Defraggler fragment the MFT? I dunno, but I doubt it. I think that Defraggler uses Windows APIs to access the MFT, so I would expect Windows, or NTFS, or whatever manages disk data, to take precedence.