Very high DPC latency and sound/power management issues on Windows 7 Pro x64, Sandy Bridge i3 HP laptop

zzolppari

Honorable
Aug 1, 2013
2
0
10,510
Hi,
So this computer (HP Probook 4530s) is not brand new (about 3-4 years old), but has been recently upgraded with brand new WD HDD, Adata RAM and clean install of Windows 7 Professional x64.
After setting everything up, DPC Latency spikes are high and cause issues with audio, the issues are especially noticeable when there is network traffic or the computer wakes from sleep. I can not pinpoint when did this start, unfortunately, or if it was the case as soon as Windows was installed. Not many actual programs are installed on the computer besides the monitor programs like LatencyMon and Speccy, browser (Firefox x64), antivirus, some productivity stuff like Gimp and LibreOffice and of course HP's device drivers.
LatencyMon has suggested both CPU power management related issue as well as network related. LatencyMon also suggests an BIOS update.
Windows Performance Recorder shows USBPORT.SYS, ACPI.SYS, ndis.sys and tcpip.sys all as occasional causes of high latency. This computer also has other power related issues, such as not being able to hibernate (the computer will crash).
I have tried to disable network and USB drivers in the Device Manager one by one and could not find the culprit(s). I have tried to toggle the power management settings for these drivers, with no effects. I have tried to delete avast, but it did not have any effect (someone on avast forums complained about high latency caused by avast, which is why I tried it). I have tried to disable some devices in the BIOS, to no effect. I couldn't really find any power management or CPU related settings to toggle in HP's BIOS.
The BIOS itself is 2011 version and has never been updated, HP offers an BIOS update for this model that has been released in 2015, but I am hesitant to upgrade BIOS (because of the potential "hardbrick" risks associated with it), unless an commenter can convince me that doing so has a potential to fix these issues(?).
Lastly, I'd like to mention that when I tried to upgrade my Intel Graphics and Chipset drivers from Intel's website, the latency issue only got much much worse. I did a system restore as a fallback to previous drivers. I also tried the same with Realtek Network Drivers from Realtek's website, no use.

Here is LatencyMon report:

_________________________________________________________________________________________________________
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 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:05:04 (h:mm:ss) on all processors.


_________________________________________________________________________________________________________
SYSTEM INFORMATION
_________________________________________________________________________________________________________
Computer name: PROBOOK-PC
OS version: Windows 7 Service Pack 1, 6.1, build: 7601 (x64)
Hardware: HP ProBook 4530s (A6G60ES), Hewlett-Packard, 167C
CPU: GenuineIntel Intel(R) Core(TM) i3-2330M CPU @ 2.20GHz
Logical processors: 4
Processor groups: 1
RAM: 8126 MB total


_________________________________________________________________________________________________________
CPU SPEED
_________________________________________________________________________________________________________
Reported CPU speed: 2195,0 MHz
Measured CPU speed: 525,0 MHz (approx.)

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): 32379,473811
Average measured interrupt to process latency (µs): 9,724411

Highest measured interrupt to DPC latency (µs): 375,995619
Average measured interrupt to DPC latency (µs): 1,607298


_________________________________________________________________________________________________________
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): 213,499317
Driver with highest ISR routine execution time: ndis.sys - NDIS 6.20 driver, Microsoft Corporation

Highest reported total ISR routine time (%): 0,053883
Driver with highest ISR total time: hal.dll - Hardware Abstraction Layer DLL, Microsoft Corporation

Total time spent in ISRs (%) 0,106337

ISR count (execution time <250 µs): 398947
ISR count (execution time 250-500 µs): 0
ISR count (execution time 500-999 µs): 0
ISR count (execution time 1000-1999 µs): 0
ISR count (execution time 2000-3999 µ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): 398,024601
Driver with highest DPC routine execution time: tcpip.sys - TCP/IP Driver, Microsoft Corporation

Highest reported total DPC routine time (%): 0,178657
Driver with highest DPC total execution time: rspLLL64.sys - Resplendence Latency Monitoring and Auxiliary

Kernel Library, Resplendence Software Projects Sp.

Total time spent in DPCs (%) 0,409333

DPC count (execution time <250 µs): 1720755
DPC count (execution time 250-500 µs): 0
DPC count (execution time 500-999 µs): 17
DPC count (execution time 1000-1999 µs): 0
DPC count (execution time 2000-3999 µ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: latmon.exe

Total number of hard pagefaults 41
Hard pagefault count of hardest hit process: 14
Highest hard pagefault resolution time (µs): 113855,141230
Total time spent in hard pagefaults (%): 0,028475
Number of processes hit: 7


_________________________________________________________________________________________________________
PER CPU DATA
_________________________________________________________________________________________________________
CPU 0 Interrupt cycle time (s): 10,563454
CPU 0 ISR highest execution time (µs): 213,499317
CPU 0 ISR total execution time (s): 1,294246
CPU 0 ISR count: 398947
CPU 0 DPC highest execution time (µs): 398,024601
CPU 0 DPC total execution time (s): 4,739738
CPU 0 DPC count: 1680684
_________________________________________________________________________________________________________
CPU 1 Interrupt cycle time (s): 4,848697
CPU 1 ISR highest execution time (µs): 0,0
CPU 1 ISR total execution time (s): 0,0
CPU 1 ISR count: 0
CPU 1 DPC highest execution time (µs): 266,754442
CPU 1 DPC total execution time (s): 0,043137
CPU 1 DPC count: 7148
_________________________________________________________________________________________________________
CPU 2 Interrupt cycle time (s): 2,963701
CPU 2 ISR highest execution time (µs): 0,0
CPU 2 ISR total execution time (s): 0,0
CPU 2 ISR count: 0
CPU 2 DPC highest execution time (µs): 162,244647
CPU 2 DPC total execution time (s): 0,119944
CPU 2 DPC count: 16709
_________________________________________________________________________________________________________
CPU 3 Interrupt cycle time (s): 3,519240
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): 223,102050
CPU 3 DPC total execution time (s): 0,079249
CPU 3 DPC count: 16231
_________________________________________________________________________________________________________
 

zzolppari

Honorable
Aug 1, 2013
2
0
10,510
Hello,
I notice 14 reads and no answer. :) I can not blame anyone, this is a tricky thing to fix. One thing I can tell you for certain, I have owned 7 different Windows 7 machines now and they all have had some kind of issue with latency, some worse than others. They have all been prebuilt brand computers like Acer, Asus, HP and even Apple (Windows through their Bootcamp program).

The good thing is that after doing the BIOS update from 2011 version to more recent 2015 version, the computer is able to sleep and hibernate normally now. The latency is still an issue though, and it's all the same culprits I mentioned in the OP.

It would be unreasonable to assume that someone can just magically fix this nightmare, but I would appreciate any suggestions. Maybe I have just overlooked something? I switched avast! to MSE for the time being and I also deleted IDT HD Audio drivers and let Windows replace this audio driver with the generic High Definition Audio driver, and while the DPC latency is still present, it is not as insufferable as it used to be. Instead of crackling every minute or so, it is random scratch/crackle once in a hour or so now. Still something I'd like to fix, but perhaps something that I am able to live with now. I am fairly certain that one of the biggest culprits was in fact that IDT HD Audio driver, which is a shame, because I miss the equalizer it had. :(