You are here

Windows 7: High CPU usage due to system interrupts (Deferred procedure calls and interrupt service routines)

Submitted by Druss on Sat, 2009-12-05 21:47

Windows 7, much as I enjoy using it (although the shine has worn off a li'l bit), has a few niggles. One of these, which really annoyed me was the sudden seemingly random spike in CPU usage that, once it occurred, never went away until I rebooted the system. The task manager did not list any application as consuming any significant attention from the CPU. However, the resource monitor (which can be reached from the performance tab in the task manager) provided the answer as I found the innocuous sounding "system interrupts" process consuming a steady 40-45% CPU.

Seeing as to how I had no idea why this was happening, off I went to worship at the altar of the Google Gods. This was not an uncommon problem apparently and after reading a couple of reams of bug reports and plaintive paeans for help, I came to the conclusion that this was going to be one of those inscrutable issues where there was no definite answer and that solutions had varying dependencies on wind direction, solar activity and the size of your Mom's feet.

But, one common undercurrent prevalent in all replies provided by people who sounded qualified (if one went by the plethora of M$ certifications in their 'signatures') was that this was not an M$ fault and that the culprit was almost always a bum driver, usually that of the NIC or sometimes the graphics card. The recommendation was to try and disable the device and once identified, look for an update (or vice versa) or attempt to rollback to an earlier version if possible.

Consequently, the next time old unfaithful decided to spike my CPU usage, off I went to my device manager to see if I could arrive at the problem child through a process of elimination. I disabled everything one by one to no avail. I disabled them in pairs and other permutations and combinations. Still, no luck. Of course, I had already ensured that I had the latest drivers installed.

So, it seemed that this was a bum steer. I continued to wait in the hope for a Windows or driver update while resorting to system restarts in the interim.

One fine day, which happened to be about four days ago, I was once again plagued by a CPU spike. However, while checking to ensure that it was my beloved 'system interrupts' process that was the culprit, I found to my surprise that it was some other process named 'audiodg.exe' which was to blame. Another offering at the Google altar revealed a number of solutions chief amongst which was the following:

  1. Right click on the 'volume mixer' icon in the system tray and select 'playback devices'.
  2. In the ensuing dialogue, there should be a list of playback devices. Double click on the one selected, i.e., the one with the big green tick beside it.
  3. In the resulting 'speaker properties' dialogue, select the enhancements tab and check 'Disable all sound effects' and click OK on all the dialogues to save the updated settings.

For those who did not have any effects selected, it might be worthwhile trying to enable a couple, saving it, and then coming back and disabling the lot once again.

The above should automagically solve the audiodg issue. It did for me. But what it also did was solve my CPU spike issue. I haven't had a single one since then! *fingers crossed* *touch wood* etc.

Apologies for the long-windedness of the post ... I tend to feel ... verbose whenever I read Wodehouse :|

Comments

Oh well, glad it worked for you - not for me. Clearly, this is not the root of the problem. Every system config is different, and we must leave it to the tender mercies of the MacroShaft drones to field enough complaints to make it go away. Woe unto the innocent beta testers (a.k.a. general public) who suffer so widely in silence, for lack of any recourse, as Winblows fields yet another version, so fast out of the gate, and yet condemned to discover once again a cumulative case of the bloatware slows, masquerading as sorry excuse for an operating system. Where is sanity? Even Mr. Bill knew when to bail, and he left us all chained to his homunculus cash generator. We the hypnotized will happily gulp down yet another gallon of bullshit, smile, then cheerfully open our wallets and ask, "Please, sir, can I have some more?" Do we not deserve what we tolerate?

Happy New Year.

Another big THANK YOU! This problem plagued me for months, ruining many gaming sessions. I've tried so, so many things to fix it and nothing worked until this. YAY!

Thanks for Your adwise, it also works on Server 2008 R2, where I resolved with this help issue with Intel Gigabit quad port network adapter.

Thanks, you saved me hours of reading. Best. Rant. Ever.

Thanks, your suggestion worked for me. I like your style of writing, humor with results.

Thanks! This seems to have fixed the problem I've been having for a few days - and I don't think I even had any of those options turned on. That sure saved me a lot of searching, since you described in such detail exactly the same problems I'd been having.

HELPED

nice one, thanks! :)
first result on an altar of "google god" :D

Firstly I would like to say thanks for your suggestion and I am posting this reply in the event that my findings may help someone else who is having this interrupt issue and they are using an Auzentech X-Meridian 7.1 2G sound card. Note this may also apply to other Auzentech sound cards as well?

With your suggestion of the audiodg.exe which in my case wasn't using any CPU resources plus what I read in another article elsewhere that stated interrupts keep running instructions until they can't go any further or an interrupt signal is sensed. So with this information I checked my volume mixer and proceeded as per your suggestion. However in my volume mixer settings there was no enhancements tab so I was unable to disable all sound effects nor apply any.

After realizing that this wasn't going to help me. I then checked my system tray for the Oxygen HD Audio Configuration icon that is used to control my sound card and I noticed that it wasn't loaded for some reason. So I did a quick reboot and when Windows loaded I noticed it was back again but this time around the high system interrupts problem was gone.

So basically I have put my high system interrupts problem down to the fact that because the Oxygen HD Audio Configuration panel is not being fully loaded when Windows is loaded this is causing the high system interrupts problem because basically the system interrupt for the sound card can't go any further because the Oxygen HD Audio Configuration Panel is not being fully loaded for some reason.

I've just checked the Auzentech website and it seems that there is a more recent driver package compare to the one that I'm currently using. So I am going to download this latest release and hopefully this updated driver will solve this issue once and for all.

Either way I hope this helps others who are using an Auzentech sound card and are faced with this issue. For at the very least you now know what the problem is and worse case scenario if the new drivers don't fix the problem then all you need to do is a simply reboot and hopefully the Oxygen HD Audio Configuration Panel will load for you next time around.

My CPU spyke was indeed comming from a conflict with my External Sound card, disabled my internal sound card and it work fine now !

My system is now lagging due to an average 50% cpu load (on a pretty fast system) which led me here and also led me to a now handy Latency Monitor which for me shows a possible culprit in netbt.sys - MBT Transport driver. Any ideas appreciated.

some new comments:
1. i do as your advice and disable all playback enhancement, but the system interrupt still high, about 25% cpu load
2. i find there are some devices in page "Recording", choose the page and select the device one by one, there is a device which the enhancement is on; when i turn it off, the cpu load is reduced.