Windows Update doesn't work and consumes 100% of CPU
Solution 1
The CPU usage comes from Windows Updates which tries to find Updates: wuaueng.dll!CAgentUpdateManager::FindUpdates
. This method calls a function wuaueng.dll!CUpdatesToPruneList::AddSupersedenceInfoIfNeeded
to see if all updates are needed or if they are replaced (superseded). And this takes some time on your older Intel Core2 Duo CPU
. You can't avoid the CPU usage. For a fresh Windows 7 install, use other tools that provide the current Updates.
// Update
Microsoft released a new WindowsUpdate Client Update to fix the slow Update searching/Installation.
Installing and searching for updates is slow and high CPU usage occurs in Windows 7
https://support.microsoft.com/en-us/kb/3102810
Download:
32Bit: http://www.microsoft.com/downloads/details.aspx?FamilyId=fcd6bf5d-f004-4ca3-aa7e-1de462b91dd0
64Bit: http://www.microsoft.com/downloads/details.aspx?FamilyId=4fe566bd-31b1-4413-8c4c-412b52533669
Also try if this improves your situation.
Solution 2
I tried everything you did as well. What finally fixed it was this answer; I installed KB3102810 which was recently released and it worked for me on 2 different machines.
Related videos on Youtube
A. Fendt
Updated on September 18, 2022Comments
-
A. Fendt over 1 year
I have a fresh installed computer with Windows 7, 64-bit, Service Pack 1.
After a few minutes after startup, svchost.exe is consuming 100% of one cpu core.
I know there are many threads which are dealing with this problem, but none of them helped me.
I installed this updates: KB3050265 and KB3065987
I used this "Microsoft Fix it"-Tools: MicrosoftFixit50123 and MicrosoftFixit50362
I installed the current Windows Update Agent: https://support.microsoft.com/de-de/kb/949104
I tried to remove the SoftwareDistribution directory:
net stop wuauserv net stop bits rd /s /q %windir%\softwaredistribution net start bits net start wuauserv wuauclt.exe /detectnow
And I tried to connect the computer with my home network over a usb/ethernet-adapter, and I tried to disable IPv6.
For diagnostic, I post here the WindowsUpdate.log file (after removing the SoftwareDistribution Directory, waiting until the service is hanging on 100%): http://pastebin.com/ZisR9Pft
-
Daniel R Hicks almost 9 yearsInstall Process Explorer, click the process name column until you get the tree representation, then find the instance of svchost.exe that is looping. Examine that process's tree to find the actual module involved -- often this is not a Windows module but some other application.
-
A. Fendt almost 9 yearsI updated the link to the WindowsUpdate.log (I missed a bit), and here are screenshots from process explorer
-
Daniel R Hicks almost 9 yearsChange the display options to make the "command line" column visible and see what the command line is.
-
A. Fendt almost 9 yearsHere we go.
-
Daniel R Hicks almost 9 yearsIf you Google "svchost netsvcs" you will get a mountain of advertising interspersed with the occasional suggestion on how to approach this.
-
A. Fendt almost 9 yearsThe most sites I found suggest to remove the SoftwareDistribution directory. I tried this allready more then five times, some other sites say I should install KB3050265, I allready did this. But nothing has helped me.
-
magicandre1981 almost 9 yearscapture a xperf trace of the slowdown: pastebin.com/peqLGxSa share the compressed file so that I can see which thread is causing it
-
Moab almost 9 years
-
A. Fendt almost 9 years@magicandre1981 here is your trace. Thanks for analysis.
-
A. Fendt almost 9 years@Moab thanks for this tool, but I can't install this programm. Before the programm gets installed there comes "Searching for updates..." and this dialog also never get finished.
-
-
A. Fendt almost 9 yearsNow I waited four hours and svchost.exe is still running on 100% cpu. I created a second trace after this time, here ist the download link. The Method
wuaueng.dll!CUpdatesToPruneList::AddSupersedenceInfoIfNeeded
was called over 1700 times. I can't use wsusoffline, wsusoffline is using wusa.exe to install the updates and wusa.exe is waiting until all wuauserv is finished searching for new updates. -
magicandre1981 almost 9 yearsI use a small batch file where I stop wuauserv before installing the next update. This improves install a lot.
-
aoetalks over 8 yearsKB3102810 was released to address this.
-
David Balažic over 8 yearsNo, it is not normal. It is exceptional.
-
Costin Gușă over 8 yearsstill getting svchost of wuauserv going to 50% (100% if it was only one cpu core, bieng single threaded on a dual core it shows as 50%) even after installing KB3102810 on windows 7 ultimate 32bit
-
Calchas about 8 yearsI have just had a production server fall over because there was insufficient CPU time to dedicate to its main job, with wuaueng.dll consuming everything on one core for several hours. Even if this is normal, it is not acceptable. We have had to turn off update checking altogether for now.
-
Jim Hoyle about 8 yearsAfter experiencing many hours waiting time on several completely different computers and setups, I would still say that it is "normal". Though on my latest computer it wasn't 50% or 100% of CPU usage but rather something like 18% (svchost.exe). In any case, it took many hours and looked exactly like Windows Update (and actually a similar other Windows update dependent update too) wasn't working at all. It adds to the confusion if Windows Update says Never updated. It feels like it is completely broken but might only be VERY slow.
-
Jim Hoyle over 5 yearsAfter two years, I think I have to dispute my own previous comment. I now completely started from 0 with the computer in question. This time, after doing a full format, the Windows Update worked much better. Another symptom was before that System PID 4 ran forever with high disk usage all the time or often. That led me to find out that there might've been something wrong with the hard drive all that time. But now, after a full format, it works better.