Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

The System process running on my Windows 7 installation uses almost 50% of CPU arbitrarily. I monitor the process with Process Explorer from Sysinternals.

Click the images to enlarge them...

System Process eating CPU

enter image description here

What could be the problem?

share|improve this question

migrated from Aug 12 '11 at 12:41

This question came from our site for professional and enthusiast programmers.

Please try this procedure and report back in the comments section. – Tom Wijsman Aug 12 '11 at 12:43
I see you are running Kaspersky, it's happening to me similar to you with the same .... DPC item @ between 40% - 60% usually 50%. I'm running Norton BTW & it's a rare occurrence but I have to shut down & restart to clear it out I've left it run all day before but it never resolves the issue & keeps running @ 50%. – user182718 Dec 26 '12 at 15:14
I had a problem with my laptop where the CPU would shoot to 50% and stay there, due apparently to an "open" interrupt that occurs when the WiFi radio is powered off. – Daniel R Hicks Sep 6 '14 at 12:41

Without a profile trace from Performance monitor, this is impossible to nail down. AFAIK, the line you boxes is a standard device driver call(DPC stands for deferred procedure call IIRC).

share|improve this answer

In my situation it was cpu fan speed that was somehow slower than usual.

For some reason or another, the fan was slow, after 5 years of perfect operation, its settings got corrupt or whatever. So cpu got hot, so system was protecting things with this "high cpu usage in system process" trick. That is a trick to reduce core temperature.

In process explorer, system was ~40%, interrupts were 5-10%, dpc's were 5-10%.

These were some suggested solutions.

  • restored the system, it did not help.
  • scanned for viruses, nothing.
  • re-installed graphics driver, nothing.
  • plugged out all usb devices to see if they were doing this, nothing.
  • deleted the pio entries in device manager > ide/ ata/atapi controllers, nothing.

All these with ample restarts.

The solution was, turning the fan full on, instead of the automatic speed change. Possibly something went wrong with the automatic fan speed settings.

Bios > somehow reach fan and cpu temperature related sections > check cpu temperature.

If 90C, you have it. The fan speed was 1500rpm, which was slower than what I could remember, 2500rpm. Also, there was no fan noise, normally I would hear a lot of fan noise if the cpu was hot. In the related section of bios, turn the fan full on, and save bios settings. Fan should turn on full after restart of bios. And process explorer should again show 100% idle :)

Hope this helps.

share|improve this answer
Not sure fan problems would cause CPU usage to be constant 50% – Lizz Mar 11 '13 at 7:49
No fan > cpu gets hot > core protection comes in (cpu frequency is reduced to reduce power consumption) > you suddenly have a 1/10 fast cpu > such a slow cpu is easily driven full 100% capacity by usual system tasks > system on win machines usually occupies only 1 core > you get 50% constant cpu use – Johan Apr 10 '13 at 10:06

I've encountered this in commercial settings before. The cause was usually a program that was relying on heavy amounts of disk activity, and/or some program that had problems. Specifically, the most common cause was backups. The way we figured this out was to check some common culprits. If you don't have backup software running, check whether there are any "scheduled tasks" that might be causing this. Also, check the System log and the Application log (using Event Viewer, accessible via Computer Management) to see if any program is reporting problems or activity (like a program starting up) when the slowdowns occur.

Naturally, you should also see what is running on the system, including programs run by other users. (UAC permission-elevation may be needed.)

share|improve this answer

To diag the CPU usage issues, you should use Event Tracing for Windows (ETW) to capture CPU Sampling data / Profile.

To capture the data, install the Windows Performance Toolkit, which is part of the Windows SDK.

enter image description here

Now run WPRUI.exe, select First Level, under Resource select CPU usage and click on start.

enter image description here

Now capture 1 minute of the CPU usage. After 1 minute click on Save.

Now analyze the generated ETL file with the Windows Performance Analyzer by drag & drop the CPU Usage (sampled) graph to the analysis pane and order the colums like you see in the picture:

enter image description here

Inside WPA, load the debug symbols and expand Stack of the SYSTEM process. In this demo, the CPU usage comes from the nVIDIA driver.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .