Analyze Service Host high CPU usage

Martin Brinkmann
Oct 29, 2017
Windows
|
12

High CPU usage of a process on Windows can slow down other operations to snail like pace. While that is sometimes caused by user run programs, say a taxing computer game or video rendering program, it may sometimes be caused by Windows processes such as Service Host.

Service Host is a svchost.exe process; Recent versions of Microsoft's Windows 10 operating system separate services that are run by it while older versions of Windows lumped them together which made identification more complicated.

Programs like Svchost Process Analyzer or Svchost Viewer were created to assist users and system administrators in finding out which service was run under which svchost process on the Windows machine.

You may see 20 or more Service Host processes listed on Windows 10 machines as a consequence.

Analyze Service Host high CPU usage

svchost service host

The first thing that you need to do is find out which Service Host process is responsible for that. Once you have the process, you know the Windows Service that is causing it, and from there you may do something about it depending on the service in question.

First the basics:

  1. Use Ctrl-Shift-Esc to open the Task Manager.
  2. You should see all processes listed there right away.
  3. Click on the CPU column to sort by CPU utilization. The process that uses the most CPU should now be shown at the top.
  4. Click on it to display additional information about it. A click on Service Host: Local Service for instance may reveal the Function Discover Provider Host service.

The next step depends largely on the service in question. While you can run a search on the Internet to find out more about it, you may also open the Services Manager first to read its description and find out how it is started and what it does.

To start the Services Manager, tap on the Windows-key, type services.msc, and hit the Enter-key.

services description

Locate the service -- it has the same name as the entry that opened in the Task Manager when you clicked on the Service Host entry there; you find its status -- running usually -- as well as the startup type and a description more often than not.

Sometimes it is also possible to link high CPU usage to activity. Say, Windows Update runs at the time and found updates. You may then see Service Host: Local System -- Delivery Optimization using a lot of CPU while the updates are processed.

What you can do to resolve the Service Host issue

Here are a few suggestions on how to deal with high CPU usage of Service Host tasks:

Set the process priority to a lower value

lower process priority

First thing you need to do get the right svchost.exe entry as you cannot do so under processes on Windows 10.

  1. Right-click on the Service Host entry under Processes in the Windows Task Manager, and select go to details.
  2. This switches to the details tab and highlights the right svchost.exe process.
  3. Right-click on the process, and select Set Priority > Below Normal.

Disable the Service

disable superfetch

Please note that this is not an option for critical Services that Windows requires.

Tip: Check the services configuration pages for Windows 10, Windows 8.1 and Windows 7 on the Black Viper website to find out if you can disable a Service.

  1. Identify the name of the Service on the Processes page.
  2. Open the Windows Services Manager and locate it.
  3. Double-click on the service.
  4. Set its Startup type to "manual" or "disabled". Manual loads it on demand, disabled turns it off completely.

Make sure your PC is up to date

windows update

Sometimes, it is a bug or issue that is causing this that is part of Windows. Microsoft may have fixed the issue in an update, and it is often a good idea to check for updates to find out if that is the case.

  1. Tap on the Windows-key, type Windows Update, and select the item from the list of search results.
  2. Select "check for updates" or "download", and wait until the process completes.

Make sure your PC is virus-free

It is not uncommon that malware may cause high CPU usage on Windows machines. It is recommended to run scans for malware using one or two second opinion scanners.

You can use Malwarebytes Anti-Malware, Trend Micro's Anti-Threat Toolkit, Bitdefender Home Scanner, or CrowdInspect.

Make sure file corruption is not the issue

sfc scannow repair

File corruption can cause all sorts of issues including high CPU usage but also freezes or crashes. Windows ships with tools that you may run to make sure files are not corrupt.

Here is how that is done:

  1. Tap on the Windows-key, type cmd.exe, hold down the Shift-key and the Ctrl-key, and hit the Enter-key. This loads an elevated command prompt.
  2. Accept the UAC prompt.
  3. Run the command sfc /scannow.
  4. The command checks for file corruption and attempts to fix any issues that it finds during the scan and processing.

Some specific cases

Here are some specific cases and solutions:

  • Service Host: Local Service (Network Restricted) causing high CPU usage -- Try disabling the Superfetch service.
  • You can check if Windows Update is transferring files right now by opening an elevated PowerShell prompt and running the command Get-BitsTransfer -AllUsers.
  • To reduce the impact of Windows Update, make sure you don't download or send data to other PCs. Open Settings > Update & Security > Windows Update > Advanced Options > Choose how updates are delivered.
Summary
Analyze Service Host high CPU usage
Article Name
Analyze Service Host high CPU usage
Description
Find out how to analyze high CPU usage of Service Host processes, including how to stop the high CPU usage from happening on your Windows PC.
Author
Publisher
Ghacks Technology News
Logo
Advertisement

Tutorials & Tips


Previous Post: «
Next Post: «

Comments

  1. Eyehh said on November 26, 2017 at 9:00 pm
    Reply

    I’m getting svchost.exe taking 100% cpu usage after enabling the pos2009 hack on an xp machine of mine. Not getting any updates, not even manually, only 100% cpu load 24/7 for days until I give up. Frustrating. On win10 again there’s another process, tiworker.exe that’s messing with the cpu usage all the time and making my laptop fans spin up on various occasions.

  2. Jonathan said on October 30, 2017 at 6:59 pm
    Reply

    That is the reason I love using Bitsum’s process lasso (https://bitsum.com/) it keeps processes from hogging all the system resources (CPU, etc)

    1. kalmly said on October 31, 2017 at 1:34 pm
      Reply

      Nice that Process Lasso works for you. I’ve tried it four different times. All it ever did on either of my computers is use up a little more CPU.

  3. Robert G. said on October 30, 2017 at 11:00 am
    Reply

    @ Dave

    Try System Explorer 7.0.0.5356:

    http://systemexplorer.net/news.php

    or

    http://www.softpedia.com/get/System/System-Info/System-Explorer.shtml

    I use it on my 3 computers.

    1. Paul(us) said on October 31, 2017 at 6:31 pm
      Reply

      Robert G., Is there ay specific reason that you are not referring to the newer system explorer version 7.0.0.5359?
      Too bad that the system explorer development has come to a complete standstill sins 2016-04-30.

      1. Robert G. said on November 1, 2017 at 1:19 am
        Reply

        It works fine with Windows 10 Pro 64-bit v1709 OS Build: 16299.19.

        Here’s an example from one of my computers:

        http://hpics.li/1707d4e

  4. Microfix said on October 30, 2017 at 3:49 am
    Reply

    Nice walkthrough Martin :)

    @ Dave, IIRC System Internals was bought over by microsoft around 10 years ago (Mark Russinovich was doing an exceptional 3rd party job then and still is now albeit under the wing of MS). But, I’ve found that autoruns and process explorer have been neutered in order for MS to keep tinkerers and tweakers from disabling their subversive code in order to data gather/ snoop since the introduction of the ‘admin rights’ to each respective program in W7/8 and 10.
    As an alternative for process explorer, I shifted to Process Hacker a while back which suits my needs (when the tinfoil hat is on). Have still to try more from Nirsoft as they seem to have a large variation of small monitoring/ tweaking programs which are excellent.

  5. Dave said on October 30, 2017 at 12:54 am
    Reply

    Martin,

    Why would you recommend programs other then the Sysinternals for investigating running processes?

    PS The read also link on this page “nvidia-releases-geforce-hotfix-driver-378-72” is out of date. Nvidia actually released the 388.10 hotfix 3 days ago for Wolfenstein 2.

    1. AAA said on October 30, 2017 at 2:20 am
      Reply

      Don’t use nVIDIA drivers. They are snooping big time on us poor consumers :(
      …they know what websites you go to, they know what things you render; so give that porn a break and start using only pure simple Windows drivers via Update panel. :)

      1. TelV said on October 30, 2017 at 2:19 pm
        Reply

        What a load of old codswallop! Windows drivers are next to useless. If you’re concerned about nVidia snooping all you need do is disable telemetry as per Martin’s instructions: https://www.ghacks.net/2016/11/07/nvidia-telemetry-tracking/

    2. Marine Recon said on October 30, 2017 at 1:35 am
      Reply

      I’m guessing it’s because Sysinternals is not for sissies or the uninitiated – the corrections and adjustments are done at system level, so mistakes can be fatal.

      1. Dave said on October 30, 2017 at 2:28 pm
        Reply

        Gotcha. TY for the reply.

Leave a Reply

Check the box to consent to your data being stored in line with the guidelines set out in our privacy policy

We love comments and welcome thoughtful and civilized discussion. Rudeness and personal attacks will not be tolerated. Please stay on-topic.
Please note that your comment may not appear immediately after you post it.