Windows 10 PCs with a traditional hard disk experience high disk usage through the SysMain process. A well-known symptom is that the disk has 100% activity and this makes the computer unworkable slow. Despite applying 5 effective ways to improve Windows 10 performance, performance may still be miserable. Below is a screenshot of what Task Manager may look like when SysMain is busy:
What is SysMain?
Sysmain is better known as SuperFetch. Under this name, it already got a bad reputation in Windows 7. It is a service that runs in the background. It continuously scans your computer behavior at the hard disk level and in this way determines which files and applications you use most. Based on this information, SysMain efficiently arranges your hard disk at block level.
Whenever you start an often used application, like Outlook or Adobe Photoshop, all bytes are nicely ordered in chunks, so it costs less I/O to retrieve the information.
Cause of high disk usage by SysMain
A traditional hard disk, HDD, is a lot slower than the currently used Solid State Drive, SSD. For an HDD it is extra intensive and time consuming to continuously set up your disk in the best possible way. At the same time, it is even more important to keep everything in the right order. So decide wisely whether you want the service on or off.
Fixes for high disk usage
To begin with: You can’t keep SysMain / SuperFetch enabled without losing performance. It will always continue to do disk operations, and indeed sometimes at very annoying moments. The SysMain service does not critical processes within Windows 10. It is safe to stop it at anytime. So if you have issues with the disk performance because of SysMain / Superfetch, th you have 2 flavors: disable SysMain completely, or tune SysMain to reduce impact.
Disable SysMain in Services
Click Start , type Services, and click Services (app)
Scroll down to SysMain. Doubleclick on SysMain
Set Startup type to Disabled, click Stop and click OK
SysMain is now stopped for your current Windows session, and will never (re)start at the next boot of your PC.
Disable SysMain in registry editor
Click Start , type Registry, and click Registry Editor (app)
Navigate to Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters
Double-click EnablePrefetcher. Set the value to 0 and click OK
The next time you start your computer, SysMain won’t prefetch. However, it will continue to run for this Windows session.
Tune SysMain to optimize Boot or Application only
Click Start , type Registry, and click Registry Editor (app)
Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters
Double-click EnablePrefetcher. Set the value to one of the following and click OK 0 – Disable Prefetcher 1 – Application launch Prefetching enabled 2 – Boot Prefetching enabled 3 – Application launch and Boot Prefetching enabled
The next time you start your computer, SysMain will run in the configured mode
Additional references
Microsoft has no dedicated SysMain / SuperFetch page, as far as I have found. Only some guides for performance on VDI and best practices on how to configure Superfetch. And very old documentation about CPU spikes by Superfetch (SysMain)
Not anymore. Back in the days when we had spinning hard disks, it really helped boosting performance. But nowadays with solid state drives, it barely improves your system
for HDD whit spinning drives it is more of an anoying and slows your PC down at the start of every session.
My sugesstion is to disabel it and runn it whenn needed once a Month.
Like you did it when ther was no SSD and you did it whit the defrag tool.
isn’t sysmain important?
I don’t know but the description says it improves performance
Not anymore. Back in the days when we had spinning hard disks, it really helped boosting performance. But nowadays with solid state drives, it barely improves your system
for HDD whit spinning drives it is more of an anoying and slows your PC down at the start of every session.
My sugesstion is to disabel it and runn it whenn needed once a Month.
Like you did it when ther was no SSD and you did it whit the defrag tool.
Not for running the system. You can disable it.
thanks dude, it ws taking all my HDD
best explanation
my laptop was unusable for months… now is working fine. 🙂
…a BIG THANKS!!
thank you so much
thx it helps
The service for a feature called “SuperFetch” is called “Sysmain” – if that doesn’t describe Micro$$oft in just a few words then what does.