• Some users have recently had their accounts hijacked. It seems that the now defunct EVGA forums might have compromised your password there and seems many are using the same PW here. We would suggest you UPDATE YOUR PASSWORD and TURN ON 2FA for your account here to further secure it. None of the compromised accounts had 2FA turned on.
    Once you have enabled 2FA, your account will be updated soon to show a badge, letting other members know that you use 2FA to protect your account. This should be beneficial for everyone that uses FSFT.

Superfetch with SSD

GotNoRice

[H]F Junkie
2FA
Joined
Jul 11, 2001
Messages
12,826
What are your thoughts on using Superfetch with your SSD?

I've always heard that you should disable it, but I've never heard a logical explanation as to why. I know it was meant primarily to speed up accessing files from mechanical hard drives but loading from RAM is still faster than loading from an SSD. I heard it wears out your SSD faster, but wouldn't it be mostly reads? I've used my SSD for 2 years now and media wearout indicator is still at 98% - i doubt I'll be wearing out my drive.

So I've just kept superfetch enabled. Yesterday I installed the latest SSD Toolbox and it again recommended that I disable superfetch. It's hard for me to break away from the logic that intel knows best when it comes to it's SSDs but I would still like to understand why Superfetch is somehow bad when using an SSD.
 
If I remember correctly, when I did a fresh install of Win7 on my Corsair Force 3 SSD at work, Win7 automatically disabled the superfetch service. I'd say disable it.
 
If I remember correctly, when I did a fresh install of Win7 on my Corsair Force 3 SSD at work, Win7 automatically disabled the superfetch service. I'd say disable it.

Well I'd still like to know the reason why I should disable it. I've never been the kind of person that just reads a guide or something and follows recommendations without actually understanding what is going on.

Also I don't use my SSD directly, but rather, it functions as my cache drive using SRT on my Z68 motherboard. Depending on what the actual reason for disabling superfetching on an SSD is, it may or may not apply given my exact circumstances.

Another reason why i'm curious about this is because I'm probably going to be upgrading from 8GB to 16GB RAM soon. Since all the games I play are still 32-bit and thus individually limited to 2-4GB the only thing I stand to benefit from when upgrading is that supefetch would be able to cache more stuff - but obviously not if it's disabled...
 
Last edited:
I think the logic is that you disable it for the SSD, but leave it on for the other drives. By disabling it on the SSD you have more RAM available for caching programs from the HDD, which benefits more from Superfetch than the SSD would (since it has basically zero seek time). That's the only thing I can figure that makes any sense, because no matter how fast the SSD is, RAM is still faster - and unused RAM is wasted RAM.
 
The way I understood it was that if you get more than 4MB/sec random read, windows should automagically disable the superfetch service, since it's only there to cache commonly accessed shtuff.
 
Well I'd still like to know the reason why I should disable it.

It's not that it's "bad" to have it on, its just unecessary on an SSD which operates entirely differently in how it handles data throughput compared to a platter HD. Superfetch was designed to overcome access time problems that only platter HD's have, it's simply not needed for an SSD. (As noted below, some first gen SSD's had issues still as controllers were not all they could have been, but that's no longer an issue with modern SSD's). The main reason to get an SSD is the near zero access time on random reads.

Per Microsoft.....

By default, Windows 7 will disable Superfetch, ReadyBoost, as well as boot and application launch prefetching on SSDs with good random read, random write and flush performance. These technologies were all designed to improve performance on traditional HDDs, where random read performance could easily be a major bottleneck. See the FAQ section for more details.


FAQ: Will Superfetch be disabled on SSDs?

Yes, for most systems with SSDs.

If the system disk is an SSD, and the SSD performs adequately on random reads and doesn’t have glaring performance issues with random writes or flushes, then Superfetch, boot prefetching, application launch prefetching, ReadyBoost and ReadDrive will all be disabled.

Initially, we had configured all of these features to be off on all SSDs, but we encountered sizable performance regressions on some systems. In root causing those regressions, we found that some first generation SSDs had severe enough random write and flush problems that ultimately lead to disk reads being blocked for long periods of time. With Superfetch and other prefetching re-enabled, performance on key scenarios was markedly improved.

Taken from......

http://blogs.msdn.com/b/e7/archive/2009/05/05/support-and-q-a-for-solid-state-drives-and.aspx
 
I didn't know that it was possible to enable it only for specific drives?

I didn't know either. There doesn't seem to be an option for this; you can either have the service running or not running.

To be honest, for all that I've read about tweaking SSDs, there doesn't really seem to be a definitive stance on Superfetch. It's either "yeah, might as well disable it, since it's not really doing anything" or "there's really no need to disable it since it knows not to mess with SSDs anyway".

The only consistency between these two arguments seems to be that SSDs aren't really helped or hindered by it...so in cases where people are running an SSD boot/system drive and an HD data drive, isn't having it turned on the obvious choice?
 
I didn't know that it was possible to enable it only for specific drives?

Yeah, I don't know - I was just trying to think of reasons why you'd want it off for SSDs, and that was the only thing I could come up with. I mean, it probably doesn't help much with a SSD, but it certainly doesn't hurt - so why bother turning it off?

The only thing definitive I've ever seen on it is that blog from MSDN, which says:

Will Superfetch be disabled on SSDs?

Yes, for most systems with SSDs.

If the system disk is an SSD, and the SSD performs adequately on random reads and doesn’t have glaring performance issues with random writes or flushes, then Superfetch, boot prefetching, application launch prefetching, ReadyBoost and ReadDrive will all be disabled.

Initially, we had configured all of these features to be off on all SSDs, but we encountered sizable performance regressions on some systems. In root causing those regressions, we found that some first generation SSDs had severe enough random write and flush problems that ultimately lead to disk reads being blocked for long periods of time. With Superfetch and other prefetching re-enabled, performance on key scenarios was markedly improved.

Superfetch appears to be off on my system (the Superfetch service is disabled) but something is still caching 4GB of my RAM.
 
Well, doesn't superfetch and the other services like this read some type of file to know which files to load, like a database or something? What if it takes extra time to read that file, then go get the data, over just going and getting the data with an SSD. I know it wouldn't be much time, but that is the only thing I think it is doing.
 
I've never really understood the reasoning behind disabling it either, I doubt it'd hurt anything, they probably just consider it redundant... I suppose they might be weighing the relatively minor access time difference between a SSD and RAM vs the time it takes to flush the cache when the memory's needed for something else? Dunno...
 
Back
Top