Beware of Bogus XP Advice

This question appeared on a bulletin board recently:

Someone suggested deleting the contents of the Prefetch directory in Windows XP on a weekly basis, to speed up the boot process. Is that good advice?

The Internet has a way of taking questionable facts and giving them a life of their own. Even bad advice about Windows has a way of spreading, just like urban legends. This is one of those “tips” that doesn’t survive even a cursory analysis.

The Prefetch directory serves a valuable purpose by analyzing files that you use at startup and when you run programs. Contrary to what some well-meaning but technically inaccurate articles suggest, this does not copy the files themselves. It creates an index to the location of those files on the hard disk, including the order in which they’re loaded. This allows Windows and Windows programs to start very quickly after the first time you use them.

The Prefetch directory has one additional salutary function when used in conjunction with the built-in defragmenting tool. Every three days, during idle times, this utility rearranges program code, moving it to the outside of the disk to make it more efficient when loading (to force Windows to perform this optimization without having to do a full defragmentation, use the Defrag.exe command with the -b switch. For instance: defrag c: -b).

Carl Siechert, Craig Stinson, and I actually devoted several pages of Windows XP Inside Out to this topic. That was almost two years ago, though, and I’m willing to keep an open mind that we might have missed a great tip. So, just for grins, I got out my stopwatch and clocked my system boot time. Then I cleared out the Prefetch directory and did it again. My system has been running nonstop for 7 months and I have never touched the Prefetch directory. If this “tweak” were going to do any good, surely it would have maximum effect on my computer, right? The results were illuminating.

I timed from power up, starting with the first beep (POST code) to the point where the hourglass cursor disappeared.

With a full Prefetch directory:
0:50 to login screen
1:08 to desktop

After emptying Prefetch directory:
0:58 to login screen
1:57 to desktop

In other words, it took me nearly a minute longer to boot after using this “speedup” tip!

When I Googled for this topic, I found tons of examples of people who had simply copied this advice to their list of “tips” without any explanation of why it would be valuable or whether it actually affects performance. Mark Russinovitch and David Solomon, for instance, wrote an excellent article called Windows XP Kernel Improvements Create a More Robust, Powerful, and Scalable OS in the December 2001 issue of MSDN Magazine. Their technical credentials are impeccable, and they speak very highly of this feature.

The few people who did discuss it in those terms were unanimous in recommending that you leave Prefetching on.

Furthermore, why worry about boot times anyway? I recommend that most people avoid restarting their computer except when it’s absolutely required. Windows XP is so stable you can leave it running for weeks at a time and only restart on those rare occasions when you have to do so. If you need to shut down the computer, use the Hibernate option instead, which allows you to resume in seconds, with all your programs loaded just the way they were when you shut down.

If you really want to improve performance, forget bogus tweaks like this one and do the following: increase the amount of RAM in your computer (at least 256MB), get a good defragmenter (Diskeeper is the best), and remove programs you don’t use (or at least configure them so they don’t start automatically).

Update, March 2005: This “tip” just won’t die. It still appears all over the Internet, including at some places that should know better. We revisited the topic for the second edition of Windows XP Inside Out and found that cleaning out the Prefetch folder still does nothing positive for performance. If you think otherwise, get a stopwatch and run your own tests.

Update, May 2005: Microsoft’s Ryan Myers has an excellent blog post on the subject, entitled “Misinformation and the Prefetch Flag.” Here’s the money quote: “[I]t is a bad idea to periodically clean out that folder as some tech sites suggest. For one thing, XP will just re-create that data anyways; secondly, it trims the files anyways if there’s ever more than 128 of them so that it doesn’t needlessly consume space. So not only is deleting the directory totally unnecessary, but you’re also putting a temporary dent in your PC’s performance.”

Be sure to read these follow-up articles as well: Don’t clean out the Prefetch folder, Debunking yet another bogus Windows tip, and One more time: do not clean out your Prefetch folder!

90 thoughts on “Beware of Bogus XP Advice

  1. I agree 100% about NOT deleting the prefetch stuff…

    But..now you know there would be a but… I do NOT agree with leaving your PC on all the time unless there is a reason to do so.

    I live in Las Vegas. It is hot enough without having a pc on 24/7. We even purchased a window air-conditioner for our computer room. The only other way we could try to cool off this room was to freeze out the rest of the house!

    Besides the electric bill, I am not in favor of wasting energy for no reason. Or at least..I want to conserve what I can. They are talking about having different rates for different times of the day..to give folks an incentive to reduce their electrical costs. Since we do not work (retired) I have no problem keeping a schedule which goes with my body’s natual rythms..and stay up late and sleep in late in the morning. This will allow me to keep my pc off during the hottest part of the day.

    Thanks for you good advice.
    Rose

  2. I would actually have do disagree. The purpose of clearing the prefetch cache is to clear out old junk that isn’t being used, yet the computer tries to fetch. Obviously, biweekly is too short a time, but every 3 months would do the trick.

    I would like to see what your boot times would be like, after using the computer for a week after clearing the prefetch. If you had obsolete information, I bet the time is slightly improved. It would depend on the user though, and how often they change the programs they use, etc.

  3. I think you’re still missing the point. Windows doesn’t actually load anything from the Prefetch directory. It simply lists locations where it should load stuff if you run a program. When you run the program, Windows checks to see if there’s an entry in the Prefetch directory; if so, it uses that index to efficiently load the program and its associated resources. If it doesn’t find an index entry, it creates a new one.

    You don’t need to manually clean it out. On my system, which has not had the Prefetch directory cleaned out since I posted this original note on April 18, the oldest entry in the Prefetch cache is only 10 days old.

  4. The other pages I’ve seen discussing prefetching do not agree with you that “Windows doesn’t actually load anything… [] It simply lists locatins where it should load stuff if you run a program”.

    They say that Windows does load stuff before you use it. For example, techrepublic says “Using its prefetch capabilities, Windows XP tries to load the programs you need before you need them. ” jsifaq.com says “Prefetching is the process of bringing data and code pages into memory from disk before it’s demanded. ”

    I’m pretty sure from personal experience that these sites are right. Executables pointed to in the prefetch directory are run.

    -Dan D

  5. Sorry, Dan, that’s not correct. Go read the technical articles I referenced to learn what Prefetch really does. For that matter, go look at the files in your Prefetch folder. They are simply layout files, which show where the segments of a particular executable and associated DLLs are located.

    The Prefetch layout for a program tells Windows, “Based on previous experience, when the user runs this program, you will need to load the following files in the following order.” In many cases, the exact order in which segments of a program are loaded is different from the way they are arranged on the disk, so Prefetch in combination with the Defrag tool rearranges data on the disk to make it load more efficiently.

    I presume you are referring to this TechRepublic article. I found at least three gross technical errors just in skimming it over. It is clear the author simply doesn’t understand how Prefetch works.

    You could of course prove all this for yourself by using a process monitor and a stopwatch. Notice that the author of this article didn’t document any performance testing to prove that his “tip” (which includes the same incorrect advice published elsewhere on the Internet) actually does anything.

  6. Sorry to disagree with you regarding prefetch folder, to deleate contents or not ?
    certainly not every week,but from time to time, is in my veiw a good way to increase boot time,
    Why, just take a look at the prefetch contents, short cuts to progs. and other bits long deleated from the hard drive,
    If you clear prefetch contents it will take about 5 start up’s to re-enter the programs that you use day to day,then get out the stop watch, it will be quicker, me, I boot and time the same way as you, in 35 sec.xp prof. 2.7 ghz 1 gig ram sp1a installed

  7. As a new user to XP, I have been researching the prefetch file and have found conflicting information. I have noticed if I delete an item from the prefetch folder but do not take it out of the layout.ini file, it takes longer to boot. (For example, changing a service to manual and then removing it from the prefetch file. If I do not take it out of the layout.ini file, it puts it back in the prefetch folder. Does the layout.ini file get updated as prefetch files are no longer needed?) Does Diskeeper 9 move the prefetch files to the outer segment of the disk when you do a boot defragmentation?

  8. Interesting question! I don’t think there should be much relation between the individual prefetch files and Layout.ini and boot performance. They serve separate functions. I’ve never tested that specific scenario, though, and won’t have a chance to do so for another couple weeks. I’ll give it a try later.

    I would certainly think that Diskeeper uses Layout.ini but can’t say for sure.

  9. I have a question that might pertain to this or may not…i’m not sure if you can even answer it heh. I have something like an error message that pops up on my desktop before Windows shuts down; AFprk.exe-DLL. I found it in my Prefetch file. If i’m reading correctly on what you’ve all said then I should keep them all intact and not get rid of them? Any information would be highly appreciated since Microsoft.Com told me absolutely nothing.

    Thanks. ^.^

  10. Lisa, that file in the Prefetch folder is completely unrelated to your problem. Without a lot more information, it’s difficult to say what’s going on.

  11. Just ran across this page randomly, but had to laugh pretty heartily at the whole situation. Keep fighting the good fight, Ed. I totally agree, there is not one piece of hard evidence to indicate that deleting/clearing/moving/whatevering the prefetch folder makes any difference.

    I believe people see old file/program name references in that folder and just overreact thinking it must be old cached data that is slowing things down.

    If only people would spend as much time worrying about what new crappy shareware they are randomly installing as they do about this mysterious prefetch folder or other similar “performance tweaks” I firmly believe people would see general and noteable performance “gains” (they aren’t really a gain if it’s just avoiding a “reduction”…) 😉

    I also agree with you about the RAM. Short of a complete system overhaul, I’ve rarely seen anything come as close to a good ol’ kick in the butt for increased performance as adding more RAM does. And with 512MB sticks going for ~$50 or less, I can’t see anyone’s reasoning for not just adding a bit more. 🙂

  12. Seems to be some misconceptions about how the prefetch works.

    The first thing to consider when deleting from the prefetch folder is that your next restart is going to take longer than normal. That could theoretically be true for your next couple of restarts, but is certainly true for your next one.

    Next is why would you want to empty the folder. I would argue that you should, only under certain conditions. Those conditions are:

    You are constantly installing–trying out–then uninstalling allot (a whole lot) of software.
    Your system is sluggish and you’ve tried the most common tips to make it lively again.

    IMHO it would take tons of bogus entries to slow the system down noticably, but there is a chance so don’t count the prefetch off limits. Just don’t be too quick to dump it. You will almost certainly defeat its attempt to make your system run better if you do it too often.

  13. Well, Fr33d0m, your argument would be a lot stronger if you supported it with some real-world testing and shared the data. I’ve tested with a stopwatch. There is essentially zero impact on startup time after emptying the Prefetch folder. And since the total amount of data in the Prefetch folder typically adds up to a few megabytes (megabytes), and it is automatically purged on a regular basis, there’s no benefit to emptying it.

    As for your specific cases:

    If you uninstall a program, its prefetch entry isn’t used. Because you never run the program again, the .pf file never gets read and it is normally deleted within a few weeks. No impact on performance.
    If your system is sluggish, emptying the Prefetch folder won’t speed it up. Why would it?

  14. I don’t really know whether or not clearing the prefetch is any good. However one thing threw me off on your original test.

    To quote:
    “I timed from power up, starting with the first beep (POST code) to the point where the hourglass cursor disappeared.”

    Testing until the hourglass dissappears is never an accurate test. I don’t know any system that behaves exactly the same way every time I boot it up. One time the hourglass will go away after a few seconds, but the next it can take over a minute. Not only that, but you really don’t know that it was the prefetch empty that even caused boot up to be slow. There are so many peices to the puzzle during bootup. Your tests are inconclusive.

    For a timed test you have to pick a common point that is always the same every bootup. When the hourglass dissappears is not a common point.

  15. Also, sorry to double post, but here is a link from Microsoft. While not directly related to prefetch it does give a brief explanation.

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/xpehelp/html/xetskdisablingprefetch.asp

    To quote from that link:
    “Prefetch is a utility that loads commonly used applications to RAM when the system starts.”

    I have no proof since my knowledge of this subject lacks. But I think a better test would be looking at the RAM after bootup to see if all your common OS and program files are loaded there. Which also explains why one site I went to recommended 512 MB of RAM to use prefetch. If all the common files are there then that pretty much blows your whole prefetch is just an index theory. Perhaps what’s in the prefetch folder is just an index, but how the OS uses that index is another thing. Because according to the people who make Windows it does a lot more than just index.

  16. That last link is for a completely different product, Embedded Windows. That’s a specialized OS designed to go into single-purpose devices. It’s not really relevant here.

    On the stopwatch testing, I’ve measured every imaginable way, and the results are consistent. Clearing the Prefetch folder does not have a positive impact on performance. As an aside, I’ll say that boot time to the disappearance of the hourglass is completely consistent on my test machines, when measured on a single computer. From one machine to the next, there would of course be different results, but a clean boot gives me identical results every time, and I wouldn’t expect random results unless I had a specialized app installed as a startup task.

  17. I ran across this link because I was searching for additional ways to clean up cache and unwanted files. When I have doubts or am unsure I consider the size of the file and folder. I have a 40 GB HD and over 70 entries in my prefetch folder. The size of that folder is not even 5MB. With all the conflicting opinions about the prefetch folder I figure 4MB isn’t with toiling over. As a PC Tech I say, “If it ain’t broke, don’t fix it.” Besides, I like the KISS philosophy. Keep It Simple Stupid.

    Personally I don’t trust third party software that does what Windows already can. I feel your better off running Windows XP disk cleanup, Defragmenter, and deleting your cookies and Temporary Internet Files.
    Kev

  18. I have been reading this thread with interest. I want to say upfront I am not a computer or PC professional. I would consider myself a literate user but thats about it. My computer has been running extremely slow recently and appears to be infected by some kind of spyware or other kind of malicous programs. On a side note, I am always amazed that talented people create such malicous software, but I digress. Whenever I shut my PC down I get a error message that states the following file IKFQDLL.EXE cannot be shut down properly. I did a search in windows explorer and this file was located in the prefetch folder. I googled this file and folder and found alot of sites telling me to delete the contents of this folder. by doing this will I eliminate this executable file from running or is it somewhere else in the PC.

    Can you offer any advice on how a layperson can clean this stuff from a PC. I’ve run adaware,spybot and spware blaster to no avail.

    Any help would be appreciated.

    Dean

  19. I found prefetch mentioned on the MS web site
    Link 1

    Link 2

    Link 3

    Link 4

    In summary, what Ed has been telling everyone is absolutely 100% correct. All the stuff you are reading at the ‘other’ web sites is incorrect and pushing something on to you that you really should not be doing (deleting prefetch entries). Most of the sites I’ve seen articles containing the ‘delete prefetch entries’ are techy sites that try to draw attention by creating big stirs on something like this. It’s rather unfortunate, but those are like the Enquirer magazine – you really need to research that information before applying it. So, I have supplied links such that everyone can do their own reading and research and come to their own conslusion. For the most part, you will see that Ed is correct and the other sites spoken of are not.

    Cheers,
    Chuck

    [I edited this comment to make the links clickable – Ed]

  20. Will purging the prefetch folder fix issues that one is having with a coruption in the taskmanager program? If not then what would be the best place to start diagnosis to fix errors in the taskmanager program?

  21. I’ve seen reports that defrag -b moves this prefetch data to the outer edge of the disk.

    In all benchmarks I’ve seen and tried, thats the slowest part of a modern hard drive, so what gives?

    Ben

  22. I don’t see how benchmarks could possibly have reported the outside of the disk as the slowest part. Recalling high school science classes …

    The outside completes a rotation in the same amount of time as the inside, but the outside must travel a much greater distance. The only way that the circumference of a wheel/disc/frisbee/etc. can travel a greater distance in same time period is to spin faster than the inner portion.

    The faster a disk drive spins, the faster the heads can read data from the disk. Outside spins more quickly than inside. Ergo, outside is the fastest read/write area of a disk drive.

    I’m a non-tech, non-science guy, but I’m fairly certain I’ve got this one right.

  23. Read the entire thread and decided not to bother cleaning the prefetch, but here is what pcpitstop is telling the world in its June “what’s new” email:
    Performance Tip: Prune Your Prefetch

    Windows XP speeds up boot time using information that it keeps in the Prefetch folder under the Windows folder (usually this is C:\Windows\Prefetch on most PCs). Over time as many programs are installed and removed, the prefetch information can actually hurt performance. If your startup times are lagging, you can delete the .pf files in the Prefetch folder and Windows XP will rebuild them as needed. While you’re cleaning, it’s a good time
    to empty the Recycle Bin, clear your IE cache, and defrag the drive for best performance.

    I have used and trusted pcpitstop for years. Should I reconsider?

  24. This looks like yet another example of someone who said, “Well, it’s reprinted in a thousand places on the Internet, so it must be true.”

    I sent an e-mail to Dave Methvin, a friend who is also Chief Technical Officer at PC Pitstop. We’ll see what he has to say.

  25. As I said to Ed, mea culpa. I believed this tip myself and do clean out the folder as part of some routine maintenance. Given my system setup (weekly defrags, daily junk file cleanup, 2GB of RAM, system runs 24/7 with about 1 boot every two weeks) I doubt it’s actually hurting performance. But the goal is to really improve speed and that’s a higher bar. So ignore that tip, and we’ll do a better job of vetting them in the future.

  26. Hello Ed! I was browsing Google to see why a Gateway Profile I am working on doesn’t load the MS windowsupdate page and saw your blog on Prefetch and decided to read it on through.

    My take on Prefetch…. I like to purge it fairly regularly and performance issues don’t enter into this cleaning. I do it strictly for malware cleaning and prevention. After watching Steven Gould’s free Cleanup! program run on a few hundred machines I have seen more spyware-related files in the Prefetch folder than I care to remember. The file mentioned by Dean in the earlier reply (IKFQDLL.EXE ) being an example of a random-named Trojan. Rule of thumb for anti-spyware technicians : “If the filename isn’t found in Google, then it is almost certainly hostile”).

    So for me, with a fast hard drive and plenty of RAM, I purge it once a week. For spyware-infested computers I always purge Prefetch.

    All the best,

    Russell Smith

  27. Well, hey there, Russell! Good to see your name in the comments.

    While I always respect your point of view, I have to disagree with you here. The files in the Prefetch folder are .pf files. They are not executable, not even remotely. They are created by the operating system and are only consulted when you, the user, or an agent you have installed actually executes a program.

    Now, the thing that confuses most people is that the name of the .pf file actually contains the name of the executable file whose layout it defines. So someone looking at it in a cursory fashion might think, aha! Those wily crapware makers are hiding files here too. Death to spyware! Death!

    Ahem. Sorry, where was I? Oh yes. Those .pf files are not doing a thing that’s bad. If you get rid of the underlying executable, the .pf file will represent a map to a territory that no longer exists. The .pf file will disappear in two weeks after being unused the whole time. If you don’t get rid of the underlying executable, on the other hand, the .pf file will be re-created the next time it runs. Which means that deleting it is pointless and all effort should be put into finding and zapping the executable file.

    Deleting the contents of the Prefetch folder may appeal to someone who wants to be 110% sure. But deleting those .pf files has no practical effect on your security. None at all.

    Respectfully,

    Ed

  28. Yes, I realize the .pf files are harmless per se (although some antimalware experts report problems in cleaning up hostile .exe files with software cleaners unless the Prefetch entries with that file are removed). I haven’t experienced this myself.

    I can only report as an eyewitness while cleaning up spyware-infested computers in person (I do this part time now and pick up computers and bring to my house for a thorough cleaning) that in several of the past 100 computers I have found hostile .exe files (plus another file with the .pf association) in the Prefetch folder. As a hidden folder Prefetch appears to be an infrequent, but nevertheless a tempting target for some Trojan writers. The Prefetch folder on these past hundred or so computers could have contained more examples of true .exe files, but I only examined the folder on a few prior to purging Prefetch with one of my tools (CCleaner or Cleanup!).

    More frequently I find the writers use these depository folders: Program Files (the root and more commonly a new random-named subfolder; Windows\System32 folder, Windows folder, all the user temp folders (a hotbed of activity) and the root C: level.

    So I just save my time during a cleanup and purge all temp files and the Prefetch folder first before I run my regimen of the major free antispyware tools.

    All the best,

    Russell

  29. Isn’t all the discussion of the prefetch folder diverting from the RAM issue? If Windows does preload material into RAM, then it is occupying memory which in a low memory machine will affect performance.
    If this is a real issue, you can turn prefetching off for files by making a change in the registry and live with the consequences if any.

  30. Glenn,

    It doesn’t actually preload anything into RAM until you run the program, and when you do that, prefetching only works if you have RAM to spare. So nothing to worry about.

    Ed

  31. Hi, Ed.

    This is related, but slightly different.

    I just read an article (a very short post at http://www.theinquirer.net) that mentions this: Longhorn has a Registry entry called “EnableSuperfetch” with a value of 1; this is possibly in addition to the XP entry of “EnablePrefetch” with its default value of 3.

    The person states that the speed improvement of Longhorn can be achieved in XP by simply adding the “EnableSuperfetch” entry.

    I hesitate to make this change on my one production PC until I’ve researched this just a little. Google provided no hits on the term “superfetch” in relation to XP, although there were several references to it in relation to Longhorn, but those were 1.5 years old.

    Have you heard about this?

    What is your viewpoint about this?

  32. David, thanks for the pointer. I have never heard of the EnableSuperfetch setting. It certainly sounds like a new feature in Longhorn and if so wouldn’t work in XP. I’ll look into it!

    Ed

  33. From the Microsoft white paper Fast System Startup for PCs Running Windows.doc:

    “Prefetching reads pages into memory ahead of demand based on a learned scenario. It is also important for efficient disk I/O for these pages to be contiguous on the hard disk to eliminate excessive seeking. Prefetching and optimized layout result in reduced page faults and efficient disk I/O’s.”

    This section of the article is a good summary of what prefetch does … “When the system boots or an application starts, the Cache Manager is called to give it an opportunity to perform
    prefetching. The Cache Manager looks in the prefetch directory to see if a trace file exists for the prefetch scenario
    in question. If it does, the Cache Manager calls NTFS to prefetch any MFT metadata file references, reads in the
    contents of each of the directories referenced, and finally opens each file referenced. It then calls the Memory
    Manager to read in any data and code specified in the trace that’s not already in memory. The Memory Manager
    initiates all of the reads asynchronously and then waits for them to complete before letting an application’s startup
    continue.
    How does this scheme provide a performance benefit? The answer lies in the fact that during typical system boot
    or application startup, the order of faults is such that some pages are brought in from one part of a file, then from
    another part of the same file, then pages are read from a different file, then perhaps from a directory, and so on.
    This jumping around results in moving the heads around on the disk. Microsoft has learned through analysis that
    this slows boot and application startup times. By prefetching data from a file or directory all at once before
    accessing another one, this scattered seeking for data on the disk is greatly reduced or eliminated, thus improving
    the overall time for system and application startup.”

    According to Microsoft, the prefetch does affect both Windows boot process AND the application startup process. Perhaps this is why there is confusion about how prefetch works and whether or not it affects boot times OR application start times. It affects both.

    To more fully understand prefetch, these other articles at Microsoft’s web site were most informative …
    Link
    Link
    Link
    Link

    By the way, according to Microsoft, if you are benchmarking any prefetch activities, this needs to be done after the THIRD reboot.

    Thank you all for an interesting thread.

    [Edited to make links clickable. – Ed]

  34. Well, this whole issue has cost me about an hour of time trying to figure out the truth. As several in this thread have mentioned and as the links to MS explain Ed is right, so I won’t post more on that one, but I did want to point out that the mis information is still being spread. This article on windowsnetworking adds to the confusion.

    I have gotten good info from windowsnetworking in the past but this article makes me re-think how careful they are.

    Thanks,

    Tom

    [Edited to make link clickable. – Ed]

  35. Ed, Thanks for the information on prefetch.
    I did want to point out that the http://arstechnica.com/guides/tweaks/sgp-tweaks.ars/1
    article actually suggests that MORE resources be given to the Prefetcher by INCREASING the regkey: [HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Memory Management \ PrefetchParameters]

    It states that Default is 3, but recommends (with no scientific basis) a setting of 5 or even 9.

    Any opinions on this?

  36. Mark,

    That article made my head hurt. The accompanying discussion thread does a pretty good job of debunking just about the entire thing!

  37. Thanks for the information on Crap Cleaner-which I unticked.
    The next food for thought is weather to untick ”MEMORY DUMPS?”

  38. I have a question…

    On my XP laptop (still running SP1 for a variety of good reasons), I noticed my ntosboot-b00dfaad.pf file dates to early 2004 when I first booted the machine. Prefetch is enabled and functioning properly- the rest of the prefetch files have much more recent modification times.

    Having your boot prefetch file this far out of date would certainly cause performance issues- cache manager would fetch the wrong data at boot, and the disk optimizer would order the files on disk incorrectly. The advice to delete the prefetch files (or at least the ntosboot file) would not be bad advice in this case. I deleted the ntosboot prefetch file, and the machine certainly did boot substantially faster afterwards (the real improvement came the second boot after the boot prefetch file had been recreated).

    However, I checked on two other XP machines I have access to, and their boot prefetch files were quite current (dating from the last boot or two). They both are running SP2. So I’m wondering… was my laptop the victim of an unusual glitch, or did SP2 change the system’s behavior in relation to the boot prefetch? I don’t have any other SP1 machines around to check, but perhaps this advice entirely bad prior to SP2…

    -R

  39. Ed I just wanted to say thank you for a couple things.
    1. Actually backing up whay you say with tests real information.
    2. Making me laugh.
    Finally this prefetch issue is pretty much dead. You are 100 percent right, there are no howevers left. I think you’ve covered just about everything that this useful file does and killed a lot of rumors about what it doesn’t. Thanks again.
    Fred.

  40. Well, thanks to ED for actually backing up his findings, and shame on al lthe sites and “techs” still spreading this BS.

    If i could make 1 statement here, it would be on Kevin’s post about moving files to the outter rim of the disc. Moving files to the outside edge, as done with defrag or something like System Mechanics defrag tool, will speed up disc performance.

    I can’t speak for windows defrag, but system mechanics works off this principle.

    A harddrive is actually a bunch of discs, with reader arms between the discs that move from the outter edge in towards the center of the disc.

    By moving system files, and other files aswell, to the edges of the discs, it actually reduces the seek time. Read times will be the same, as that is dependent on disc rpms.

    I can’t say how much of an increase you would see, I would assume about the same amount as running a defrag for the first time after running your OS for a year.

    That coupled with what defrag actually does, i.e. moving file fragments together instead of spread over various clusters, would improve disc seek and performance.

    But if it’s that important, get some darn scsi drives

  41. found this in the prefetch folder–> Z00096.EXE-31DD568F.pf

    this tries to connect to –> http://www.z-quest.com

    also in the layout.ini found the entry –> c:\z00096.exe
    also the layout.ini drsmarload suhde adteche entries,
    also inthe prefetch folder were corresponding exe files with the pf extension

    this was in conjunction with adteche drsmartload and teller crap in the –> temporary internet files\ie5 folder amongst other things,

    used assorted antispyware but these would not delete the ie5 files or the exe-pf files either so did it manually,

    with the Z00096.EXE-31DD568F.pf left intact the pe was recreated at C:\windows and tried to connect to http://www.z-quest.com,

    once these files were deleted that seemed to stop the problem with a little bit of reg editing, although most of the reg crap was left behind,

    have sent info about this and more to spybot s&d, and hope they will look into this problem,

    I think the virus and adware funsters are well aware of tricks to use the prefetch for,
    this lot caused system hangs nt authority shutdowns when they could not connect to there download sites for some time, all in all made my machine slow aand unstable,

    what amazes me is the fact z-quest adtech and so on can get away with calling themselves advertising businesses and make billions in cash while ruining other peoples businesses and home computers operating systems with their scumware,

    if an individual did this sort of damage to someone elses property they would end up in court with a hefty fine and/or a jail term,
    still I suppose governments like the tax and backhander donations to their respective parties,

    still the best thing to do in create a passworded admin account, and use a limited user account to browse websites,
    this will make it more difficult for them to put scumware on our pc’s,
    also be wary of installing freebies for obvious reasons, get them from cnet or zdnet trustworthy type of sites if possible and read the sites comments on the software, they usually say if there is spyware in them,

    to finish of I think prefetch can be used for scum-ware/virus/Trojans ect by the happy people so it’s worth keeping an eye on as well as the temp folder that can have a nice store of crap ready to be reinstalled after all your hard work cleaning your system

  42. Do you have any similar advice on whether to clear the Local Settings\Temp folder (or not) on a regular basis?

  43. Re: “They are simply layout files, which show where the segments of a particular executable and associated DLLs are located.”; this appears to be an invalid argument supporting a correct conclusion. If you put a shortcut to MS Word in your startup folder, it is also “simply a file which shows a particular executable is located.” Whether there are executables or just pointers to executables in the prefetch directory doesn’t matter. What matters is when the executables load and run – at boot time or when an app is invoked. The latter appears to be the case, and thus the conclusion is correct, but it would be equally correct if the prefetch directory was full of executables instead of layout files.

  44. Guy, if you’re going to try to quibble, you need to pay closer attention. My statement, which you quoted accurately, says, “They are simply layout files…” A layout file is, by definition, not executable.

    You then try to create an equivalency with shortcuts and use the phrase “simply a file.” You left out the word “layout,” making the comparison completely invalid.

    Shortcuts that point to executable files are themselves executable. That is why they are blocked by antivirus programs and are subject to other security restrictions.

    You then say, “Whether there are executables or just pointers to executables in the prefetch directory doesn’t matter…” Again, you are leacing out a crucial part of my original sentence. I said, “they show where the segments of a particular executable and associated DLLs are located…” In other words, the layout file references bits of data stored on the disk. It does not provide a way to execute them.

    You say, “What matters is when the executables load and run – at boot time or when an app is invoked.” Yes, that’s true. But a PF file cannot be used to load and run a program; if you put that PF file in the startup folder it sits there and does absolutely nothing. When the prefetch code runs and loads the PF files in the Prefetch folder, data segments get rearranged on the hard disk. That’s all that happens – no programs are run.

  45. Hmm…I’ve did benchmarks myself that show that the inner tracks of my laptop drive read at 30MB/s while the outer tracks are around 24MB/s. What’s the best way to go here?

    I see how it should read at the same speed. And how seek times should be less on the outer tracks since more data could be put there, giving for less head movement with more data…is it an issue of drive geometry or format?

    Also, a fresh install of windows starts with all of its files on the inner tracks…defrag will even put them there.

    Lastly: Are there any tools for Windows 2000 that will put all the boot files in a nice neat row like prefetch?

  46. Can the prefetch be used for malware purposes — an index that points to a different file? I see a winlogon* prefetch file and I am having trouble figuring out when winlogon tries to connect out through my firewall, if it’s the ‘real’ winlogon or malware.

  47. Ha, good chuckle here at the posts. I especially like the fellow who thinks deleted is spelled ‘deleated’. I’m sorry but I feel if someone cannot even spell a word that is on every keyboard they have no place in expressing thoughts in a computer-esque discussion.

    Observant.

  48. I have a aol privacy window that keeps popping up asking permission to go to the internet every two minutes or so I found the file in the prefetch folder and its name is mstmler.exe please tell me how to stop this from constantly popping up and asking for permission and what is it? please help

  49. Here is a small concern that I have: After system startup, and nothing yet launched, I get a javaw.exe process running and taking up about 15% CPU. I have no idea what it is doing. If I terminate the process nothing bad happens.

    I assume that it starts because I have a javaw.exe in my prefetch, but why is it taking up CPU cycles when no application has been launched?

    These prefetch entries seem to date back to Nov. 15 when I first installed the RCP from Eclipse.org.

    In a simiar vein: I am getting execution of mscifapp.exe which is a privacy module from McAfee and it is initially launched from the prefetch folder. The annoyance here is that it will start for essentally no reason (for example, I am not accessing the web) take up 50% of the CPU and initiate a system slow down when I am trying to do other work requiring lots of CPU.

    Can anyone provide some advice here…

    Thanks,
    Forbes

  50. Forbes, you headed off base when you wrote this:

    I assume that it starts because I have a javaw.exe in my prefetch, but why is it taking up CPU cycles when no application has been launched?

    Nothing gets launched from the Prefetch folder. Nothing. That’s equally true for mscifapp.exe.

    Get a utility like Autoruns and you can see where these programs are installed and why they are being loaded at startup.

  51. Mark Shurer,

    Read on some site that “INCREASING the regkey” above 3 actually disables the Prefetch. Keep in mind I haven’t gotten around to testing. If you get there first please post. I’ll keep an eye out.

    Charlie

  52. After reading this thread with great interest I noticed there is one thing missing… Namely what do you do if you followed the advice on one of those sites that suggest you delete the contents of the Prefetch folder, before reading your recommendation!

    I found the answer answer at: http://www.besttechie.net/forums/index.php?s=4c043e049dde68a27893b9f8fbacd810&showtopic=4404&pid=38988&st=0&#entry38988

    Here is what it says:

    Repairing the Prefetch Folder:

    If this has happened to your prefetch folder DON’T WORRY because here is how, in 5 easy steps how you can rebuild the -> (layout.ini) Start/Control Panel/Administrative Tools/ Click on Services/ Then in the list of services make sure the Task Scheduler is enabled & restart the service by clicking on Start. Close the Services Folder & go back to desktop.

    2): Then go to START/RUN/ and TYPE IN/->cmd rundll32.exe advapi32.dll,ProcessIdleTasks Start/Control Panel/Administrative Tools/ / Services/ Once again find TASK SHEDULER in the list and stop the service and then set it to disabled. This will stop any more entries going into your Prefetch folder.

    If you need to leave your task scheduler enabled, (No Drama) you will just have to clean out your Prefetch folder manually from time to time. Just remember not to remove the layout.ini file

    It seems to work OK. Guest how I found out 🙂

    Cheers, Jim

  53. Hello everyone,
    Nice thread. I believe that the confusion to what Windows XP Prefetch does is related to how the process has been defined, in many different ways, and the name of the process itself – prefetch – leads many to erroneous conclusions.
    There is a distinct definition of what Prefetch actually does in MS’s website, which I will interpret (in simple words) for those of less technical knowledge, for those “tweak seekers”, or anyone who’s interested:

    First of all, the operating system moves the codes and instructions it needs for specific processes from the hard disk to the memory. That’s where all the processing is prepared for: physical memory. You can’t directly send a process from the hard disk to the CPU (duh).
    So let’s say you run Windows Media Player. Well, there are a lot of DLL’s (these are files that are full of instruction sets) and information files that Media Player has to load in order to work (yes, wmplayer.exe is NOT the only file that loads when you launch it.) It loads some instructions from a DLL, and then it loads other code from an information file, and then it parses some more instructions from the first DLL again, and so on.
    So, when you run Media Player, the loading of processes in that order leads to more hard disk activity (the heads get info from a first file, move to the second file, then move back to the first file, etc…) I hope everything is clear so far.
    “By prefetching data from a file or directory all at once before accessing another one, this scattered seeking for data on the disk is greatly reduced or eliminated, thus improving the overall time for system and application startup.” Example: you have a couple notes, each having some tasks to do. Go to Albertsons, buy some bread, juice, and apples. Go to the bank, withdraw some cash. Go to Albertsons, buy some chips. So wouldn’t you lose a heck of a lot of time doing all this in the DEFAULT WRITTEN ORDER?
    YES, my friends, what prefetching does is literally prefetch ALL the data that NEEDS to be loaded to memory from THAT file, WHEN THE PROGRAM IS RUN , so it DOESN’T have to go back to that file or directory AGAIN; hence, less hard disk activity, faster loading of application.
    OK, this is the IMPORTANT PART. In the same text that I’m explaining, it states: “Prefetching is the process of bringing data and code pages into memory from disk before it’s demanded.” A LOT of people (techies, newbies, websites, etc) have misinterpreted this to “Prefetching is the process of loading programs into RAM before you run them.” This is WRONG. The text says “BEFORE IT’S DEMANDED”. It doesn’t say “BEFORE IT’S EXECUTED BY A USER.”
    I will define the preceding definition to it’s correct state: Prefetching is the process of loading instructions to the memory, before those instructions would have been demanded by the DEFAULT SEQUENTIAL ORDER (remember, Albertsons, bank, Albertsons? Now it’ll be Albertsons, bank.)
    Don’t let the name prefetching lead you to defining it as pre-loading applications before you execute them. Just like Ed says, the files in the prefetch folder are layout files on HOW the programs should be loaded, so they can load faster. Yes, it monitors the execution of code upon boot time as well.
    So basicly when deleting the contents of prefetch, you’re telling Windows “when my applications (boot apps, non-boot apps) are run, load all code in the default order it would have run.” What Ed is telling his Windows to do is “Hey, if I’m lauching a.exe, and you need a set of instructions from b.dll, go ahead and load (prefetch) all those instructions now so you don’t need to come back to b.dll again.” And Windows XP replies with ” OK Ed, that’s neat. I’ll keep this process in mind and call it Prefetching.”
    Ok, let’s say I’m high at the moment and all I’ve said is BS. Ed Bott is an uneducated compulsive liar who can’t tell the difference between a file and a folder. So where’s YOUR common sense? If prefetch actually DOES load programs into memory and chew up system performance, then all you have to do to SEE all this is run Security Task Manager, or Autoruns (from sysinternals.com, as Ed stated), and check the processes. Perform a fresh boot, take a look at the programs that are listed as pf files in the prefetch directory, and run any of the two programs I listed and check if the executables are there. Do that and then tell me what prefetch really does because I’m mentally impaired, I bet some will paste a link to a website again saying “but this article says blah blah blah.”
    Yeah, I’m like you. I like squeezing out every bit of performance I can from my hardware. Read my post from the beginning, and then again, and again, until you can teach others what Prefetch is.

    Happy Tweaking,
    DV,
    A+, MCSE, CCNP, GSNP, QQLS, PLDB, WWW, PPTP…

  54. Two Points:
    1) Like Ed Bott, I mostly leave my sytem on (or put it in standby). I boot maybe once a week so I do not care about boot time. However, I KNOW that Prefetch improves the performance of many of my programs (Lotus Notes, Firefox,…). I would like to be able to disable just the boot prefetch stuff. I figure this is not possible, but…
    2) I would like to move my Prefetch folder to a different disk, so that it does not keep getting defragged every time I defrag my Boot Disk (read operating system disk). I have tried to move most of the dynamic folders (My Documents, Temp, etc.) to another disk so that defragging the operating system doesn’t take so long. Since the Prefetch folder is “an index to the location of those files on the hard disk” and it is constantly changing depending on my use of my system and it can only hold 128 files, I think you should be able to put it on a different disk. Any chance of this?
    Ed Wilhelm

  55. Well just found this: enable it just for non-boot
    application files (setting 1)
    Still would like to move it to another disk though 😉

  56. Ed,
    The fragmentation that the Prefetch folder creates, to my opinion, is nothing that would make your system suffer. The whole size of the folder is only a couple of MB’s. Plus, once you defragment them they’re already in contiguous sectors so there’s no need to do it again (for them).
    You don’t have to defrag your boot disk often, don’t be so obsessive about these things. Yes, there are a few tweaks you can do to improve overall performance, but over doing it only takes up your time and doesn’t give you what you expect.
    Go back and enable your prefetching to 3. I think you tried to enhance performance by not wanting your hdd to get fragmented, but what you’ve really done is degraded performance by making your hdd heads do more reads and seeks for the instuctions it has to find without the help of prefetch.
    Read my posting above, it’ll help you out dude.

    DV

  57. would one of you web masters tell me how to get rid of a preftech file that constantly asks permission to go to the internet. It comes up in a aol privacy box and states the file has changed since last on the internet, it does this every two-three minutes. Very disturbing, the file is MSVTMLER.EXE. I ran every spayware, adware, virus scan and even deleted it in the folder but it keeps comming back, please some one help me!!!!!

  58. there should be no exe’s in the prefetch folder. my opinion: quarantine the file in your Antivirus software, and even upload the file to their labs to investigate whether it is malicious or not.

  59. DV,
    you seem to be a real master, I’d like to to have you as a teacher 🙂 Your post from 1.3.2006 is the best and complete answer out of all other posts here.
    Keep teaching others! Good work.

  60. David, I’m glad you reached my article! It took me about 2 hours to go through the whole thread.
    And thanks for the plug. You know, even I am sick and tired of all the complicated explanations out there of very simple concepts; MS topics are usually easy to figure out, lower OSI layer topics (Cisco/Foundry/etc), however, are a whole different story.

    Cheers,

    DV

  61. this kind of advice(empty prefetch)reminds me of recent advice that was given to my cousin by a supposedly pc savvy person. this guy told my cousin that having too many shortcut icons on your desktop will slow your pc performance..hehehehe…can you believe that?
    maybe it was the same guy that wrote the article in support of emptying the prefetch folder.same level of intellect there i think.

  62. My path to prefetch came because my new 3.2 ghz 2 gb ram EE Intel pentium 4 would run warmer running a Radio Control flight simulator at 80 to 90 percent cpu util which was expected running scenery through the processor. Then when the machine was idling after converting it to my production online pc, it was causing temperture warnings on the Intel MB. Found that the processor running close to 100percent and a program called as best I can recall, searchfilter.exe which I found was related to prefetch. I don’t recall seeing this program running on my former HP 1 ghz 512 meg pc. So it seems that XP discovering all this capacity was burning it up prefetching, I think.

  63. WVMMRH…

    That is actually partially true.

    A clean, one color desktop is faster than an icon filled, wallpapered one, at least on lower memory systems. That tip comes from way back when lower memory/slower video systems were rather common (9x days–early). And a clean, Spartan desktop was…well, rather boring, but kept marignal systems from bogging down.

  64. Roland, that file had nothing to do with the Prefetch folder. Your system was overheating because a process was running in the background and using up the CPU. It could have been started from any of about 20 different places, none of them in the Prefetch folder.

  65. That I knew, but it was the searchfilter.exe that was up there in 80-90% cpu utilization and that seemed to be related to the heating.
    Had to reconfigure my fans as both the cpu and adjacent sensor on the motherboard indicated overheating.

  66. Roland, first you say:

    Found that the processor running close to 100percent and a program called as best I can recall, searchfilter.exe which I found was related to prefetch. I don’t recall seeing this program running on my former HP 1 ghz 512 meg pc. So it seems that XP discovering all this capacity was burning it up prefetching, I think.

    Nope. Not so. The Prefetch folder only tells Windows how to load the files that a program uses. It doesn’t contain executable files. So I don’t get your point. If this searchfilter utility was doing bad stuff, mucking with the Prefetch folder wouldn’t fix it at all.

  67. “configure them so they don’t start automatically” – so how to go about this?

  68. 1) A Question: How can you tell what program a prefetch file is related to? I have some mysterious prefetch files and I have no clue what program they are related to, and I want to find out if the program is bad news that needs to be taken off the computer.

    2) An answer, at least a part of an answer to Rick:

    Go to control panel then performance and maintainence then administrative tools then services which will open in a new window. You will see a list of local services. Click on view then customize then click on description bar. Doing so will provide you some information about what a service does when you click on the service.

    Click on a service, read the description, then right click on the service and click on properties. Depending on the situation you will see a small window with up to four tabs. The info on the tab that first shows up will tell you whether the service is running or stopped. Above that is a spot called “startup type” that will say automatic, manual,or disabled after it. Before doing anything, click on the tab that says dependencies and it will tell you what programs depend on the service and what programs the service depends on.

    If the service is something that you use, but don’t need to load up when starting, go back to the general tab and click on the little arrow by describing the startup type and click on manual. This will keep the service from loading up when you start windows.

    If you are absolutely dead certain if the service is something that you don’t use at all, click on disable. If a service is running that you know you don’t need running, click on “stop the service” at the upper left.

    IMPORTANT NOTE: Keep track of all changes that you do because you may have to reverse them. I’ve had to a time or two.

    Additional and safer routes:

    SpyBot is a free antispyware program. In advanced mode under tools there is an option for startup entries. Click on this, and if they know the service they will tell you what it is and what it does. If you don’t think you need it to load when starting windows, uncheck the box and it won’t. It is easy enough to reverse it if you mess up. NOTE: Just because they don’t know what a service is doesn’t mean that you don’t need it. It may be related to a program you have that they are not familiar with. I’ve got a couple like that.

    Hope this helps.

    Spring

  69. You can prevent unwanted programs from running during Windows Startup using the Autoruns utility:

    http://www.sysinternals.com/Utilities/Autoruns.html

    Keep in mind you need to be careful not to disable necessary programs like you AntiVirus and Firewall applications.

    1) A Question: How can you tell what program a prefetch file is related to? I have some mysterious prefetch files and I have no clue what program they are related to, and I want to find out if the program is bad news that needs to be taken off the computer.

    A: It can be difficult to tell based on looking in the Prefetch folder since things like installers can temporarily be located there. So it does not represent everything that is intalled and can lead to wasted time tracking down things that only existed during an install. You have no way of knowing if something is good or bad either by looking at the folder. Use the Add/Remove option in the Control Panel and the Autorun utility in combination with Google to track down more information.

  70. Ok, good work Mr.Edd. I’m partially agreed with you, but i have to ask you a question:
    -What do you think about a completely new-installed Windows XP system?
    Of course, it’s clear, clean, fast & makes you open-minded as long as it’s new (really fresh).

    So what makes a Windows XP system slow & bad?
    Surely it’s a mixture of dirty temp, prefetch and the reg keys.

    Then, it’s easy to figure it out, WANNA IT AS CLEAR AS THE NEW?! CLEAN IT!!

  71. Ok, right now my eyes are burning from reading all the info but my question is.

    -couldn’t prefetch be used to start trojans and such perhaps on lets say IE startup?

    I mean there are some crafty little trojans and malware out there. The Subject was lightly commented on and I believe is a big question regarding the removal of SOME prefetch files.

  72. Younose,

    Systems slow down due to installed applications that load things into memory at bootup, HD Defragmentation and Malware/Virus infection. Also as time goes by your HD will slowly wear out. Registry Keys have no effect on performance, Temp Files have no effect on performance and Prefetch files only improve performance. Most used systems need to be cleaned but from Malware/Viruses and installed applications and then defragmented.

    Here is some more on the Registry Cleaning Myth and all the Prefetch Myths:

    http://mywebpages.comcast.net/SupportCD/XPMyths.html

    Regardless you can easily bring your system back to it’s original speed by using a guide like this:

    http://mywebpages.comcast.net/SupportCD/OptimizeXP.html

    Lost A Hour Of My Life,
    Prefetch can not start trojans but they can ironically accelerate their loading. That is because the prefetching is indiscriminant. It will accelerate any applications load regardless if it is malicious. There is another Myth I address on my page:

    http://mywebpages.comcast.net/SupportCD/XPMyths.html

    Malware/Viruses – Some people irresponsibly recommend cleaning this folder due to possible Malware/Virus infection. Malware/Viruses can place an infected file(s) in any folder and the Prefetch folder is no different. Do these same people recommend deleting the contents of the Windows folder because it is a popular location to find an infected file(s)? Of course not, you simply clean or delete the infected file(s) not the contents of the folder. This Myth got started due to the indiscriminate nature of the Windows Prefetcher, which will Prefetch any executable file that you load or loads during Windows start up. Thus it is quite common on an infected machine to find a Prefetch (.PF) trace file in the Prefetch folder with the same name as an infected executable. These files are NOT Malware/Viruses. They are there to improve the load time, in this case ironically, of the Malware/Virus but do not contain any infected code. Once the associated infected executable is deleted, these Prefetch (.PF) trace files do nothing and will eventually automatically be cleaned by Windows.

  73. Good article! I knew about this long before but nevertheless tried it myself how it affects my boot time to clean the prefetch folder.

    I first thought that the system boot was much faster, because the black Windows boot screen was there very short. The blue bar just went one time to the right and the desktop began to load. Before, the blue bar was spinning about 20 or 30 times from left to right.

    This is highly deceptive, because when I got out my stopwatch I found out that with prefetching my system booted more than 10 seconds faster than with the prefetch folder cleaned.

    IMO people believe that cleaning the prefetch folder helps because the boot screen appears for a much shorter time.

    Keep the fight going, Ed. There are still lots of “tech sites” that suggest cleaning out prefetch.

  74. As I predicted, after writing up such an articulate explanation of Windows Prefetch and posting it here, there would be some people who will suggest to delete the folder’s contents.
    I, personally, won’t worry about them and let them suffer from their own ignorance.

    “Only two things are infinite, the universe and human stupidity, and I’m not sure about the former.” Albert Einstein

    DV

  75. Ok…why all the interest? Because we all installed windows XP and were happy with boot up times…for a couple of weeks. Now our systems are sluggish. I run a 2.8Ghz P4 with 2GB of RAM and nearly a terrabyte of hard drives. I HATE my boot up times. I have a MAC Mini from Apple. It boots up and shuts down very quickly with 512MB of RAM. I am not a Machead but there is something seriously wrong with Windows that it gets so sluggish that a re-install is necessary to fix its lame boot times. I support a network and my users all complain about the same lousy boot times. Leaving a system on for months at a time is suitable for my servers but would cost my company thousands per year if we left every PC on in the office 24/7/365.

    We use diskeeper and windows defrag. We have a minimum of productivity and email apps yet Windows XP boot time s keep gettign longer. To fdate I have read NOTHING that will explain how to get the system running quickly again without reinstalling.

    BTW the MacMini continues to be fast to boot as the Mac OS handles apps very differently, much more like DOS. The OS runs a stable platform on which apps open and close withourt embedding code all throughout the OS, so the OS doesn’t have to chug through all sorts of nonsense. When I want to delete an app I trash the directory. No need for an uninstaller to go grab orphaned files scattered through out the OS. Nice.

    To clarify I support 6 Windows servers, 2 Unix servers, 45 PCs and 1 Mac. I need answers and am not wanting to start a religious war on why the Mac is superior.

  76. I’ve a question about “defrag c: -b”
    The -b switch apparently does an optimization of the prefetch
    files. My question is this. Why isn’t it documented
    by Microsoft? KB283080, which documents defrag’s
    command line switches, makes no mention of it.

  77. Kiasu,

    Something is seriously wrong with your systems if their boot time is being degraded like that. Malware infection is a possibility but you never have to reinstall the OS to correct boot issues. I’ve seen many systems where people ran useless “tweak” programs that broke the prefetcher ect… In most cases though it is simply too much software being loaded at startup. I strongly suggest using Autoruns to clear out the crap.

    Dave,

    The “defrag c: -b” Windows performs automatically at system idle times (after 10 minutes of inactivity) roughly every 3 days. It simply optimizes the location of the files located in the layout.ini. This is part of the Prefetching optimization. When you run the Bootvis “Optimize” feature it does the same thing.

  78. Found out about the emptying the prefetch folder to speed up the boot process.Running winxp pro,and emptied the folder.Used to take about a minute to boot up,now its about 15 seconds.Tried this twice with the same results.I know unchecking everything in msconfig speeds it up also, but something about deleting everything in the prefetch folder works also.

  79. Slick,

    That is completely impossible unless you have Windows Prefetching broken in some manner or you have corrupted prefetch files, which indicates a problem with your system.

    Unchecking “everything” in Msconfig can be dangerous if you do not know what it is for.

  80. One startup is always different from the next (with auto updates of various components in efect) I cleen the system often, turn off auto updates (but check for them regularly). Turn on the computer and go make the coffee. I have no problem with slow Startup as long as when I am running it is fast. Rix

  81. Booting with prefetching, everything gets done much more quickly, because seek costs have been significantly reduced; high I/O efficiency comes from improvements in layout and from issuing the I/O as a single large “shopping list”:

    Instead of listening to everyone putting their “Two Cents” in and trying to weigh up all the response form the educated to the submlimely ridiculous, I chose to go straight to the horses mouth for advice, afterall these people wrote the system so one would take it they know what their doing. Guess what? its better to just leave it alone. A benchmark test was done visit for the results:
    http://www.microsoft.com/technet/prodtechnol/winxppro/evaluate/xpperf.mspx

    I will be leaving mine alone!

  82. Rick,

    What you have loading at startup is irrelevant to Prefetching. Prefetching will optimize whatever it is you have loading. It also dynamically adjusts when things change. So your point is moot. What do you “clean often” because if it is the prefetch folder then you are intentionally slowing down your system each time you do it. Hey if slowing down your system is something you want to do, go right ahead.

  83. Kudo to Ed Bott for such a complete treatment of this subject and for patiently answering the same questions numerous times.
    My question is, why would Microsoft put this performance enhancing feature in if it didn’t enhance performance? Historically, they’ve taken flack for long start up times. This scheme seems to have been added to improve that (and other performance issues) so I’ve got to assume it works or they wouldn’t have put it in. The burden is on those that want to take it out to prove that MS was wrong. That hasn’t happened so far as I can see.

  84. Ok, i’m a dummy. i now realize that i should NOT have deleted the “prefetch” files. When i did this, i also deleted the layout.ini…………. how do i recreate this file and return it back to normal. i can’t even think about doing a system restore, as i have made many other changes since then that i do not want to roll back. Also, it has been more than three weeks and many reboots (more than 15) and NO “prefetch” files have been recreated. WHY, WHY, WHY!!!……… It is all so confusing.

Comments are closed.