Let’s start this one off with a little, practical exercise. Are you with us? Good! Right-click on your taskbar, and select “Task Manager”. Now, take a good look at the numbers you see under the “Performance” tab. Let them sink in a bit.
This is unbelievable!
On a machine with 2 GBytes of RAM, how can there be 2 MBytes free? What’s behind all of this?
Even if you have twice as much memory, you will probably only have a couple of hundred MBytes available. This comes as an absolute shock to every computer user. While you’re only running a browser or listening to music, Windows Vista or Windows 7 consumes nearly all of your precious RAM. This fact led even Computerworld to pick up a Devil Mountain Software research study, claiming that Windows 7 maxes out memory and thus slows down the computer. To quote the research:
“On average, 86 percent of Windows 7 machines in the XPNet pool are regularly consuming 90 percent to 95 percent of their available RAM, resulting in slow-downs as the systems were forced to increasingly turn to disk-based virtual memory to handle tasks.”
Have you ever heard of SuperFetch?
The truth is—this is by design! Back in 2007, Microsoft introduced Windows Vista and one of its new features, SuperFetch, which is responsible for taking up as much of your computer’s memory as possible—albeit for a good cause!
- SuperFetch predicts which applications you will run next and preloads all of the necessary data into memory. It also does that with boot files. This helps prevent accessing the slower hard disk too often. The result? Programs launch much quicker, and Windows boots faster.
- SuperFetch’s prediction algorithm is able to determine which application users will open by a certain time of day and by a certain day of week. It is able to predict up to the next three applications that the user will launch.
- SuperFetch is smart—it prioritizes the programs you currently run over the background tasks, such as defragmentation. These tasks run when the computer is idle, but when they are complete, Windows SuperFetch populates the memory again.
- SuperFetch is dynamic—it adapts to your needs all of the time. So, if your favorite programs change over time, SuperFetch is able to quickly adapt to this.
Windows SuperFetch populates the computer’s memory with this preloaded information, to speed up programs and Windows features. So, what’s the benefit for you? Your favorite programs—for example, your Web browser, your media player and your e-mail application—are likely to start faster after a couple of days. Don’t worry, even if you install a new application, SuperFetch will not have a negative impact on performance. As soon as the new application demands memory, the SuperFetch data gets flushed. As far as this program is concerned, the memory is empty.
If you’re familiar with the Windows kernel, we recommend this interesting video from MSDN’s Channel 9. Michael Fortin from the Windows Performance Team talks about what Microsoft had in mind when developing SuperFetch and similar performance technologies. A little side note: Michael also talks about how a computer becomes slower over time due to the installation of a lot of programs (this is at about 20 minutes into the video). The TuneUp Blog team recently proved this theory in our post titled “How 200 Programs Slow Down Your PC“.
What happens when you disable SuperFetch?
Readers should know us by now. We don’t just talk theories; we test them intensely. So, we decided to disable Windows SuperFetch on one of our test machines and compare the performance of both machines. First of all, as expected, the Task Manager tells us that we now have about 600 MBytes of memory free.
This is bad! An important part of your computer is not being fully used. This is like having a 200hp engine in your car, with only 140hp being used. What impact did disabling SuperFetch have on our system? Boot performance went down immensely. Usually, this process took about one and a half minutes on our test bed; with SuperFetch disabled, boot time went up to exactly two and a half minutes.
We also compared the startup performance of a couple of applications, including Outlook 2010 Beta, which needed five seconds longer to start and navigating between folders felt sluggish. Launching even the very slim Google Chrome browser took about seven seconds, whereas the original test only took four seconds. This is not good.
We can go on and on, but you get the point. Although we have more memory, performance actually noticeably decreased. SuperFetch in Windows Vista and Windows 7 is a good technology that helps speed up your entire system—and should not be disabled.