Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have a pretty good idea of how files end up getting fragmented. That said, I just copied ~3,200 files of varying sizes (from a few KB to ~20GB) from an external USB HDD to an internal, freshly formatted (under Windows 7 x64), NTFS, 2TB, 5400RPM, WD, SATA, non-system (i.e. secondary) drive, filling it up 57%. Since it should have been very much possible for each file to have been stored in one contiguous block, I expected the drive to be fragmented not more than 1-2% at most after this rather lengthy exercise (unfortunately this older machine doesn't support USB 3.0).

Windows 7's inbuilt defrag utility told me after a quick analysis that the drive was fragmented only 1% or so, which dovetailed neatly with my expectations. However, just out of curiosity I downloaded and ran the latest portable x64 version of Piriform's Defraggler, and was shocked to see the drive being reported as being ~85% fragmented! The portable version of Auslogics Disk Defrag also agreed with Defraggler, and both clearly expected to grind away for ~10 hours to completely defragment the drive.

1) How in blazes could the inbuilt and 3rd party defrag utils disagree so badly? I mean, 10-20% variance is probably understandable, but 1% and 85% are miles apart! This Engineering Windows 7 blog post states:

In Windows XP, any file that is split into more than one piece is considered fragmented. Not so in Windows Vista if the fragments are large enough – the defragmentation algorithm was changed (from Windows XP) to ignore pieces of a file that are larger than 64MB. As a result, defrag in XP and defrag in Vista will report different amounts of fragmentation on a volume. ... [Please read the entire post so the quote is not taken out of context.]

Could it simply be that the 3rd party defrag utils ignore this post-XP change and continue to use analysis algos similar to those XP used?

2) Assuming that the 3rd party utils aren't lying about the real extent of fragmentation (which Windows is downplaying post-XP), how could the files have even got fragmented so badly given they were just copied over afresh to an empty drive?

3) If vastly differing analysis algos explain the yawning gap, which do I believe? I'm no defrag fanatic for sure, but 85% is enough to make me seriously consider spending 10 hours defragging this drive. On the other hand, 1% reported by Windows' own defragger clearly implies that there is no cause for concern and defragging would actually have negative consequences (as per the post). Is Windows' assumption valid and should I just let it be, or will there be any noticeable performance gains after running one of the 3rd party utils for 10 hours straight?

4) I see that out of the box Windows 7 defrag is scheduled to run weekly. Does anyone know whether it defrags every single time, or only if its analysis reveals a fragmentation percentage over a set threshold? If the latter, what is this threshold and can it be changed, maybe via a Registry edit?

Thanks for reading through (my first query on this wonderful site!) and for any helpful replies. Also, if you're answering question #3, please keep in mind that any speed increases post defragging with 3rd party utils vis-à-vis Windows' inbuilt program should not include pre-Vista (preferably pre-Win7) examples. Further, examples of programs that made your system boot faster won't help in this case, since this is a non-system drive (although one that'll still be used daily).

share|improve this question
    
"there is a point after which combining fragmented pieces of files has no discernible benefit." I suppose defraggler is counting all the frags including all of them larger than 64mb, W7 ignores them because it is a waste of time to combine any above 64mb. –  Moab Jun 6 '12 at 1:11
    
How frequently do you access these ~3,200 files? What kind of files are they? –  William Jackson Jun 6 '12 at 2:18
    
@William: Certainly not all the files would be accessed daily, but a few (documents) would see a fair amount of editing. The majority of large files though would be read-only media files - a mix of camera RAWs/JPEGs, home videos, and ripped music/movies - all of which I access over the network using my media players/HTPCs (these are primarily the files that seem to be fragmented up to 15 times as per the 3rd party utils). On an average I'd say 50-100 MB of additional smaller files might be added daily, with larger files being added/deleted fairly infrequently. Does any of this help? –  Karan Jun 6 '12 at 2:36
    
Win 7 seems to report less fragmentation in general. Perhaps it has concluded further optimization makes an imperceptable difference. I run in built defragger in Win7 and get < 1%. When AVG defragmenter runs straight after, it reports 20%, either way comp seems just as fast. .... so whatever. I think 3rd party utilities over report to make it seem like they are worth paying for.... cynical I know but it wouldn't surprise me. Do I really have 15000+ bad registry entries every other week... i think not and as above, none of it seems to make any difference. I think its largely a scam. –  rism Jan 18 '13 at 9:13

2 Answers 2

up vote 0 down vote accepted

"there is a point after which combining fragmented pieces of files has no discernible benefit."

1) I suppose defraggler is counting all the frags including all of them larger than 64mb, W7 ignores them because it is a waste of time to combine any above 64mb

2) I rarely see this on file copies to non system disks. Not sure what happened in your case.

3) I believe the Microsoft Engineers are correct.

4) W7 Defrag is set in Task Scheduler, you can edit the task to change any parameter you want.

Open Task Scheduler and go to Task Scheduler Library > Microsoft > Windows > Defrag

right click on the task and select properties (you can export... the task as a backup in case you change something and it does not work out and you don't remember the factory defaults.

. enter image description here

.

Edit the defrag task parameters in here

. enter image description here

share|improve this answer
    
Thanks for the succinct reply! Regarding #4, I am well aware of how Task Scheduler works, but I see no option anywhere to specify a fragmentation threshold for Windows Defrag to act on. Also, that doesn't quite answer my query about whether it runs every single time or not, or whether a threshold is even used to determine whether it needs to run at all. –  Karan Jun 6 '12 at 1:33
    
It runs on a time schedule, not a frag level. If you would look at all the tabs for the defrag task properties you would see what it actually does when it misses the scheduled time, this and other parameters can be changed. –  Moab Jun 6 '12 at 4:02
    
"It runs on a time schedule, not a frag level." So I take it that it always runs on the drives specified, regardless of the frag level of each? If that's the case, is running a full drive defrag every week on huge drives wise? Do you think the schedule can be changed to perhaps once a month to reduce wear and tear? –  Karan Jun 6 '12 at 15:22
    
Yes, its a time schedule, nothing to do with how fragged it is, the factory schedule is for the C drive only. I don't see a 1 month interval helping, the longer you wait to defrag the more work it has to do when it does run, the shorter the interval the faster the defrag will complete. Defrag does not wear and tear the hard drive in my opinion. –  Moab Jun 6 '12 at 18:50

If I remember correctly, modern versions of NTFS deliberately leave some space between files (if the volume isn't too full) so that files can grow without becoming fragmented. It is possible that the third party tools are looking at this empty space and counting it as fragmentation - that is, the free space on the volume is (intentionally) fragmented, and the third party utilities want to eliminate that, to reduce the risk of new files having to be fragmented to fit in the gaps.

If this is the case, defragmenting the drive with the third-party utilities won't result in any significant performance improvement, although it might avoid a potential performance loss if the volume ever becomes very full. Personally I wouldn't bother.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.