Disable SuperFetch in Windows 10

Starting in Windows Vista, the OS includes a special technology called "SuperFetch". It was designed to speed up performance on hard disk drives by arranging frequently used app data and components into a contiguous area on the disk which was then preloaded into memory to speed up the loading time of the app. Sometimes it may cause high disk usage so you may want to disable it temporarily or permanently. Here is how it can be done.


SuperFetch is a Windows Vista enhancement of the Prefetcher which was implemented in Windows XP. The Prefetcher is in charge of storing program information so that often-used programs and processes can run faster. In Windows Vista, the Prefetcher was tweaked and changed to be much more aggressive and intelligent in its caching to give even greater performance on hard disk drives.

The official description says the following:

SuperFetch keeps track of which applications you use most and loads this information in RAM so that programs load faster than they would if the hard disk had to be accessed every time. Windows SuperFetch prioritizes the programs you’re currently using over background tasks and adapts to the way you work by tracking the programs you use most often and pre-loading these into memory. With SuperFetch, background tasks still run when the computer is idle. However, when the background task is finished, SuperFetch repopulates system memory with the data you were working with before the background task ran. Now, when you return to your desk, your programs will continue to run as efficiently as they did before you left. It is even smart enough to know what day it is in the event you use different applications more often on certain days.

There are a number of ways to disable SuperFetch. Regardless of the method you choose, you need to just disable its service to prevent it from working.

To disable SuperFetch in Windows 10, do the following.

  1. Press Win + R shortcut keys on the keyboard to open the Run dialog. Type services.msc into the Run box. Run Services Msc
  2. The Services console will be opened.Services In Windows 10
  3. Find the "SysMain" service in the list. In older builds of the OS, it was called "SuperFetch".Superfetch Service In The List
  4. Double-click on the service to open its properties.Disable Superfetch In Windows 10
  5. Under startup type, select "Disabled".
  6. Click on the Stop button if the service is running.

SuperFetch is now disabled in Windows 10.
For reference, see the articles:

Alternatively, the SuperFetch service can be disabled via an elevated command prompt or with PowerShell.

Disable SuperFetch from the command prompt

To disable the SuperFetch service from the command prompt.

  1. Open a new command prompt as Administrator.
  2. Type or copy-paste the following commands:
    sc config SysMain start=disabled
    sc stop SysMain

Alternatively, you can use PowerShell.

  1. Open PowerShell as Administrator.
  2. Type or copy-paste the following commands:
    Set-Service -Name "SysMain" -StartupType Disabled
    Stop-Service -Force -Name "SysMain"
    

You are done!

To re-enable the SuperFetch feature, just set the service to Automatic and start it.

That's it.

16 thoughts on “Disable SuperFetch in Windows 10

  1. Chris

    its still called super fetch in windows 10 17134 maybe it has been changed in later build?

    Reply
    1. Sergey Tkachenko Post author

      17682 calls it SysMain

      Reply
      1. Jimmy S.

        I wonder since when Microsoft renamed Superfetch to SysMain. I’ll have to check through my collections of old Windows beta builds.

        Reply
        1. Sergey Tkachenko Post author

          It can be just a bug in my pre-release version

          Reply
  2. Dave

    I am running Win 10 Pro V1709 Build 16299.461 and it was still running even though my OS is installed on an SSD.

    Reply
    1. Jens

      Also wanted to note that I’m not using any SSDs.

      Reply
  3. Jens

    In old(er) builds disabling Superfetch also disabled memory compression functionality – is this still the case in 1803?

    Reply
  4. Jens

    Does this disable Memory Compression like in earlier builds?

    Reply
    1. Sergey Tkachenko Post author

      yes, it will disable memory compression.

      Reply
  5. Rob Crombie

    I detest anything running in the background that does not have to run.
    If anyone has tips on others that I can disable, it would be appreciated
    EG –
    Auto defrag,
    Fast boot ( which flippin well Hibernates when you turn off. AGH! )

    Rob

    Reply
  6. Jens

    I don’t see it in the list of services.
    Windows 10 Pro 17134.81

    Reply
  7. Jens

    Found it. It was called superfetch.

    Reply
  8. Anders

    Superfetch runs on SSD installations on Automatic start. Whoever says otherwise is lying.

    Reply
    1. Sergey Tkachenko Post author

      OK, removed from the article.

      Reply
  9. William Woodruff

    Okay, you’re running Win 10 on an SSD: what effect … that can be noticed by a user … on whatever does disabling SuperFetch have ?

    Reply
  10. Brian

    Thank u so much :-D

    Reply

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.