High DPC Latency

Josue Torres

Active member
Joined
Nov 6, 2018
Posts
34
Hello everybody.

It all starts when I get my new graphics card (Nvidia GT 710, I had an Nvidia GT 210 before), I installed it, install the graphics driver and everything is fine until I start listening to music, I started hearing some stuttering in the music and it also happened on youtube videos. I thought it was the speakers so I plugged my headphones and the stuttering was still there. I did some research on the Internet and found that "DPC Latency" could be a cause of the problem. So I downloaded LatencyMon and I found out that there was high latency caused by dxgknl.sys and others. I contacted Microsoft and Nvidia support, neither of them could help me fix the issue. So my last option is to post it here hoping that someone can help me find the root of the problem and probably fix it.

All my audio drivers are up to date, windows is up to date, graphics card drivers are up to date, BIOS is up to date. I tried reinstalling the drivers and it didn't work.

Here is a screenshot from LatencyMon and the Log.
test1.PNG
_________________________________________________________________________________________________________
CONCLUSION
_________________________________________________________________________________________________________
Your system appears to be having trouble handling real-time audio and other tasks. You are likely to experience buffer underruns appearing as drop outs, clicks or pops. One or more DPC routines that belong to a driver running in your system appear to be executing for too long. Also one or more ISR routines that belong to a driver running in your system appear to be executing for too long. One problem may be related to power management, disable CPU throttling settings in Control Panel and BIOS setup. Check for BIOS updates.
LatencyMon has been analyzing your system for 0:06:28 (h:mm:ss) on all processors.




_________________________________________________________________________________________________________
SYSTEM INFORMATION
_________________________________________________________________________________________________________
Computer name: JOSUE-PC
OS version: Windows 10 , 10.0, build: 17134 (x64)
Hardware: OptiPlex 360 , Dell Inc., 0T656F
CPU: GenuineIntel Intel(R) Core(TM)2 Duo CPU E7200 @ 2.53GHz
Logical processors: 2
Processor groups: 1
RAM: 4029 MB total




_________________________________________________________________________________________________________
CPU SPEED
_________________________________________________________________________________________________________
Reported CPU speed: 2527 MHz


Note: reported execution times may be calculated based on a fixed reported CPU speed. Disable variable speed settings like Intel Speed Step and AMD Cool N Quiet in the BIOS setup for more accurate results.




_________________________________________________________________________________________________________
MEASURED INTERRUPT TO USER PROCESS LATENCIES
_________________________________________________________________________________________________________
The interrupt to process latency reflects the measured interval that a usermode process needed to respond to a hardware request from the moment the interrupt service routine started execution. This includes the scheduling and execution of a DPC routine, the signaling of an event and the waking up of a usermode thread from an idle wait state in response to that event.


Highest measured interrupt to process latency (µs): 17631.789582
Average measured interrupt to process latency (µs): 5.614846


Highest measured interrupt to DPC latency (µs): 17620.847222
Average measured interrupt to DPC latency (µs): 2.420927




_________________________________________________________________________________________________________
REPORTED ISRs
_________________________________________________________________________________________________________
Interrupt service routines are routines installed by the OS and device drivers that execute in response to a hardware interrupt signal.


Highest ISR routine execution time (µs): 21998.323308
Driver with highest ISR routine execution time: USBPORT.SYS - USB 1.1 & 2.0 Port Driver, Microsoft Corporation


Highest reported total ISR routine time (%): 1.140799
Driver with highest ISR total time: dxgkrnl.sys - DirectX Graphics Kernel, Microsoft Corporation


Total time spent in ISRs (%) 1.360292


ISR count (execution time <250 µs): 358558
ISR count (execution time 250-500 µs): 0
ISR count (execution time 500-999 µs): 642
ISR count (execution time 1000-1999 µs): 1286
ISR count (execution time 2000-3999 µs): 97
ISR count (execution time >=4000 µs): 0




_________________________________________________________________________________________________________
REPORTED DPCs
_________________________________________________________________________________________________________
DPC routines are part of the interrupt servicing dispatch mechanism and disable the possibility for a process to utilize the CPU while it is interrupted until the DPC has finished execution.


Highest DPC routine execution time (µs): 17822.747922
Driver with highest DPC routine execution time: USBPORT.SYS - USB 1.1 & 2.0 Port Driver, Microsoft Corporation


Highest reported total DPC routine time (%): 0.351072
Driver with highest DPC total execution time: dxgkrnl.sys - DirectX Graphics Kernel, Microsoft Corporation


Total time spent in DPCs (%) 1.744606


DPC count (execution time <250 µs): 1619889
DPC count (execution time 250-500 µs): 0
DPC count (execution time 500-999 µs): 403
DPC count (execution time 1000-1999 µs): 284
DPC count (execution time 2000-3999 µs): 32
DPC count (execution time >=4000 µs): 0




_________________________________________________________________________________________________________
REPORTED HARD PAGEFAULTS
_________________________________________________________________________________________________________
Hard pagefaults are events that get triggered by making use of virtual memory that is not resident in RAM but backed by a memory mapped file on disk. The process of resolving the hard pagefault requires reading in the memory from disk while the process is interrupted and blocked from execution.


NOTE: some processes were hit by hard pagefaults. If these were programs producing audio, they are likely to interrupt the audio stream resulting in dropouts, clicks and pops. Check the Processes tab to see which programs were hit.


Process with highest pagefault count: avastsvc.exe


Total number of hard pagefaults 4024
Hard pagefault count of hardest hit process: 692
Number of processes hit: 90




_________________________________________________________________________________________________________
PER CPU DATA
_________________________________________________________________________________________________________
CPU 0 Interrupt cycle time (s): 29.453321
CPU 0 ISR highest execution time (µs): 20056.364860
CPU 0 ISR total execution time (s): 9.836891
CPU 0 ISR count: 326958
CPU 0 DPC highest execution time (µs): 17822.747922
CPU 0 DPC total execution time (s): 11.035975
CPU 0 DPC count: 1462734
_________________________________________________________________________________________________________
CPU 1 Interrupt cycle time (s): 7.736557
CPU 1 ISR highest execution time (µs): 21998.323308
CPU 1 ISR total execution time (s): 0.719412
CPU 1 ISR count: 33738
CPU 1 DPC highest execution time (µs): 15961.022556
CPU 1 DPC total execution time (s): 2.502723
CPU 1 DPC count: 157888
_________________________________________________________________________________________________________
 
Hi Josue,

We probably need to look at a trace and since you're using Windows 10 please try the following:
Open an elevated command prompt (ie - use "Run as administrator" when launching the command prompt window) and run the command:
Code:
wpr -start GeneralProfile -start Network
Leave the command prompt window open so the trace continues to run in the background. Use your system to reproduce the problem and when the glitches start let it run for about 30 more seconds, switch back to the command prompt window and run the command:
Code:
wpr -stop d:\general.etl
or replace d: with whatever drive works for your system. That should write the file general.etl to the disk which is what you'd need to make available.
 
The traces can get large. The usual recommendation is to upload it to a cloud drive (OneDrive, Dropbox, Google Drive, etc.) or file sharing service and share a download link.
 
Josue Torres said:
I have google drive, I'll upload the compressed RAR file which weights only 39mb, then I'll post the shared link in the thread. Is that ok?
Perfect. I got the file and I'll have a look. A quick glance suggests the same as what LatencyMon is showing - dxgkrnl.sys is getting stuck for a very long time in an ISR and ataport.sys got stuck servicing DPCs for a long time which would cause audio glitches. I'll see if I can drill down further.

I know your CPU is 64-bit but with only 4GB of memory it's often better to be using the 32-bit version of Windows 10. The 32-bit version has a much smaller memory footprint and my first suspicion is that your computer is frequently using the pagefile which is a performance killer.
 
It does look like your physical memory is completely exhausted and your committed memory is that plus 875MB. A big part of the problem is most likely the system pagefile usage; if not the whole problem. Did you recently install the 64 bit version of Windows 10? Was the computer using a 32 bit operating system previously?
 
My computer has always been 64 bit, Before I got my new graphics card I had the same amount of RAM and I had no issues. It was since I first installed it that the problem began.
 
The trace would add to the memory usage so perhaps that is pushing it over the top in this case. Was the operating system always Windows 10?
 
No. Originally It was Windows 7, then got the update to Windows 8 and then to Windows 10. All this happened with years between updates.
 
When you installed the drivers for the GT 710 were you selective about what you installed? The more recent Nvidia driver installs all sorts of stuff by default like Geforce Experience and some other services. The most recent driver for the G210 is 342.01 and I don't think it has quite as large a default memory footprint but I could be wrong. Have you already tried doing a minimal install of the latest drivers for the GT 710?

Please restart your computer and without running a trace make a screenshot of the Task Manager -> Performance -> Memory dialog expanded to show all of the information on that dialog after recreating the problem. I'd like to see what the memory footprint is under normal use without the trace causing any side effects. For example, mine looks like this.
2018-10-21.png

edit: got rid of the disk dialog.
 
Last edited:
That doesn't look bad at all. Was it having the audio problem when you took that screenshot?
 
It does look like there is a very small amount of free memory at the far right end of the memory composition bar which is hard to see. The similarly colored area to the left of the divider is standby memory which means it's memory that was previously used, not needed currently, and ready to be reused if something needs what it contains. However, if the computer needs free memory which exceeds what is available in the free list it will take it from the standby list which is slower than just using free memory but not very much slower. Basically, your memory is being fully utilized with little room to spare. I'm still worried about it needing to frequently resort to using the pagefile.

The thing that worries me most in the trace is the amount of time spent in the dxgkrnl.sys ISR. It make me wonder if there is a problem with the new graphics card but I'm not confident that can be determined unless we can be sure the system isn't being brought to its knees with pagefile hits.
 
Last edited:
It does look like there is a very small amount of free memory at the far right end of the memory composition bar which is hard to see. The similarly colored area to the left of the divider is standby memory which means it's memory that was previously used, not needed currently, and ready to be reused if something needs what it contains. However, if the computer needs free memory which exceeds what is available in the free list it will take it from the standby list which is slower than just using free memory but not very much slower. Basically, your memory is being fully utilized with little room to spare. I'm still worried about it needing to frequently resort to using the pagefile.

Okay, that is strange because everytime I turn on the PC and open task manager only around 40-45% of memory (RAM) is in usage. Would disabling the pagefile be wrong to do?
 
Can you post a screenshot of the graph for the disk which contains your pagefile while the audio glitches are happening? I'd like to see if it's being hit hard. Also, is the disk access light on the computer showing the disk as being constantly accessed?

Please don't disable the pagefile. That's likely to cause all sorts of problems.
 
Here you go! The disk light was Not constantly flashing, Only sometimes. (Screenshot was taken while watching a youtube video with audio issues present)
test4.PNG
 
That doesn't look like it should be causing problems. As far as the memory, "fully utilized" doesn't necessarily mean it's a problem. Standy memory is fine and actually faster than free if the computer needs to use what's in it. It's a little slower than free if it's not. It probably means Windows cached a bunch of code and data in memory anticipating you'll use it at some point based on your normal usage. I'll have a closer look at the trace and let you know what I find but it'll be later as I'm heading out for the evening.

Thank you for being so responsive to my requests. :)
 
Its really strange, another thing I noticed and didn't mention, while the Nvidia Graphics card drivers were uninstalled there was no latency and no audio issues (information provided by LatencyMon), but just as the drivers finished installing the latency for dxgkrnl.sys went up to the sky.

All Right! I'll be waiting for your response! Hope you have a great evening!

I'm really interested in trying to find a fix to this problem haha!
You're welcome and thank you too for being responsive to my replies!
 

Has Sysnative Forums helped you? Please consider donating to help us support the site!

Back
Top