[wdmaudiodev] Re: Increasing Timer Resolution results in erratic Scheduling/DPC Latencies on Windows 10

  • From: "Matthew van Eerde" <dmarc-noreply@xxxxxxxxxxxxx> (Redacted sender "Matthew.van.Eerde" for DMARC)
  • To: "wdmaudiodev@xxxxxxxxxxxxx" <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Tue, 7 May 2019 15:10:54 +0000

Start by filing a problem report in Feedback Hub. Include “recreate my problem” 
logs of the problem in action.
Then send me a link to the problem report.
https://matthewvaneerde.wordpress.com/2016/09/26/report-problems-with-logs-and-suggest-features-with-the-feedback-hub/

________________________________
From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on 
behalf of AI Developer <developer@xxxxxxxxxxxxxxxx>
Sent: Tuesday, May 7, 2019 7:03:38 AM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Increasing Timer Resolution results in erratic 
Scheduling/DPC Latencies on Windows 10

We've come across a few Desktop PCs (and at least one MacBook Pro running 
BootCamp) where this happens.

It doesn't matter how the resolution is increased, whether from user mode by 
timeBeginPeriod() or in kernel mode via ExSetTimerResolution() - the result is 
the same.

Once the resolution is increased, from time to time (with a gap of  5 - 30 
seconds), there will be scheduling delays.

The delays can be seen in various forms (all coinciding):

- LatencyMon (from Resplendence) reports an Interrupt to Process latency of 
about 10 - 12 milliseconds from time to tim.
- Our NDIS Protocol driver receives network packets about 10-12 milliseconds 
late from time to time.
- A simple user mode program calling Sleep(1) will wake up after 10-12 
milliseconds from time to time.

[Needless to say, this results in audio dropouts]

At the same time, LatencyMon does not indicate any specific DPC or Interrupt 
taking a long time (max. reported is about 500 microseconds).

Also checked with Windows Performance Toolkit (xperf). Once again, there's no 
indication of any driver spending that much amount of time in ISRs or DPCs.

Further, I've tried disabling all non-essential devices (WiFi, Ethernet, 
BlueTooth, Audio devices, other USB devices) and services (VirusScan, FireWall, 
etc..) and background apps.

LatencyMon suggested disabling Power Throttling (also did that), and updating 
the BIOS (also did that). But that also didn't help.

Also tried disabling dynamictick, and enabling platfrom clock, etc.. Once 
again, none of this helps.

I'm surprised that this has not come up before!

Any suggestions on where to look for or how to solve this would be greatly 
appreciated!

Thanks.
Devendra.





Other related posts: