Windows PreFetch

Category: Windows

"I've heard that Windows XP will run faster if you disable something called PreFetch. Apparently Windows remembers everything you have done and, in a misguided attempt to be helpful, pre-loads all the files and links when XP boots. What's your opinion on disabling PreFetch?"



The Hot List!
Check out this week's
most popular articles.

Recommended Downloads Check out these
FREE trial downloads


RoboForm memorizes and securely stores all your passwords. Enjoy one-click logins, complete checkout forms with one click. This is one program I use all day, every day!




Slow computer? Diskeeper 2010 means a clean disk, unprecedented speed and reliable efficiency! Download the free trial and see what a difference it makes for you.

Should I Disable PreFetch?

To Prefetch or not to Prefetch? In a word... NO! This is the stuff of myth and legend. If you disable the PreFetch facility in Windows, it will cause a NEGATIVE impact on performance for most systems. Commonly used applications will take longer to load because you turned off the caching.

Cleaning the pre-fetch folder is not necessary. Windows manages it automatically, dropping out entries that are old or unused. In addition to making your frequently used programs load slower, it will also INCREASE bootup time because Windows has to re-copy all the page files you "cleaned out".

Everything I have read indicates that the default setting for the Prefetch parameter is optimal for most users. Additionally, the folks from Microsoft say that fiddling with the Prefetch setting in the Registry or the contents of the C:\windows\prefetch or C:\winnt\prefetch folders is COUNTER-productive, and that adding a "/prefetch:1" flag to shortcuts that launch a program will NOT make it load faster. It may even cause a program to crash. Here's a snippet from taken from the Microsoft website:

"Windows XP monitors the files that are used when the computer starts and when you start applications. By monitoring these files, Windows XP can prefetch them. Prefetching data is the process whereby data that is expected to be requested is read ahead into the cache. Prefetching boot files and applications decreases the time needed to start Windows XP and start applications."

Here's another excellent page that gives solid info from actual Microsoft developers and debunks some of the misinformation people are passing around as fact: http://www.edbott.com/weblog/archives/000743.html

Bottom Line: Let the operating system manage the pre-fetch cache -- that is its job. If you want more tips on making Windows run faster, don't miss http://www.askbobrankin.com/make_windows_xp_run_faster.html.

Got comments on the PreFetch controversy? Post them below...


Need more tech support?

Search for help with computers, gadgets,
or the Internet!

 

  Search For Tech Help

Send via Email Make a Comment
Follow me on Twitter Buy Bob a Snickers
Save as Favorite Send to Printer

Posted by Bob Rankin on October 4, 2006 07:48 PM


Need More Help? Try the AskBobRankin Updates Newsletter. It's Free!

Prev Article:
Convert iTunes Videos to MPEG
Send this article to a friend
The Top Twenty
Next Article:
Cure For Hiccups

Link to this article from your site or blog. Just copy and paste from this box:

Related Keywords: Windows   prefetch   cache   windows   performance  

Most recent comments on "Windows PreFetch"

(See all 23 comments for this article.)

Posted by:

Frank McGee
29 Sep 2007

Happened to come across this odd behavior on my home system; had multiple wifi LAN cards, and seemed that one of them in particular was mis-behaving. Attempted to uninstall the driver for the misbehaving one, and this failed. Had to go to "Safe Mode" because I couldn't delete the directory that contained the program files (under "Program Files").

Rebooted. THERES A GHOST ON MY BOX ! It's still running ! How could this be ? Looks like there's still a copy in the prefetch. Will clear the prefetch and see if it's really gone now. Bottom line - looks like this great MS software loads images of files that aren't even on the disk anymore. It isn't even sitting in the Recycle bin; it's completely gone. Yet it's memory lives on in the prefetch. So I'll clean this crap up and see if things improve.

EDITOR'S NOTE: I'd be very surprised if the problem was Prefetch. My guess is that that failed uninstall has something to do with the driver still being loaded. Let us know!


Posted by:

Stephen
01 Feb 2008

How can you stop Prefetch causing IE8 to remember the old height of an image even when the actual image height has been altered? Even if an image is rotated through 90 degrees using Paint Shop Pro and re-saved, Prefetch seems to keep the old height for IE8 to use. I deleted wscntfy.exe...pf in Prefetch when the computer was not running Windows and sometimes it worked and allowed IE8 to see the correct height, but sometimes it did not. The only way I could get IE to see the new height was to rename the folder containing the image.


Posted by:

DjLizard
08 Feb 2008

Finally, a website at the top of Google results that actually has the right freaking answer.

For those who are having issues OR want to test *properly*, do this *first*:
Start > Run... >
rundll32 advapi32,ProcessIdleTasks
(That last part is case sensitive.)
This will allow the prefetcher to clean itself out, optimize your MFT (to remove placebo speed boosts you mis-attributed to deleting prefetch entries), and anything else that has been waiting forever.

So: ProcessIdleTasks, reboot, reboot again and time this second reboot. Delete all your prefetch entries and then time it again.


Posted by:

harkpabst meliantrop
27 Feb 2008

I'd like to note, that all this applies to desktop computers. If a machine is primarily used to run an application server, just the process of monitoring used files and keeping the prefetch data could well be counter-productive. Still, this doesn't apply to the general home installation.


Posted by:

Bryan Molinelli
04 May 2008

None of this "don't delete prefetch files" advice makes much sense. Common logic: prefetch files, when combined, take up megabytes of disc space that you most likely need to use. These "trace" files are only duplicated again and again - for instance, if you use your registry mechanic/cleaning program, a registry mechanic trace file shows up in prefetch - then use it again, and a minute later there's another. What's the point? Also there's mention of Windows automatically deleting unused files from prefetch after a while. This gives Windows too much credit. I noticed after a week that almost none of the files were being automatically edited, and I run a pretty smooth ship on my computer, so I could only blame Windows. All things considered, I'd say clean out prefetch as often as possible. Your computer can run fine without the files stored there "helping" it - and you're freeing up at least a few hundred kilobytes. Not much, but every little bit counts.

EDITOR'S NOTE: Dude, the 80's are gone. Hard drives are bigger, faster and cheaper. You can get a TERABYTE drive (1000 gigabytes) for $200 now. Don't sweat the kilobytes.


Posted by:

Larry Miller
29 Jul 2008

The author is correct, "cleaning" prefetch files will impair performance. However, many responders clearly do not understand how prefetch really works. Application prefetch files are used to optimize the loading of applications, not preload them. These files are referenced only after application launch has been initiated, not at boot time. A prefetch file will NEVER cause an application to load. Rarely used or unused prefetch entries will have virtually no impact on performance.

When an application loads, the system does not load all of it into memory immediately. It is loaded only as needed and then cached for later use. This system of loading isn't particularly efficient. The prefetch system keeps track of an application's initial requirements and saves an index in the associated prefetch file. On later program loads the system is able to "prefetch" this data into cache before it is actually required, thus improving performance. But note well, none of this takes place until application launch has been initiated. Deletion of prefetch files will deprive Windows of a valuable resource.

Microsoft's use of the term "prefetch" was unfortunate. While technically true, it has caused many to misinterpret it's meaning. As a result we have the widespread "clean the prefetch" myth.

Larry Miller
Microsoft MCSA


Posted by:

WhamLlama
31 Jan 2009

How is anything in prefetch loaded before the kernel? No way! PreFetch itself obviousely relies on it. Also, people here claim faster startup time by haveing the correct (word of emphasis) files in the PreFetchand and claim to have timed it so that it is an unmistakable fact. My point is certain files should be there; most shouldn't and there should be a fairly user-friendly way to achive this. Volvan was onto something.


Posted by:

Benny Pendentes
14 Feb 2009

The only useful piece of advice in this article is that people who don't know what they are doing shouldn't mess with the guts of their system. The rest of it is ill-informed rubbish that perpetuates ignorance.

As always, each person should do what best suits their system and the way they use it. For me, that means disabling prefetch, which I have done since prefetch first appeared, and for the way I use the computer this gives a noticeable performance burst. When I worked in my uni comp lab, we turned off prefetch on half of the machines as a sort of controlled trial. Within a week people were clumped up on the side of the room that had prefetch turned off, because they got to where they wanted faster.

If you use the same programs all the time, prefetch is great. If you are using different programs all of the time, prefetch slows your system down because it is guessing what you are going to use next, and it is guessing wrong.

Don't believe me, and certainly don't listen to the pseudoadvice in the article. TRY IT and see for yourself if it works for you. If there weren't any good reasons for turning off prefetch, there wouldn't be a switch that does so.

EDITOR'S NOTE: Benny, your "controlled trial" doesn't really help most people in real-world situations. You said turning off prefetch is helpful "If you are using different programs all of the time." That might be true in a computer lab where each computer has many users on a regular basis. But that doesn't describe the majority of computers in use. Most computers are used by one person, and they DO tend to use the same programs over and over.


Posted by:

bayo
25 May 2009

please i need you guys your help, a program keeps deleting the contents of my prefetch folder, how do i stop the from deleting the contents, and let windows regulate it. because my tune-up utilities program keeps detecting a problem with my system's prefetch folder.


Posted by:

Ellis Clevenger
28 Jul 2009

I have a single-user PC. I delete files from pre-fetch (clean pre-fetch) on a regular basis. Once a week. I clean all portions of my computer once a week. When I do this I notice a marked improvement on the downloading of programs and applications. The best advice I can give, I repeat from an earlier posting, IT IS UP TO THE INDIVIDUAL--BUT KNOW WHAT YOU ARE DOING.


There's more reader feedback... See all 23 comments for this article.

Post your Comments, Questions or Suggestions

*     *     (* = Required field)

    (Your email address will not be published)
(you may use HTML tags for style)

YES... spelling, punctuation, grammar and proper use of UPPER/lower case are important! And please limit your remarks to 3-4 paragraphs. If you want to see your comment posted, pay attention to these items.

All comments are previewed, and may be edited before posting.

NOTE: Please, post comments on this article ONLY.
If you want to ask a question click here.


Ask Bob Rankin Home Page
RSS   Add to My Yahoo!   Subscribe in NewsGator Online   Feedburner Feed
Subscribe to AskBobRankin Updates: Free Newsletter
Copyright © 2005 - Bob Rankin - All Rights Reserved


Article information: AskBobRankin -- Windows PreFetch (Posted: October 4, 2006 07:48 PM)
Printed from: http://askbobrankin.com/windows_prefetch.html
Copyright © 2005 - Bob Rankin - All Rights Reserved