Disable Superfetch & Prefetch for SSD in Windows 10/8/7

In this article we will see how Windows 10/8/7 treat Prefetch and SuperFetch on Solid State Drives. Yesterday we saw how Windows treats Defragmentation on Solid State Drives. Before we start, let me make it clear that it t is not a good idea to disable SuperFetch or Prefetch when using traditional Hard Disk Drives – but for Solid State Drives, it is different!

SuperFetch, Prefetch & SSD in Windows

Every time  you run an application in your PC, a Prefetch file which contains information about the files loaded by the application is created by Windows operating system. The information in the Prefetch file is used for optimizing the loading time of the application in the next time that you run it. SuperFetch attempts to predict which applications you will launch next and preloads all of the necessary data into memory. Its prediction algorithm is superior and can predict which next 3 applications you will launch by what time in a day.

In short SuperFetch and Prefetch are Windows Storage Management technologies that provide fast access to data on traditional hard drives. On Solid State Drives they result in unnecessary write operations.

Windows 7/8/10 therefore by default will automatically disable SuperFetch and Prefetch, once it detects an SSD on your system.

Disable Superfetch

The SysMain service is the one which is related to Superfetch. Its job is to maintain and improve system performance over time. It is found in the System32 folder.

Should one for some reason need to manually disable them, this is how one can disable SuperFetch. Run services.msc to open the Services Manager. Scroll down to Superfetch service, which  is responsible for maintaining and improving the system performance over time.

Double-click on it to open it Properties box. Click on Stop to stop the process. Make the startup type Disabled and click on Apply.

disable-superfetch

You will have to restart your computer for the system changes to take effect.

Disable Prefetch

To disable Prefetch in Windows, Run regedit to open the Registry Editor. Navigate to the following registry key:

HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Memory Management \ PrefetchParameters

disable-prefetch

Double-click on EnablePrefetcher in the right side to open its DWORD value box.

The possible values for EnablePrefetcher are:

  • 0 – Disable Prefetcher
  • 1 – Application launch Prefetching enabled
  • 2 – Boot Prefetching enabled
  • 3 – Application launch and Boot Prefetching enabled

The default value is 3. To disable Prefetch, set it to 0. Click OK and Exit.

Incidentally, you can also disable or tweak the Suoerfetcher here – you will see the EnableSuperfetcher DWORD just below it.

The possible values for EnableSuperfetch are:

  • 0 – Disable Superfetch
  • 1 – Enable SuperFetch for boot files only
  • 2 – Enable SuperFetch for applications only
  • 3 – Enable SuperFetch for both boot files and applications

If you are a Solid State Drive user, you may want to read about the freeware SSD Life that can check the health of your Solid State Drive and SSD Tweaker which will help you tweak your Solid State Drives.

Posted by on , in Category Windows with Tags
Anand Khanse is the Admin of TheWindowsClub.com, a 10-year Microsoft MVP Awardee in Windows (2006-16) & a Windows Insider MVP. Please read the entire post & the comments first, create a System Restore Point before making any changes to your system & be careful about any 3rd-party offers while installing freeware.

32 Comments

  1. what happens when your system has a mix of SSD and standard electromechnical drives?

    it seens the downside penalty of leaving them enabled is somewhat low with the writting of the prefetch file seemingly hardly enough extra writing to cut the life of an SSD prematurwly short. has anyone attempted to measure if there is a performance benefit to allowing the caching to remain enabled?

  2. SANIC

    This is totally pointless. Windows 7 and Windows 8 automatically disable Prefetch and Superfetch for SSD drives.

  3. jason

    It’s not pointless. Superfetch brings my 3rd generation i5 laptop to its knees. EVERYTIME it comes out of hibernation, for example, the machine is totally useless for over 5 minutes. Disabling this POS is the only thing that stops this behavior and allows the use of the machine. My problem is that it keeps re-enabling the service automatically (every so often) and I need to figure out how to stop it.

  4. nobody

    the files are created in C:WindowsPrefetch
    if thats on an SSD then disable prefetch, if not then you can leave it enabled

  5. BitGovernment

    to stop it permanently:
    go to services.msc, type it in start

    stop superfetch there

    then double click service name “superfetch” -> change startup type to disabled

  6. Michael Oikle

    Copy and paste into notepad save as DisablePrefetch.reg then Run it.
    ——————————————————————————————

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters]

    “BootId”=dword:00000023

    “BaseTime”=dword:1874869f

    “EnablePrefetcher”=dword:00000000

    “EnableBootTrace”=dword:00000000

  7. peterb

    This doesn’t stop Superfetch. I looked at loads of links, tried them and still Superfetch came back. Finally I found this

    “he process of disabling SuperFetch in Windows 8 is slightly different from how it was done in prior version of the OS i.e. Windows 7. To disable the Superfetch function, first you will have to stop its services from the task manager. Open your Windows 8 Task Manager and select More Details from the bottom-left corner. Then, head over to the Services tab from the top and carefully locate the SysMainservice with Superfetch under Description field. Right-click this service and then select Stop from the context menu.”

    From here

    http://www.addictivetips.com/windows-tips/disable-superfetch-windows-8/

    So as well as stopping Superfetch you also need to stop SysMain which for some reason starts it again if it’s dead. Sneaky, eh?

  8. peter

    I read about a million ways of doing this and the only way I manged to outwit SuperFetches seemingly limitless ability to revive itself was to

    1. set up a local account on the machine (I called mine TempAccountForSuperFetch (yo might guess what’s coming))
    2. Right-click on SuperFetch in Services and choose “Properties” in the menu
    3. Click on the ‘LogOn’ tab
    4. Click on ‘This account’
    5. Choose the TempAccountForSuperFetch account you just created
    6. Click OK, then OK so SUperFetch is now started under the TempAccountForSuperFetch account.
    7. Delete the TempAccountForSuperFetch account (yay)

    Now try starting Superfetch – you can’t because the account it attempts to start under under is gone.

    Awesome.

  9. Tilly

    Hello Peter! Oh gees, I’ve been having this problem with stupid Superfecth since I have windows 8 installed on my computer. It’s been using my disks 100% and my laptop is literally about to die any day now! 🙁 I can’t even used it until I stop and disable superfetch in services BUT the bastard keeps restarting itself even if I put disable, or manual and on the other tabs Take No Action, it still restarts! So annoying!
    So, I was about to ask you, how can I make a local account? o.O Is that the Microsoft account or?

  10. John Pierre

    Yes its true SuperFetching also effects the hard disk performance by caching it more even if u are doing nothing at all with ur computer

  11. John Pierre

    O Realy? that’s cool i do it tommorow

  12. Abhigyan

    i am using win7 ultimate as OS but it gets converted into win7 basic..whenever i start superfetch program, plus i am not able to run heavy games into my PC..what should i do (i’ve got 2 gb nvidia graphic card full updated)

  13. glisoni

    it is incorect that win 8.1 automatically disables prefetch ans superfetch, as on my laptop, with clean win 8.1 (company install) prefetch dir was populated, and those settings shown above were as for those two mechanisms to be active….so if u have ssd, check this ans set it as u need and feel u should

  14. Alex

    If you are using Intel srt raid with one ssd caching one hdd., then should you disable/tweak those settings, as well as enable write caching in device manager, but perhaps leave flushing on?

  15. Felipe Fritzen

    Wow, amazing tip Peter!!!
    I just try this and worked! I created a local account, set this account on Services>Superfetch in Logon tab and after delete this temp account.
    Now if I try to start Superfetch I can’t! THANKS!
    To create a local account take a look here: http://windows microsoft com/en-us/windows/create-user-account#create-user-account=windows-8 (just put the dots please).

  16. Noralf

    Thank you very much for your post! This helped me from going crazy (my computer was already crazy but have now recovered)! 🙂

  17. Xebozone

    On my Windows 7 Install (on an SSD), superfetch is automatically disabled (well… ‘manual’). I have mechanical drives in the PC too, but no OS is installed on them. Windows is somewhat smart

  18. Xebozone

    *edit*…set to manual in services automatically

  19. sam

    holy moly. Thanks OP. I just got an SSD and this might help in maximizing its life.

  20. kevin freels

    what about seagate’s hybrid drives?

  21. Eta76

    You say:
    1 – Enable SuperFetch for boot files only

    https://msdn.microsoft.com/en-us/library/ff794183(v=winembedded.60).aspx
    2 – Enables SuperFetch when the device starts up.

  22. what about sshd drives? and since the auto updates were installed my w10 makes the fan go wild. it was completely silent before. it cant be the dust since its not a month old. the same happened always on my old laptop with w7. the more updates were installed the more the fan went crazy.

  23. aphexcloud

    sanic i have watched prefetch and superfetch working on windows 7 and 8 windows does not always disable this feature especially if the OS is cloned from a HDD (IE samsung data migration tool)

  24. Snežana

    Thank you for this. I recently installed SSD and new Windows on it, In Event viewer I always had an error 7023 until I disabled superfetch in services.

    Btw, it’s true that windows stops the service but it doesn’t disable it and it’s always set to “automatic” and that often causing error 7023 in Event viewer…see it for yourself.

  25. Laser_Beam

    Windows 10 Pro x64, I’ve left the Superfetch service enabled and set EnablePrefetcher to 0 but files are still created normally in the C:WindowsPrefetch folder. That registry tweak doesn’t seem to work.

  26. EnableSuperfetch boot 2 or 1!? confused me!

  27. Bluesdealer

    My PC kept crashing until I disabled this. It was Windows 10 installed on an SSD. I guess MS just went full potato and ignored that I have an SSD. Thanks for the post!

  28. Bluesdealer

    LOL except it decided to ignore mine. Windows 10 had prefetch and superfetch enabled even though I was using an SSD. Kept crashing within the first minute of loading until I found this article and changed it.

  29. Negro

    it only confused you because you are stupid.
    superfetch and prefetch are too different things and therefor use different parameters.
    to enable superfetch for boot you set it to 1 just like the guide says

  30. Anuradha Prasad

    Hi Team,
    I had disabled superfetch service and updated registry entry to set it to 0 in Windows 10 version 1703. Though whenever I clone another VM out of base image(where superfetch is disabled) these properties are not retained in newly created VM.

    The superfetch service is running with registry key set back to 3 on newly created vm.

    Could you please help.

    Thanks,
    Anuradha

  31. Gabriel Hernandez

    Thanks for this article, I acquired a Kingston SSD for my laptop and I’m following customers guidance on how to increase life-time of SSD disk.
    In another article I read these other services can increase your SSD performance
    Deactivate file indexing (Windows Search)
    Deactivate System Restore
    Deactivate disk shutdown (in advanced energy management options)

  32. Rudolf Zorn

    They may, when installed on one. I have my Win10 installed on a PCI NVME SSD (Not SATA), from a boot stick. I thought I had to disable the Prefetch service, but I’m not sure, maybe I forgot. However, now I was looking into services, and guess what, it was running. Could be related to some driver updates (Intel Chipset / Management…), or Fall Creators update, or…nevermind, it can’t hurt to look sometimes.

Leave a Reply

Your email address will not be published. Required fields are marked *


9 + 6 =