freePCtech (click here to return to the first page) Search the
    siteHelp on using this siteHome

    Articles / Reviews

Windows XP and the great Prefetch Myth

by Drew Dunn

About once a year, several tech sites trot out the story that deleting the files in your prefetch directory will speed up your Windows XP system. There is a good reason that they're there - and deleting them may actually slow down your system!

The prefetch directory is a subdirectory of the windows directory on your hard drive. It's populated by up to 128 files that Windows use to index program locations so that their loading time can be improved. Depending upon some registry settings, the prefetch directory is either not used, used during boot only, used only when applications are launched or for boot and application launching.

The files in the prefetch directory identify how to populate pages of memory with the executable application's data. The files are based on the way that the applications were previously loaded and give Windows a shortcut so that it doesn't have to decide how to populate memory every time a program launches.

Now, you can delete that directory, but Windows will recreate it and reindex the files as you load applications - and that means that you'll be slowing down your system as it recreates the information. Don't do it! It really does serve a good purpose!

Is there ever a reason to delete it? Maybe. Under normal use, if you don't run a program for a long time, say a couple of months, Windows will automatically delete the corresponding prefetch file. But if you make some significant changes to the programs on your system, it might behoove you to delete the files and rebuild the files. Here's how:

First, delete the files in the prefetch directory. Next, use the Computer Administration control panel to set the Task Schedule service to automatic (and start it, if it's not running). Then, in a command window, type "rundll32.exe advapi32.dll,ProcessIdleTasks" (without the quotes, of course).

That will reindex the prefetch folder with files associated with the current applications and drivers.

There is a registry key that controls the behavior of the prefetch directory. It is HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\PrefetchParameters.

The EnablePrefetcher dword sets the function of the prefetch system. The available dword values are:

0 = Disable
1 = App launch prefetch
2 = Boot prefetch
3 = Both 1 and 2

Unless you have less than 512MB of memory, you should use option 3. If you have less than 512MB, then use option 1.

Why do myths like this pop up? I honestly don't know, but it's a real disservice to anyone who is trying to squeeze a little extra performance from a system. The best advice that I can give is that if you see a web site promoting some new way to increase the performance of your system, get a second opinion. And, especially, look for articles that don't agree. And if you make the change, use Windows XP's restore point utility to create a system restore point so that you can recover from a mistake!


Articles / Reviews



Free PC Tech

Copyright The NOSPIN Group, Inc. 1991-2006.  All rights reserved.