Jump to content

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


Recommended Posts

the new trace is more worse:

And I can see HAL issues caused by HalpHpetClockInterrupt Hpet = High Precision Event Timer (http://en.wikipedia.org/wiki/High_Precision_Event_Timer). Try to disable this in the BIOS.

Hi Andre,

I could not find a setting in the BIOS for Hpet. I did find that there is a windows command to turn it on or off though here I used the command bcdedit /set useplatformclock true and verifiied it was on with WinTimerTester.exe, rebooted and it worked fine the rest of the day. The next day it had the same problem so I used the command bcdedit /set useplatformclock false, rebooted and it ran fine the rest of the day. The third day it had the same problem so I reset the command to true, rebooted and it ran fine the rest of the day. Today it had the same problem and I ran a new report which is here. I also included a Latency report because even though the issue appears to be the same the report was dramatically different than before.

Thanks, Ron

Link to comment
Share on other sites


the trace shows USBport issues, the hal is gone (maybe because of the BCD entry).

so again, play with the USb devices and connect them to different ports. Test every combination and hopefully this fixes it.

I have found an interesting thing. The issue happens from a cold boot only and it doesn't matter what programs I run or don't run. It seems to be related to how long the computer is running. If instead I reboot the machine, even right after I first started it, it runs fine all day long. So there is something different between a cold boot and a restart that fixes things. Not sure what though. I will try the different USB configurations and see if that helps at all.

Link to comment
Share on other sites

I can see the high CPU usage spikes by mediaPortal and the ISR/DPC.

I can see that the amdppm.sys driver with the function C1Halt causes it. This is the power management driver for your AMD Athlon II X4 630 Processor. This call causes halmacpi.dll!HalpClockInterruptPn CPU usage. This repeats very 100s. The MediaPortal changes the CPU affinity (kernel32.dll!SetThreadAffinityMask) and this seems to cause the spikes. Which powerplan do you use? Do you use the latets BIOS?

I've not told you to capture the CPU frequency data :(


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

this (POWER) captures CPU power stats data.

Hi

I made a capture just after seeing a major glitch in Mediaportal earlier, which I've uploaded to http://www.mediafire.com/?cxaguv6ggvcm9du

Considering what you said about the power management driver, I then switched the Power profile to High Performance and made another capture with Mediaportal running. I didn't notice any glitches during this time but they tend to occur randomly anyway. You can download this capture from http://www.mediafire.com/?a28ys3o2rol9m88

Both captures were made whilst I was watching Ch4 News. Strangely, only with this programme and no others on Ch4 or any other channel, I get constant audio popping and crackling throughout (every night. When I first noticed it I thought they must be having some trouble with their equipment but it's clear now that the problem must be at my end). No one on the Mediaportal forum has suggested an explanation for this, but I doubt it's related to DPC latency, as that wouldn't affect only one programme.

Oh, I checked the BIOS and it is the latest. The board is a Biostar TA790GXBE with BIOS 78DGA705 http://www.biostar.com.tw/app/en/mb/introduction.php?S_ID=419

Link to comment
Share on other sites

it is the same. MediaPortal calls the CPU affinity function and this causes the DPC/ISR issues. But during the time, the CPU is idle and only goes to 1,6GHz (2nd Cool'n'Quiet state)

Is the HighPerformance mode better? I can't really see a difference.

Link to comment
Share on other sites

I can't really say the High Performance mode is better yet. I'll leave it in that mode and monitor for glitches for a couple of days, but MediaPortal is still showing continuity errors in it's logs, so if those are being caused by the DPC issues (and you say the .etl capture looks much the same) then High Performance hasn't fixed that.

I'll ask in the Mediaportal forum if they know why it's doing this. Can you expand a bit on the problem so I can describe it better to them (i.e. what you mean by it causing DPC/ISR issues)?

Task Manager shows Mediaportal using 8-14% CPU whilst watching TV by the way, so it's not completely idle.

Link to comment
Share on other sites

TV playback kept freezing momentarily tonight, so switching to High Performance hasn't helped. I tried moving the timeshifting files from RAMdisk to HDD as well and that didn't help either.

I've uploaded another capture after a couple of glitches if you could check that for me to see if it looks any different http://www.mediafire.com/?sn666c6taoo633e

Link to comment
Share on other sites

The MediaPortal may hang becasue it waits. I can see it causes ntkrpamp.exe!KiProcessThreadWaitList calls which calls ntkrpamp.exe!KiReadyThread.

So we must capture ReadyThread data, too.


xperf -on latency+POWER+DISPATCHER -stackwalk profile+CSwitch+ReadyThread -buffersize 1024 -MaxFile 256 -FileMode Circular && timeout -1 && xperf -d DPC_Interrupt.etl

But I must say I never used xperf to analyze hangs. I've uses the Builin profiler of Visual Studio 2010 which uses xperf/ETW in background and shiows me nice list.

Link to comment
Share on other sites

this is really strange. Can you add a dummy boot entry (clone current one) and add a timeout (1min) to warm up the hardware. Does this also fixes it?

After days of testing and narrowing things down, it does appear to be a temperature issue. After I had the initial problem, I shut down the computer and let it sit for about 3 hours. Started it and it was fine the rest of the day. One morning it was particularly cold and it took almost 25 minutes before I started seeing spikes in DPC times. This morning I turned the computer on and let it sir for 6 minutes before I let it start the boot process (I have an encrypted hard drive that requires a password, so I let it sit on the password prompt) and that was not long enough. It usually starts with a spike in the DPC times around 12 to 15 minutes from start-up. I have attached some informational screen shots at www.willowproperties.net/temp.html 1temp.jpg shows the list of drivers and their highest execution times right after the first spike. 1temp.txt shows the report at that same time. 2temp.jpg shows that the spike was generated from the kernel timer latency versus one of the drivers (not sure what the difference is). 2temp.txt is the report after it has run and the DPC times keep getting worse. 3temp.jpg is the screen shot of the drivers DPC times just before I reboot. You can see that there isn't one particular driver that has high DPC times, there are several. 4temp.jpg shows that both the kernel timer latency and driver DPC latency are both having issues.

The end result is that it seems to be a hardware temperature issue and if I reboot after about 30 minutes of runtime the problem goes away until the machine cools off overnight. Not sure there is a fix. Your thoughts?

Thanks, Ron

Link to comment
Share on other sites

Run OpenHardwareMonitorand check the temperature of CPU/GPU/Motherboard/HDD:

I tried turning on the computer this morning and letting it sit for 30 minutes at the encrypted hard drive password prompt to make sure it was past the warm up time that causes the DPC spike and following degradation. Then when I let if finish booting I found that the DPC latencys were already bad as if I had let it boot in the first place. I downloaded the program you suggested and saved 2 reports. One before I rebooted and one after. And as always, once I rebooted the DPC latency issues are gone and it will run the rest of the day with no problems.

1temp.txt

2temp.txt

Link to comment
Share on other sites

Here im again.

I gave up trying. I sent back my comp where i bought it. They did not found anything wrong. When i got it back did the same things. Fresh windos, but only just 1 driver for Lan. Then i started to torrenting. Then i started to using DPC Latency checker. The problem is gone. Interresting. What is the difference?

- new uTorrent, 3.2 not 3.1.2, and totally new torrents

- still windows soundcard driver

- intel inf, intel mei, intel rapid storage drivers still not installed

- nod32 antivirus and not AVG

- new ATI driver, when the problem was on my comp still just 12-4 release, and now there is a new one, 12-6

This is what are the differences atm.

(And sry for my English again.)

Edited by lofagi
Link to comment
Share on other sites

Hi Andre,

got the impression you are the (only) one to save me .

As usual, the story is:

- CPU randomly stalling at +50%

- reboot = fix

- occurs randomly, sometime directly after start, sometime after hours of using, but generally very seldom (like once a week while using PC everyday)

- temperature seems not to be the issue (max 50)

- BIOS, drivers... up to date (as far as i can see)

- All power management settings I was able to find disabled/ set to „max power“

Could you see something interesting in the logs, please? What about the hal.dll?

Logs: https://docs.google.com/open?id=0B-XYYunI5kZqRDEtbFJLZzdZY00

Anyway thank you for help and eternal patience!

Edited by Kessu
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...