Service host superfetch – How to Fix it in Windows

Imagine this: you’re playing your favorite game on your PC and having a great time on it. everything seems fluid and smooth until you feel your system slow down. You open up the trusty taskmanager and find out that a service named “service host” is eating up all of your CPU and RAM. If you relate to this experience then I can tell you that it’s probably the Service Host SuperFetch. What is service host superfetch? Is it necessary? Why does it slow down my PC? Is it a virus? Read on to know all about it.

What is Service Host SuperFetch?

Service host SuperFetch is a memory manager that was introduced with the infamous Windows Vista back in 2007. It was the successor to PreFetch, that was present in Windows XP. It’s job is to always run in the background analyzing your RAM usage so that it can build a cache profile of the programs that you use frequently. It uses this information to preemptively load the programs on your RAM. As a result, Windows doesn’t have to launch the program from the disk and loads up much faster.

However, with the wide availability of Solid State Drives (SSDs) today, this service isn’t all that necessary since SSD’s are so much faster than the hard drives that were present before. In fact, if you’re using an SSD for storage, SuperFetch wouldn’t load your applications to the memory at all.

But if you still use an hard drive, SuperFetch would help you decrease boot time and application load-time by analyzing your usage patterns and preemptively loading programs to your RAM since launching an application from RAM is much quicker.

Why does SuperFetch slow down my system?

SuperFetch is a useful little service most of the time. Provided you’re running an average or above rig, SuperFetch would be very useful. It makes everything more efficient. It’s official description says it “maintains and improves system performance over time” and it does it’s job well for the most part. But a lot of PC users running Windows 10 have reported high CPU, memory and disk usage.

This is because like all things in life, Service Host SuperFetch isn’t perfect. It can slowdown your system significantly especially if the system is a little bit outdated. Sometimes SuperFetch would force the hard drive to load up a lot of applications when the system boots up. This would slow down boot time since Windows can’t load the necessary services and applications. So yeah, SuperFetch is sometimes counter productive.

Where to find Service Host SuperFetch?

So let’s say your system is acting up and SuperFetch is acting up and you have to disable it. You won’t be able to find it in the service tab of the taskmanager since it is one of the bunch of processes under “service host”. But you will find it somewhere within the large list of the processes under service host. This is because Windows uses DLL files require a shell to host them.

How do you disable Service Host SuperFetch?

It’s not usually recommended to turn this service off. It often helps you run your PC faster. But if you notice high CPU or disk usage, especially when the PC starts up, disabling it is the way to go. Fortunately, disabling it won’t cause any adverse effects. But if there’s no noticeable change in the system performance, it’s better you turn it on. There are several ways to do it and they are given below:

Using Windows services app:

Step 1: Press windows key+R together to open run. Type services.msc and press OK. You can also search services in the Search bar and launch it from there.

Step 2: Now scroll down the list of services to find SuperFetch and disable it.

Step 3: Then, right-click on SuperFetch and select Properties. Look for start-up type under the general tab and change it to disabled.

Using Command Prompt:

Step 1: Open up the start menu and search for command prompt. Right click on it and select Run as administrator. Click Yes on the security pop up.

Step 2: Type the command “net.exe stop superfetch” (without the inverted commas) and press enter.

Step3: Type another command “sc config sysmain start=disabled” (without the inverted commas) and press enter.

Using Windows registry:

Step 1: Open run by pressing Windows key + R. You can also find run by searching for it in the start menu.

Step 2: Press “regedit” (without the inverted commas) in the following dialogue box and press OK.

Step 3: Find the HKEY_LOCAL_MACHINE folder when the Windows registry opens up.

Step 4: Now, navigate to System —> CurrentControlSet —> Control —> Session Manager —> MemoryManagement and then select “PrefetchParameters”.

Step 5: Find EnableSuperfetch listed on the right side and double click to open it up. Change its value to 0and press OK. Then, close the registry editor.

Step 6: If you aren’t able to find EnableSuperfetch, right click on the registry editor area.

Step 7 : Click on new and select  DWORD (32-bit value). Set its value to 0 and then press OK. Finally, close down the Windows registry.

Final words

Hopefully, I’ve been able to help you if you’ve been experiencing problems because of this PC. I am certainly not recommending you disable Service Host SuperFetch at all because it can be very useful if you’re running a slower hard drive. This is because RAM is much faster than hard drives. But if you have less than 4 GB of memory and you are experiencing a lot of slowdowns, disabling SuperFetch is probably the right thing to do.

Leave a Reply