Hello world,
I just joined the forums, normally I can find the solution and fix whatever problem I have, however this time technology got the better of me and I'm in need of help.
My original issue was that my PC used to occasionally hang or outright BSOD. Whenever I checked the logs of the error (if the system created one) it was mentioned that my GPU was disconnected, or some other error occurred that made my GPU restart.
Since that I've performed a clean install of Windows 10 (because I was just simply unable to solve that problem any other way), updated my BIOS, and installed drivers (GPU, chipset, audio, network driver).
The system hanging and BSOD are gone, at least I have not experienced them since the clean install (that was about 2 weeks ago), however I have some other problems now.
At first I had terrible mouse lag, but browsing the forums I found that LatencyMon is a great tool to find the culprit in such cases.
LatencyMon indeed helped me identifying that dxgkrnl.sys has massive spikes in execution time (sometimes ndis.sys was doing the same thing, I have not seen this in the logs for a while now), which made me reinstall directX. After running DirectX End-User Runtime Web Installer my mouse lag was gone, however sometimes I get micro stutters when playing games (the FPS is not affected when that happens, so it's not FPS la).
It appears to be completely random (for example league of legends has stutters, while escape from tarkov - which is a much more demanding game - appears to be running fine most of the time); there is no rule how often it happens, it just comes and goes.
I will post a list of the steps I've taken below, I might forget to mention stuff I've tried already, apologies in advance:
PC Specs:
Win10 version 2009, build: 19045 (x64) is installed on an SSD
AMD Radeon RX 6800
AMD Ryzen 5 3600X
----------------------------------------------------------
I let LatencyMon monitor my system yesterday all day, I will copy the logs below
_
CONCLUSION
_
Your system seems to be having difficulty handling real-time audio and other tasks. You may experience drop outs, clicks or pops due to buffer underruns. One or more DPC routines that belong to a driver running in your system appear to be executing for too long. At least one detected problem appears to be network related. In case you are using a WLAN adapter, try disabling it to get better results. 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 7:15:54 (h🇲🇲ss) on all processors.
_
SYSTEM INFORMATION
_
Computer name: DESKTOP-G83ER0M
OS version: Windows 10, 10.0, version 2009, build: 19045 (x64)
Hardware: System Product Name, System manufacturer
BIOS: BIOS Date: 11/21/22 12:54:27 Ver: 05.00011
CPU: AuthenticAMD AMD Ryzen 5 3600 6-Core Processor
Logical processors: 12
Processor groups: 1
Processor group size: 12
RAM: 32680 MB total
_
CPU SPEED
_
Reported CPU speed (WMI): 3951 MHz
Reported CPU speed (registry): 3950 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): 1059.90
Average measured interrupt to process latency (µs): 6.193418
Highest measured interrupt to DPC latency (µs): 666.10
Average measured interrupt to DPC latency (µs): 2.901748
_
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): 44.820
Driver with highest ISR routine execution time: HDAudBus.sys - High Definition Audio Bus Driver, Microsoft Corporation
Highest reported total ISR routine time (%): 0.002936
Driver with highest ISR total time: Wdf01000.sys - Kernel Mode Driver Framework Runtime, Microsoft Corporation
Total time spent in ISRs (%) 0.003463
ISR count (execution time <250 µs): 11442358
ISR count (execution time 250-500 µs): 0
ISR count (execution time 500-1000 µs): 0
ISR count (execution time 1000-2000 µs): 0
ISR count (execution time 2000-4000 µs): 0
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): 1987.40
Driver with highest DPC routine execution time: ndis.sys - Network Driver Interface Specification (NDIS), Microsoft Corporation
Highest reported total DPC routine time (%): 0.146897
Driver with highest DPC total execution time: dxgkrnl.sys - DirectX Graphics Kernel, Microsoft Corporation
Total time spent in DPCs (%) 0.223802
DPC count (execution time <250 µs): 65702587
DPC count (execution time 250-500 µs): 0
DPC count (execution time 500-10000 µs): 180210
DPC count (execution time 1000-2000 µs): 2
DPC count (execution time 2000-4000 µs): 0
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: system
Total number of hard pagefaults 98846
Hard pagefault count of hardest hit process: 31092
Number of processes hit: 88
_
PER CPU DATA
_
CPU 0 Interrupt cycle time (s): 1495.295467
CPU 0 ISR highest execution time (µs): 44.820
CPU 0 ISR total execution time (s): 5.118860
CPU 0 ISR count: 3666356
CPU 0 DPC highest execution time (µs): 800.740
CPU 0 DPC total execution time (s): 591.977360
CPU 0 DPC count: 56551326
_
CPU 1 Interrupt cycle time (s): 282.636654
CPU 1 ISR highest execution time (µs): 27.090127
CPU 1 ISR total execution time (s): 3.797146
CPU 1 ISR count: 4544318
CPU 1 DPC highest execution time (µs): 1240.980
CPU 1 DPC total execution time (s): 90.297497
CPU 1 DPC count: 5244587
_
CPU 2 Interrupt cycle time (s): 108.493564
CPU 2 ISR highest execution time (µs): 28.929873
CPU 2 ISR total execution time (s): 0.008040
CPU 2 ISR count: 912
CPU 2 DPC highest execution time (µs): 981.980
CPU 2 DPC total execution time (s): 5.625465
CPU 2 DPC count: 1030184
_
CPU 3 Interrupt cycle time (s): 104.623428
CPU 3 ISR highest execution time (µs): 0.0
CPU 3 ISR total execution time (s): 0.0
CPU 3 ISR count: 0
CPU 3 DPC highest execution time (µs): 936.040
CPU 3 DPC total execution time (s): 1.421527
CPU 3 DPC count: 390098
_
CPU 4 Interrupt cycle time (s): 145.440368
CPU 4 ISR highest execution time (µs): 0.0
CPU 4 ISR total execution time (s): 0.0
CPU 4 ISR count: 0
CPU 4 DPC highest execution time (µs): 1987.40
CPU 4 DPC total execution time (s): 2.895269
CPU 4 DPC count: 792444
_
CPU 5 Interrupt cycle time (s): 93.682164
CPU 5 ISR highest execution time (µs): 0.0
CPU 5 ISR total execution time (s): 0.0
CPU 5 ISR count: 0
CPU 5 DPC highest execution time (µs): 214.240
CPU 5 DPC total execution time (s): 0.372458
CPU 5 DPC count: 98011
_
CPU 6 Interrupt cycle time (s): 141.849340
CPU 6 ISR highest execution time (µs): 0.0
CPU 6 ISR total execution time (s): 0.0
CPU 6 ISR count: 0
CPU 6 DPC highest execution time (µs): 296.450127
CPU 6 DPC total execution time (s): 3.294034
CPU 6 DPC count: 684478
_
CPU 7 Interrupt cycle time (s): 99.677522
CPU 7 ISR highest execution time (µs): 0.0
CPU 7 ISR total execution time (s): 0.0
CPU 7 ISR count: 0
CPU 7 DPC highest execution time (µs): 220.070127
CPU 7 DPC total execution time (s): 0.416250
CPU 7 DPC count: 87716
_
CPU 8 Interrupt cycle time (s): 163.129850
CPU 8 ISR highest execution time (µs): 13.820
CPU 8 ISR total execution time (s): 1.518899
CPU 8 ISR count: 2573217
CPU 8 DPC highest execution time (µs): 483.829873
CPU 8 DPC total execution time (s): 2.864011
CPU 8 DPC count: 565349
_
CPU 9 Interrupt cycle time (s): 107.770741
CPU 9 ISR highest execution time (µs): 9.310127
CPU 9 ISR total execution time (s): 0.038848
CPU 9 ISR count: 56503
CPU 9 DPC highest execution time (µs): 177.340
CPU 9 DPC total execution time (s): 0.474352
CPU 9 DPC count: 86669
_
CPU 10 Interrupt cycle time (s): 129.662424
CPU 10 ISR highest execution time (µs): 10.110127
CPU 10 ISR total execution time (s): 0.211578
CPU 10 ISR count: 330917
CPU 10 DPC highest execution time (µs): 421.540
CPU 10 DPC total execution time (s): 1.077506
CPU 10 DPC count: 170031
_
CPU 11 Interrupt cycle time (s): 122.967764
CPU 11 ISR highest execution time (µs): 12.80
CPU 11 ISR total execution time (s): 0.176869
CPU 11 ISR count: 270135
CPU 11 DPC highest execution time (µs): 215.209873
CPU 11 DPC total execution time (s): 1.692704
CPU 11 DPC count: 181906
_
From what I understand dxgkrnl.sys is not even necessarily the culprit, it's possible that some other application is making calls to it, but I'm stuck and don't really know how to figure that out.
Could someone please help me to find a solution to my stutter problem?
I'm open to any suggestions/ideas/advice.
I just joined the forums, normally I can find the solution and fix whatever problem I have, however this time technology got the better of me and I'm in need of help.
My original issue was that my PC used to occasionally hang or outright BSOD. Whenever I checked the logs of the error (if the system created one) it was mentioned that my GPU was disconnected, or some other error occurred that made my GPU restart.
Since that I've performed a clean install of Windows 10 (because I was just simply unable to solve that problem any other way), updated my BIOS, and installed drivers (GPU, chipset, audio, network driver).
The system hanging and BSOD are gone, at least I have not experienced them since the clean install (that was about 2 weeks ago), however I have some other problems now.
At first I had terrible mouse lag, but browsing the forums I found that LatencyMon is a great tool to find the culprit in such cases.
LatencyMon indeed helped me identifying that dxgkrnl.sys has massive spikes in execution time (sometimes ndis.sys was doing the same thing, I have not seen this in the logs for a while now), which made me reinstall directX. After running DirectX End-User Runtime Web Installer my mouse lag was gone, however sometimes I get micro stutters when playing games (the FPS is not affected when that happens, so it's not FPS la).
It appears to be completely random (for example league of legends has stutters, while escape from tarkov - which is a much more demanding game - appears to be running fine most of the time); there is no rule how often it happens, it just comes and goes.
I will post a list of the steps I've taken below, I might forget to mention stuff I've tried already, apologies in advance:
- my PC is on performance mode (in the power settings)
- high precision event timer (HPET) is disabled (device manager)
- fTMP is disabled (BIOS)
- I've tried sfc /scannow and dism / online / cleanup-image / restorehealth unfortunately these didn't help either
- tried disabling the WLAN adapter (I'm using ethernet cable normally so there's not much use of it anyway)
- I'm not sure where and how to disable power throttling, from my understanding using my PC on performance option should turn this off (when I check apps in task manager all apps are in "disabled power throttling" state)
- I've also created an automated task for EmptyStandbyList (it used to run every 5 minutes), because I read in another post where this stuttering problem was caused by the system not handling standby memory correctly, unfortunately it did not help me so I disabled that
- I've already tried to reinstall games that have the stutter issue
PC Specs:
Win10 version 2009, build: 19045 (x64) is installed on an SSD
AMD Radeon RX 6800
AMD Ryzen 5 3600X
----------------------------------------------------------
I let LatencyMon monitor my system yesterday all day, I will copy the logs below
_
CONCLUSION
_
Your system seems to be having difficulty handling real-time audio and other tasks. You may experience drop outs, clicks or pops due to buffer underruns. One or more DPC routines that belong to a driver running in your system appear to be executing for too long. At least one detected problem appears to be network related. In case you are using a WLAN adapter, try disabling it to get better results. 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 7:15:54 (h🇲🇲ss) on all processors.
_
SYSTEM INFORMATION
_
Computer name: DESKTOP-G83ER0M
OS version: Windows 10, 10.0, version 2009, build: 19045 (x64)
Hardware: System Product Name, System manufacturer
BIOS: BIOS Date: 11/21/22 12:54:27 Ver: 05.00011
CPU: AuthenticAMD AMD Ryzen 5 3600 6-Core Processor
Logical processors: 12
Processor groups: 1
Processor group size: 12
RAM: 32680 MB total
_
CPU SPEED
_
Reported CPU speed (WMI): 3951 MHz
Reported CPU speed (registry): 3950 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): 1059.90
Average measured interrupt to process latency (µs): 6.193418
Highest measured interrupt to DPC latency (µs): 666.10
Average measured interrupt to DPC latency (µs): 2.901748
_
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): 44.820
Driver with highest ISR routine execution time: HDAudBus.sys - High Definition Audio Bus Driver, Microsoft Corporation
Highest reported total ISR routine time (%): 0.002936
Driver with highest ISR total time: Wdf01000.sys - Kernel Mode Driver Framework Runtime, Microsoft Corporation
Total time spent in ISRs (%) 0.003463
ISR count (execution time <250 µs): 11442358
ISR count (execution time 250-500 µs): 0
ISR count (execution time 500-1000 µs): 0
ISR count (execution time 1000-2000 µs): 0
ISR count (execution time 2000-4000 µs): 0
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): 1987.40
Driver with highest DPC routine execution time: ndis.sys - Network Driver Interface Specification (NDIS), Microsoft Corporation
Highest reported total DPC routine time (%): 0.146897
Driver with highest DPC total execution time: dxgkrnl.sys - DirectX Graphics Kernel, Microsoft Corporation
Total time spent in DPCs (%) 0.223802
DPC count (execution time <250 µs): 65702587
DPC count (execution time 250-500 µs): 0
DPC count (execution time 500-10000 µs): 180210
DPC count (execution time 1000-2000 µs): 2
DPC count (execution time 2000-4000 µs): 0
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: system
Total number of hard pagefaults 98846
Hard pagefault count of hardest hit process: 31092
Number of processes hit: 88
_
PER CPU DATA
_
CPU 0 Interrupt cycle time (s): 1495.295467
CPU 0 ISR highest execution time (µs): 44.820
CPU 0 ISR total execution time (s): 5.118860
CPU 0 ISR count: 3666356
CPU 0 DPC highest execution time (µs): 800.740
CPU 0 DPC total execution time (s): 591.977360
CPU 0 DPC count: 56551326
_
CPU 1 Interrupt cycle time (s): 282.636654
CPU 1 ISR highest execution time (µs): 27.090127
CPU 1 ISR total execution time (s): 3.797146
CPU 1 ISR count: 4544318
CPU 1 DPC highest execution time (µs): 1240.980
CPU 1 DPC total execution time (s): 90.297497
CPU 1 DPC count: 5244587
_
CPU 2 Interrupt cycle time (s): 108.493564
CPU 2 ISR highest execution time (µs): 28.929873
CPU 2 ISR total execution time (s): 0.008040
CPU 2 ISR count: 912
CPU 2 DPC highest execution time (µs): 981.980
CPU 2 DPC total execution time (s): 5.625465
CPU 2 DPC count: 1030184
_
CPU 3 Interrupt cycle time (s): 104.623428
CPU 3 ISR highest execution time (µs): 0.0
CPU 3 ISR total execution time (s): 0.0
CPU 3 ISR count: 0
CPU 3 DPC highest execution time (µs): 936.040
CPU 3 DPC total execution time (s): 1.421527
CPU 3 DPC count: 390098
_
CPU 4 Interrupt cycle time (s): 145.440368
CPU 4 ISR highest execution time (µs): 0.0
CPU 4 ISR total execution time (s): 0.0
CPU 4 ISR count: 0
CPU 4 DPC highest execution time (µs): 1987.40
CPU 4 DPC total execution time (s): 2.895269
CPU 4 DPC count: 792444
_
CPU 5 Interrupt cycle time (s): 93.682164
CPU 5 ISR highest execution time (µs): 0.0
CPU 5 ISR total execution time (s): 0.0
CPU 5 ISR count: 0
CPU 5 DPC highest execution time (µs): 214.240
CPU 5 DPC total execution time (s): 0.372458
CPU 5 DPC count: 98011
_
CPU 6 Interrupt cycle time (s): 141.849340
CPU 6 ISR highest execution time (µs): 0.0
CPU 6 ISR total execution time (s): 0.0
CPU 6 ISR count: 0
CPU 6 DPC highest execution time (µs): 296.450127
CPU 6 DPC total execution time (s): 3.294034
CPU 6 DPC count: 684478
_
CPU 7 Interrupt cycle time (s): 99.677522
CPU 7 ISR highest execution time (µs): 0.0
CPU 7 ISR total execution time (s): 0.0
CPU 7 ISR count: 0
CPU 7 DPC highest execution time (µs): 220.070127
CPU 7 DPC total execution time (s): 0.416250
CPU 7 DPC count: 87716
_
CPU 8 Interrupt cycle time (s): 163.129850
CPU 8 ISR highest execution time (µs): 13.820
CPU 8 ISR total execution time (s): 1.518899
CPU 8 ISR count: 2573217
CPU 8 DPC highest execution time (µs): 483.829873
CPU 8 DPC total execution time (s): 2.864011
CPU 8 DPC count: 565349
_
CPU 9 Interrupt cycle time (s): 107.770741
CPU 9 ISR highest execution time (µs): 9.310127
CPU 9 ISR total execution time (s): 0.038848
CPU 9 ISR count: 56503
CPU 9 DPC highest execution time (µs): 177.340
CPU 9 DPC total execution time (s): 0.474352
CPU 9 DPC count: 86669
_
CPU 10 Interrupt cycle time (s): 129.662424
CPU 10 ISR highest execution time (µs): 10.110127
CPU 10 ISR total execution time (s): 0.211578
CPU 10 ISR count: 330917
CPU 10 DPC highest execution time (µs): 421.540
CPU 10 DPC total execution time (s): 1.077506
CPU 10 DPC count: 170031
_
CPU 11 Interrupt cycle time (s): 122.967764
CPU 11 ISR highest execution time (µs): 12.80
CPU 11 ISR total execution time (s): 0.176869
CPU 11 ISR count: 270135
CPU 11 DPC highest execution time (µs): 215.209873
CPU 11 DPC total execution time (s): 1.692704
CPU 11 DPC count: 181906
_
From what I understand dxgkrnl.sys is not even necessarily the culprit, it's possible that some other application is making calls to it, but I'm stuck and don't really know how to figure that out.
Could someone please help me to find a solution to my stutter problem?
I'm open to any suggestions/ideas/advice.