2013-07-08

Solved: svchost.exe high CPU and memory

A few days ago one of the svchost.exe processes on my machine (Win7 64) started exhibiting this annoying behavior: it will start with about 30 to 40 megabytes of memory, which stays roughly constant for a while, but then later it begins bloating, slowly but surely, possibly at a slightly exponential rate, until a few hours later it is taking up so many gigabytes that I cannot work on my computer anymore. So, I have to stop what I am doing, save everything, and restart the computer, only to have to go through the same ordeal a few hours later.

On at least two occasions I have witnessed this happening along with unreasonably high CPU utilization, up to a full CPU core.

Obviously, this started happening after I installed or tweaked something, but I did not notice the precise point in time that it started happening, and my machine is a busy machine, so I had no suspects to name.

I looked around the interwebz for a solution, but to no avail.  People give some good troubleshooting hints, but nobody seems to have an actual solution.

The svchost.exe process which causes the problem contains the following services:

Application Information (AppInfo)
Background Intelligent Transfer Service (BITS)
Certificate Propagation (CertPropSvc)
Computer Browser (Browser)
Multimedia Class Scheduler (MMCSS)
Remote Desktop Configuration (SessionEnv)
Shell Hardware Detection (ShellHWDetection)
System Event Notification Service (SENS)
Server (LanmanServer)
Task Scheduler (Schedule)
Themes (Themes)
User Profile Service (ProfSvc)
Windows Update (wuauserv)
Windows Management Instrumentation (Winmgmt)

I decided to give the process of elimination a try. I was able to terminate most of those services without seeing any difference in behavior. The one service which absolutely refuses to terminate is the Task Scheduler: Apparently someone at Microsoft has decided that scheduled tasks are such an awesome thing to have, that nobody in their right minds should ever want to try running Windows without them.

So, the culprit appears to be the Task Scheduler, but what can be done about it?  How can we make it stop hoarding our precious RAM?

I think I have found a solution.

Now, this is a complex problem which could have different causes on different systems out there, so this may or may not solve your particular problem; however, it has solved my problem, and that's why I am saying I have found a solution, not the solution. You can read on for the possibility that your problem is the same as mine, or just for the possibility that my troubleshooting approach helps you find a solution to your particular problem.

Open up the Control Panel, open up Administrative Tools, and launch the Task Scheduler console. There are many, I mean many tasks in there, but luckily the one we are interested in is easy to find: From the tree on the left side, select Task Scheduler Library, and in the middle pane you will see a bunch of tasks scheduled for execution. Keep hitting F5 to refresh, and in the Last Run Time column you will see which one of those tasks keeps repeatedly firing: it is the one whose last run time keeps changing with every refresh. In my case the offending task was the Adobe Flash Player Updater. So, right click on that task, and select Disable. VoilĂ , CPU consumption goes to zero, and memory consumption goes down to the normal 40  megabytes or so. More importantly, they both stay there.

So, after all, in my case the culprit was not really the Task Scheduler, it was the Adobe Flash Player Updater. Thank you, Adobe!  You rock!

Not.

Cheers!

49 comments:

  1. Let me just say....if i could pay you for this amazing amount of help, I would go to the bank right now...THANK YOU GOD!!!

    ReplyDelete
  2. Brilliant ....I don't have a problem at the moment with this machine but that information is gold....I'd be willing to bet that's the problem with my old laptop...and this one has stinking Adobe running every hour. If Adobe spent as much time being useful as it does updating it'd be one amazing chunk of software.

    ReplyDelete
  3. This comment has been removed by a blog administrator.

    ReplyDelete
  4. THANK YOU!!!!!!!!!!!!! This worked perfectly. For me it was Google Updater!

    ReplyDelete
  5. Thank you - Google Updater was killing my system:)

    ReplyDelete
  6. I observe a very similar problem a few mins after startup of my win7 64 bit machine and the two scheduled tasks which were running at that moment:
    GoogleUpdateTaskMachineCore
    GoogleUpdateTaskMachineUA
    Both to be run daily. I have deactivated both, will check if it fixed it.
    Adobe Flash Player Updater is the next suspect.

    Thank you Michael for posting this!

    ReplyDelete
  7. Only 9 comments so far? I guess everybody must be too lazy to say thank you, because I assume the number of people helped with this piece of information is higher by some orders of magnitude. While it may not have precisely fixed what I was looking for (or it indeed may, I'll see in the coming days), but in any case, just learning about the existence of this scheduler and how to modify it, is very valuable for all of us non-IT-professionals.

    ReplyDelete
  8. Replies
    1. OMG - my laptop had become unusable due to svchost netsvcs using all my memory. I would never have thought to look at GoogleUpdate tasks as the culprit. But there it is, disabling those, I have a laptop which is no longer burning my lap, unable to open a new window.

      Thank you for solving this and posting the solution!

      Delete
  9. Thank you very much. Windows 7 32bit user with the same, totally frustrating problem. Fix Seems to be working.

    ReplyDelete
  10. My tasks are so screwed they won't even display for me to disable. It's just in a constant state of refresh. If I figure it out I'll let everyone know.

    ReplyDelete
  11. Worked for me, thanks! Turned out to be a web crawler that wasn't showing up in malware scans.

    ReplyDelete
  12. I'm having something very similar except it's on a Windows 2008 R2 server and the utilization spikes happen intermittently. There are no tasks in the Task Library, but there are a bunch of sub-folders with task inside. I have checked all of them and cannot find a start or stop time that coincides with my CPU spikes.

    ReplyDelete
  13. Thank you so much! It was Acrobat Reader Updater for me. I appreciate this. You saved me hours of annoyance, I'm sure.

    ReplyDelete
  14. THANK YOU !
    Worked perfectly.
    For me it was Google Update ..

    ReplyDelete
  15. Brilliant! Thank you!
    I can't find a Last Run Time column, but just disabled the Flash Player Updater - with immediate effect!
    I don't think I can resist the GoogleUpdateTaskMachineUA, so I'm going for that too!

    ReplyDelete
  16. Unfortunately, today my CPU is back to very high again! Something more sinister is going on by the looks of it, but I wouldn't have a clue - not exactly the computer wiz, me. :) Oh well...
    Disabling GoogleUpdate didn't have any effect btw.

    ReplyDelete
  17. i can't thank you enough mate, my problem was adobe fp updater too!! have a good year mate!! YOU ROCK!!

    ReplyDelete
  18. HOLY SHIT! Thank you! You are a messiah and the liberator. My problem wasn't any of those pesky tasks, but windows updater. Apparently I hadn't been updating as much as Microsoft would like, so they decided to wreck my Windows' performance. Well, now the whole update-reminder crap is off and I intend to find a way to keep it that way.

    ReplyDelete
  19. Ok so, Everything in that middle fame was disabled for me from the beginning, the newest last time run of 'em all is for about 1 week ago so i don't think it is related to this section, Anyways i still face the high cpu usage... I have no idea what should i do.

    ReplyDelete
  20. So after about 2 hours of scanning the living heck out of a client machine I found tons of junk but couldn't figure out what the cause. I saw that scheduler was in the list of processes running in the pid but I didn't think to look in it. This ended up being my problem with adobe flash running 2 tasks along with got to meeting running 2 as well. I did have to restart windows update for the changes to take effect but so far its holding. Thanks for the insight ever after nearly 3 years of your post.

    ReplyDelete
  21. Michael, you have just solved my problem, thanks.

    ReplyDelete
  22. THANK YOU, Michael.gr!!!! AGAZILLIONBIGHUGS!

    ReplyDelete
    Replies
    1. Glad to be of help, Beverly! These comments make it worthwhile for me! C-:=

      Delete
  23. Thank You, I have been struggling with this for at least a year (probably two) & I got sick of killing the svchost -process, especially as doing so also kills Aero, for me it's either Google or Adobe flash updater (I had to kill the process to open task scheduler, it hasn't restarted after I disabled adobe flash updater & tweaked the google tasks to not run when computer is being used)

    ReplyDelete
    Replies
    1. nope, disabled all tasks in task scheduler library, svchost -process eating 25% of CPU

      Delete
  24. looks like it might be Windows Update wasting my CPU while doing something, come to think of it, it's been over a month since I was last notified of new updates, I guess windows update is trying to do just that but is failing & somehow managing to hog 25% of CPU while doing the failing, any suggestions?

    ReplyDelete
    Replies
    1. Sorry Toni, I don't have any concrete suggestion to make for your scenario. Windows Update problems are a separate ocean of pain.

      Delete
  25. thank you, it's work
    flash updater, like you

    ReplyDelete
  26. Thank you so much! much appreciated

    ReplyDelete
  27. Help me please i'm dying right now, i've follow all the things you said on top, and i've read all the comments i was so happy that i found google updater BUT it wasnt the real problem, everytime i refresh it nothing changes. Please somebody get me out of this hell

    ReplyDelete
  28. This Works Perfectly. Thanks a lot dude.

    ReplyDelete
  29. Thanks for the pro tip - I have been plagued by the svchost.exe hogging CPU cycles for over a year. I wasn't able to identify the culprit but disabled all Google update related tasks, Adobe Flash update and Dropbox update. I also uninstalled GoToMeeting. Let's see what happens after reboot

    ReplyDelete
  30. Didnt really work out for me, but as few ppl here mentioned it set me on right track with win update(wuauserv service)...thanks a lot

    ReplyDelete
  31. Fantastic information - now running good as new.

    ReplyDelete
  32. In my case it was the Windows Update service. Thank you!

    ReplyDelete
  33. Hi Michael, Thanks a lot for your great post !

    it solved my CPU at 25% constant issue (now it's 0 ~ 2 % again as it must be when it's at idle ) :)

    In my case the problem file was:

    Windows\ServiceProfiles\LocalService\AppData\Local\FontCache4.0.0.0.dat

    I also found that's safe to erase all *.dat files in this folder to solve this problem. Hope this helps somebody else to !

    Best regards

    -Luis




    ReplyDelete