Jump to content

How to get the cause of high CPU usage by DPC / Interrupt


Recommended Posts

I can't see any DPC/Interrupt issues in your trace. The Elder Scrolls V Skyrim (TESV.exe) causes most CPU usage and if it is sluggish you should look at the game (reduce details, install updates for the game) or try a newer ATI catalyst driver like the 12.2 preview:

Performance highlights of the AMD Catalyst™ 12.1 Preview driver (in addition to the AMD Catalyst 11.11c performance driver)

Improves performance (10-15%) in Elder Scrolls: Skyrim when Multi-Sample Anti-Aliasing is enabled on the AMD Radeon™ HD 6900 Series for single GPU and AMD CrossFire configurations

Link to comment
Share on other sites


I can't see any DPC/Interrupt issues in your trace. The Elder Scrolls V Skyrim (TESV.exe) causes most CPU usage and if it is sluggish you should look at the game (reduce details, install updates for the game) or try a newer ATI catalyst driver like the 12.2 preview:

Performance highlights of the AMD Catalyst™ 12.1 Preview driver (in addition to the AMD Catalyst 11.11c performance driver)

Improves performance (10-15%) in Elder Scrolls: Skyrim when Multi-Sample Anti-Aliasing is enabled on the AMD Radeon™ HD 6900 Series for single GPU and AMD CrossFire configurations

Thanks very much for checking the traces. I'm rather grasping at straws here as it's extremely frustrating having such poor performance from a game and I doubt I'll play it unless it's fixed, but I've tried reducing details and tweaking in many other ways (running in a window is said to help some people, but not me) to no avail. I'll try the new catalyst though (I need a new one anyway as 12.1 keeps resetting my deinterlace setting to Automatic, breaking video/TV playback on my PC.

Link to comment
Share on other sites

  • 4 weeks later...

NDIS is my problem as well. Updated all LAN drivers. Going to browse through this entire thread.

Does the wireless ethernet adapter impact anything even though I'm not on wireless? Is there even a point in updating it then?

hal.dll is taking pretty much also as you can see.

I pmed you the etl file.

Here's a screedump of latency monitor: http://dl.dropbox.com/u/11526435/latency%20monitor.png

What is highest reported hard page default resolution time?

Looking at the files what is your advice to fix this high cpu issue? I only have it when network traffic is involved, worse at higher dl speeds. I've done all the usual steps and beyond, updated all drivers, bios, spyware, tried other network, no usbdevices connected etc etc etc.

Thanks in advance

Edited by evilpedro
Link to comment
Share on other sites

  • 2 weeks later...

hello magicandre

I found the solution for my problem, it wasnt system internal, the hdmi interface of my monitor was the problem. when I connect my card through dvi/vga, the cpu spikes disappear.

I changed the mini-hdmi / hdmi cable, but that wasnt the problem. got the monitor on RMA, but only firmware updates were done.

so its a conflict, a misscompatibility of my card with my monitor through hdmi, which caused the high cpu usage.

will try a dvi to hdmi adpater or buy a dvi - hdmi cable for getting the cards output digital and not analog (vga).

thanks for your help and patience.

Link to comment
Share on other sites

I found the solution for my problem, it wasnt system internal, the hdmi interface of my monitor was the problem. when I connect my card through dvi/vga, the cpu spikes disappear.

ok, thanks for the feedback. Which monitor do you use? I've already deleted your files so I can't see which monitor you use.

Link to comment
Share on other sites

Hi Andre,

I've known about this thread for a few months now. From all of the searching around I've done about this issue, this seems to be the only way to try and get a definite answer.

I am currently uploading my DPC_Interrupt.etl file (named "kernel.etl") to a site that allows over 300MB file uploads.

I did the process you explained in your first post several months ago and obtained a 1.4GB file showing a few minutes of regular CPU usage and then a massive spike due to System Interrupts at around 600 (6 minutes?).

To briefly explain, ever since I installed my new EVGA GTX 560 Ti 1561-AR model GPU, I've been experiencing System Interrupts on a very often basis. It seems to be triggered by anything, whether I'm playing a game like TESV or Garry's Mod, or even if I just booted up.

I started a thread over at the EVGA forums to try and get some help but didn't receive much in experienced assistance.

If you would like to take a look, I elaborated extensively on the problem that I was encountering over the course of about a month, back in December/January.

Here is the link: EVGA Forums Thread

I know without a doubt that the System Interrupts are directly related to the 560 Ti because it only happens whenever I decide to reinstall it.

By the time I get sick of it, I uninstall it and put my ASUS EN9600GT 512MB card back in, and the problem stops.

What's even more disappointing is that the problem still occurred right from the boot after I completely reinstalled Windows 7.

There was a period of time that I was able to play on the 560 Ti for nearly a week or more without issue after performing a clean boot.

However, the day I decided to restart my computer for some updates, the issues came right back, and I haven't been able to replicate that temporary solution.

It's been a long search with only disappointment. I simply want to use my new video card without issue.

I will be PM'ing you the link to my kernel.etl file.

If you take the time to give it a look, I will be deeply appreciative.

I am on the end of my rope and don't know where else to turn.

Link to comment
Share on other sites

the download doesn't work. Is the file really the DPC_Interrupt.etl or the kernel.etl? The kernel.etl is useless for me. It doesn't contain system information to get the correct debug files.

capture less seconds (with this command it only captures 256MB):


xperf -on latency -stackwalk profile -buffersize 1024 -MaxFile 256 -FileMode Circular && timeout -1 && xperf -d DPC_Interrupt.etl

and compress it as 7z to reduce the size. Please upload it to a fast hoster where I don't need a premium account (mediafire.com or zippyshare.com)

Link to comment
Share on other sites

My mistake, I did not realize that there were two separate files and that there was a difference between them, because they both look identical.

I just recorded another occurrence of the issue, so this will be an entirely up-to-date version.

I have uploaded the DPC_Interrupt.etl file and I will send you the link in a PM.

Sorry for the mix up, this a bit new to me :)

On a side note, I just found out that my 560 Ti shares the same IRQ as my JMicron JMB36X Controller drivers, though they both state there is no conflicting issue.

As far as I know, isn't it extremely inappropriate for two drivers to have the exact IRQ?

In fact, just had ANOTHER issue, so I went straight to the JMB36X drivers and disabled them. As soon as it accepted them, the issue stopped. I'll coast around and see if any issues occur again with this disabled.

IRQ 18 NVIDIA GeForce GTX 560 Ti

IRQ 18 Standard OpenHCD USB Host Controller

IRQ 18 Standard OpenHCD USB Host Controller

IRQ 18 Standard OpenHCD USB Host Controller

IRQ 18 Standard OpenHCD USB Host Controller

IRQ 18 JMicron JMB36X Controller

#EDIT#

Here are two pictures showing my CPU usage and the System Interrupts on an issue that just occurred.

34edyyh.jpg

1fda9h.jpg

- Thomas

Edited by RyanZauros
Link to comment
Share on other sites

sharing an IRQ for 2 devices is bad. Which motherboard do you have? If you have more than 1 PCI-E 16 slot, plug the GPU into a different slot, this may cause the issues:

Total = 8 for module CLASSPNP.SYS

Elapsed Time, > 0 usecs AND <= 1 usecs, 5, or 62.50%

Elapsed Time, > 65536 usecs AND <= 131072 usecs, 3, or 37.50%

Total, 8

Total = 180 for module SCSIPORT.SYS

Elapsed Time, > 0 usecs AND <= 1 usecs, 6, or 3.33%

Elapsed Time, > 1 usecs AND <= 2 usecs, 59, or 32.78%

Elapsed Time, > 2 usecs AND <= 4 usecs, 105, or 58.33%

Elapsed Time, > 4 usecs AND <= 8 usecs, 4, or 2.22%

Elapsed Time, > 65536 usecs AND <= 131072 usecs, 4, or 2.22%

Total, 180

Which of your Drives (OCZ-AGILITY2, SAMSUNG HD502HJ, SAMSUNG SP1614C) is connected to the JMicron JMB36X Controller?

Also which USB devices (Logitech HD Webcam C270, Mouse, Keyboard) are connected to the USB Controller which shares the IRQ?

Edited by MagicAndre1981
Link to comment
Share on other sites

This is my motherboard:

ASUS M4A89GTD PRO/USB3 AM3 AMD 890GX HDMI SATA 6Gb/s USB 3.0 ATX AMD Motherboard

The board has two PCIe 2.0 x 16 slots. The first one (the white-colored panel) is only meant to be used with a single VGA card in the 2nd slot (the blue panel), or in CrossFire.

PCIe 2.0 x16_1 slot (gray, at x 8 link)

PCIe 2.0 x16_2 slot (blue, single at x 16 or dual at x8 link)

Reading through my mobo manual, it told me to install the VGA Switch card in the first slot and to install my single VGA card in the second slot so that I can use the x16 speed, instead of just x8.

"For working at x16 speed on the PCIe 2.0 x16_2 slot (blue), it is necessary to install the bundled VGA switch card to the PCIe 2.0 x16_1 slot (gray)."

So, that is how I currently have it configured. I have never installed the card in the first slot, nor do I have any previous experience with different PCIe 2.0 slots, so I don't know whether doing so would be a mistake or not.

On a side note, the page before it lists the IRQ assignments for the motherboard, and now it makes sense why disabling my JMicron Controller has seemingly solved my problem:

...............................................................|.............C ..................|................D.................|

PCIe x16_1...............................................|.................................|...........Shared..............|

PCIe x16_2...............................................|..........Shared.............|...................................|

Onboard 890GX Video Controller................|..........Shared............|.....................................|

Oncip SATA Controller...............................|................................|..............Shared.............|

Onboard JMB 36x SATA Controller..............|.................................|...........Shared...............|

I have 8 USB ports. Two 2.0 ports on the top front area of the case, four 2.0 ports and two 3.0 ports on the back.

My Logitech Webcam is on IRQ 17 (Standard Enhanced PCI to USB Host Controller)

However, any port that I connect my mouse and keyboard to use the Standard OpenHCD USB Host Controller, which shares IRQ 18.

I'm guessing that the port detects what type of device it is and the appropriate controller takes ownership of it.

So, whatever port I connect my Webcam to will always use the Standard Enhanced PCI to USB Host controller, which has no conflict with IRQ 18.

To answer your first question, however, I don't believe any of my drives are connected to the JMicron controller.

I disabled it last night with no issue and since then have not encountered any system interrupts.

Edited by RyanZauros
Link to comment
Share on other sites

On a side note, the page before it lists the IRQ assignments for the motherboard, and now it makes sense why disabling my JMicron Controller has seemingly solved my problem:

...............................................................|.............C ..................|................D.................|

PCIe x16_1...............................................|.................................|...........Shared..............|

PCIe x16_2...............................................|..........Shared.............|...................................|

Onboard 890GX Video Controller................|..........Shared............|.....................................|

Oncip SATA Controller...............................|................................|..............Shared.............|

Onboard JMB 36x SATA Controller..............|.................................|...........Shared...............|

I disabled it last night with no issue and since then have not encountered any system interrupts.

ok, so the JMicron Controller was the cause.

Great that it is fixed now :thumbup:hello:

Link to comment
Share on other sites

  • 3 weeks later...

sharing an IRQ for 2 devices is bad. Which motherboard do you have? If you have more than 1 PCI-E 16 slot, plug the GPU into a different slot, this may cause the issues:

This is potentially misleading. APIC and PCI-E provide most devices Virtual IRQ's anywhere from 1 to 300 under the NT6 kernel which came abouts with the removal of much of the hardware abstraction layer.

Virtual IRQ sharing is often harmless for the most part. Inter-driver compatibility is the biggest culprit these days where hardware incompabilities are concerned.

Now, if the user was running a PIC hal driver which restricts it to 17 (0-16) on Windows XP (which would prevent Multiprocessor/cores from working as a limitation of PIC) this would be something to immediately try and resolve.

As for the Jmicron issue

it was probably a very old driver that requires updating. depending if it was installed in ESATA mode or not, the driver might have been running an inefficient polling timer.

Edited by Diceman2037
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...