Windows Prefetch Optimisation Myth Busted

Windows Optimisation myths are nothing new. About half a decade back, I had covered Windows XP optimisation myths. While some of these myths are harmless, others can have a negative impact on system performance and stability.

One myth that has been floating around for quite some time is related to the Windows prefetcher. Prefetching was introduced by Microsoft in Windows XP and was improved upon in Windows Vista and 7. The prefetcher is a part of the memory manager. Its main objective is to reduce program launch delays and speed up Windows boot process.

The prefetcher works by remembering what data is requested by a process during launch and tries to improve application launch times by serving the data in a more optimised fashion in the future. It does the same thing during system boot. It records the files and instructions requested during the boot process and uses this to reduce boot times.

The Windows prefetcher was designed to work on its own, without user intervention. Unfortunately, some pundits decided that they knew better. A popular belief seems to be that the prefetch folder accumulates junk over time and should be flushed periodically. This is not a new tip. In fact, it has been around since the days of Windows XP. Several experts have repeatedly debunked this myth, including Ryan Myers from the Windows Client Performance Team. Yet, the myth has managed to persist.

The reason why you should not delete the contents of your prefetch folder (WindowsPrefetch) is that, it cleans itself automatically. The prefetch folder contains a maximum of 128 entries and as a result if you don’t use an application for a period of time, information related to it will automatically be purged.

Deleting the prefetch folder is not only stupid but also counterproductive. The folks behind TuneUp Utilities performed some testing and found that deleting the prefetch folder had a considerable impact on system performance.

Windows-Prefetch-Optimisation-Myth

In short, don’t tinker with Windows prefetch algorithm. Do NOT clean your prefetch folder or perform some sort of prefetch optimisation – even if your trusted System Optimisation utility tells you to.

, , , ,

2 Responses to Windows Prefetch Optimisation Myth Busted

  1. used tires February 20, 2011 at 2:30 pm #

    Yeah thats the thing about these tips that amaze me… i mean Microsoft and the coders should know alot better than us.

    -Jean

  2. Bcruz July 4, 2011 at 11:35 am #

    This article has some points, but also is missing a bigger picture. As this article has mentioned, deleting the Prefetch folder will cause performance issue with your system; however, deleting the contents within the Prefetch folder actually helps the performance of your system. This is NO MYTH! Let me ecplain what I’m talking about.

    What I’m actually refering to and am more personally concerned with is actual boot-up time. Like was mentioned the function of the Prefetch folder is to “pre” load previously accessed programs in order for the those programs to load faster once they are used again. BUT… and a BIG BUT… This process does in fact slows down the boot time if contents with in the Prefetch folder are left to accummulate over time. Now Windows XP’s Prefetch folder reputation is true with the fact that XP’s version of Prefetch didn’t do as well with the auto clean process of the folder, but with Vista, Microsoft did improve on how Vista’s version of the Prefetch folder (also known as Superfetch) with it’s auto clean process.
    But to my main point of this posting, which is that I am refering to mostly is actually with those who are more interested in on how long their computer takes to boot up over the actual load time of programs.

    (Let me also point out that even though I mention about deleting the contents of the Prefetch folder and not the Prefetch folder itself, I also wanted to point that the one item that should NOT be deleted from within the Prefetch folder is the “ReadyBoost” folder (C:\Windows\Prefetch\ReadyBoost\). This folder is what the OS uses and accesses during the bootup process. This one folder should be left alone. All else content from with in Prefetech should be deleted)

    Now that I’ve pointed that out…. I wanted to mentioned that what I am stating has nothing to do with those individuals that are concerned with how long a program takes to launch. I’m addressing this post to those who are more into how long their computer takes to boot up and that, once again, cleaning everything out of the Prefetch folder except for the ReadyBoost folder, will improve your boot up time.

    As for my interests…. I’m the type of individual that is rather more concerned with how my computer performs overall rather than how long a program takes to launch. I would rather how my memory be clean and clear of programs that I’m not currently using and thus saving that available memory space for other items I want to use. Even if, I use a specific program daily, only loading the program into memory when I am using the program is far better than having the program in memory during the times I’m not using the program. Being able to double click on the “my computer” icon and enter into Windows Explorer quickly compared to launching IE 8 or 9… I rather be able to get into WE faster, instead of having to watch the stuff flash light icon spin around while WE loads only because my memory is occupied with other programs that I’m not using that day.

    Please keep in mind, I’m speaking from experience. I’ve been in the IT industry for over 16 yrs and I hold an MCSE. I have worked with all of Microsoft’s OS’s from as far back as Windows 3.11 and even DOS. SO I’m old school, but I’m update with the new stuff as well.

More in Tips and Tricks (14 of 28 articles)