Recommended Posts

So if you were like me at first you thought the disk trashing was just the good ol searchindexer.exe.

Well today I decided to find out what was really causing this and to my surprise in the resource monitor I noticed one process accessing all my drives. Well I said, I only have C: enabled for indexing.

Long story short.

SuperFetch is the culprit. I loads recently access files into memory. On a 4GB machines this means Windows grinds for a while.

Just disable SuperFetch in Services and you will not have that disk trashing. You will also notice on the performance tab you have more free memory because all the files are not loaded into memory.

Anyone know how to clear the cache for SuperFetch?

Kent

Link to comment
https://www.neowin.net/forum/topic/492987-disk-thrashing-after-login/
Share on other sites

Ahh. So that's the culprit. And it's supposed to increase performance over time? :shiftyninja: Thanks for tip anyways.

For its location: maybe it's those DB files in Windows\Prefetch?

There is no cache for Superfetch. I get the impression it's largely an in-memory log , of sorts, of programs and files that are used often and thus retained in memory. It mighty have a database but that shouldn't take up much room (neither does pre-fetch for that matter). For most people with ~1GB Ram, there should be relatively little disk thrashing at at startup, at least not attributable to Superfetch. I have it running and I rarely see drive access at all. As for memory usage, as soon as a non-cached program needs the memory, it will be made available so that's a non-issue.

  • 5 months later...

Just raising this for anyone who missed it (was posted before Vista's customer launch).

I've just disabled this service after it started to cache a big game data file immediately upon start up (I halted it when the Resoucre Manager was showing about 250 MB loaded), because according to statistics, Vista thought I was going to play that game. The problem is just that I'm no robot and don't work on a schedule. I think the design of this feature is inheretly flawed and what's worse is that in usual "dumb it down!" fashion, it's 100% unconfigurable. Why can't I restrict it to e.g. C:\Windows + Program Files? Does it really have to cache all my video, music, etc? These do not have long start up times as they are streamed and not even applications. I have 2 GB RAM, for the record.

It has earlier tried to cache a.. get this.. incomplete P2P download of a few 100 MB's. Like I was ever going to run that before it was done.

IMHO, there's too much guessing for too much of a performance cost on this one. And don't tell me a hard drive going nuts isn't costing me any performance, especially while it does it while you are working as opposed to NT Defrag and such services.

And yes, I don't think there's a file cache for this service, the whole point is to load data into memory for faster access... In case you need it... Which you may not.

Edited by Jugalator

The only problem with Superfetch causing HD thrashing is if your hard drives are loud and you can't stand hearing them.

Vista has prioritized IO now, which means that all the IO that Superfetch is doing is at very low priority, similar to setting a process to low CPU priority. This has almost no negative impact on your system and should not increase boot times.

As for Superfetch caching files that you don't need, or expecting you to load up a game right after boot, you have to remember that Superfetch is learning what programs/files you use on a day to day basis and it may take some time for it to tune itself to your daily use. While some users may do different things on a daily basis, there are a lot of people that have some routine that they follow, and this should help decrease loading times for applications and files.

We, as PC users, have been trained to think that a thrashing hard drive means that your system is being slowed down, waiting for file IO to complete. Now with prioritized IO, background processes that access the hard drive, such as indexing or caching, will not get in the way of active processes trying to access files and should not impact their performance.

My problem with SuperFetch is really that it picks targets that I know I don't need to have cached, and in case it would like to cache stuff, there would be better choices. For example, caching a partial download, or something that streams. I wish I could at least tweak it to use my RAM for better things. Or if it can't, at least leave my hard drive alone and prolong its lifetime.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.