Windows 8's greatest weakness: DPC latency

Page 3 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

lopri

Elite Member
Jul 27, 2002
13,211
596
126
Uh, that happens for me a lot in Windows 7.

I am suspecting graphics memory, or video card performance in relation to DPC latency. The massive frame drops I observed did not occur with HD 7950 (3 GB), GTX 670 (2 GB), and HD 6870 (1 GB). It was really bad with GT 240 (512 MB, GDDR5), however.

I kept an eye on video memory usage (of GT 240) through processor inspector and GPU-Z, and when the video memory usage gets close to 400 MB or beyond, the frame drops occurred simply selecting different windows or different tabs in a browser. I will see if I can reproduce the symptoms with graphics cards that have 1 GB or more memory by loading more stuff.

Obviously most things in life are a matter of degree and one can always push hardware to limits, regardless of which OS. What I am saying is things are perceivably worse in Win 8 compared to in Win 7, at least for GT 240.
 
Last edited:

artins90

Junior Member
Aug 12, 2012
3
0
61
Guys I noticed something interesting; my system idles between 830 and 990 tested using Latencymon, but when I launch any CPU intensive task the DPC latency lowers to values between 7 and 20.

Idle
16h6qnb.jpg


Intel burn Test running

2pob6op.png


Video fixing dpc latency using Intel burn test
http://www.youtube.com/watch?v=Zys_zBlQtJY

There is no difference what so ever in the configuration of my system between the 2 screenshots, I took them during the same session a couple of minutes or less passed between the 2 pictures all I did is running Intel burn test and my latency problems were gone.

My i5 2500k lowers to 1.6 ghz when Idle and goes up to 3.7 ghz when under load so I thought it was related to power options, Intel Speedstep technology and to C-states so I went into the bios to disable them and I set the power options to high performance,
I ran latencymon again but the results didn't change still in the 900 area when idle.

I checked the cpu frequency before the test and it was hammering at 3.7 Ghz so I guess the high latency is due to some system that microsoft implemented to save battery life, when the OS detects high CPU usage it switches to some sort of low latency mode and If so I would like to know how to disable this "feature".

There are problems when I play 1080p files with FLAC audio, since the GPU does most of the work and my cpu stays at 10% while i play it, the high DPC latency becomes an issue and I get audio stuttering and dropped or delayed frames, pc games that have low cpu usage have the same problem.

Could you kindly try to run Latencymon and intel burn test at the same time I would like to know if this happens only to me
 
Last edited:

Continuity28

Golden Member
Jul 2, 2005
1,653
0
76
There are problems when I play 1080p files with FLAC audio, since the GPU does most of the work and my cpu stays at 10% while i play it, the high DPC latency becomes an issue and I get audio stuttering and dropped or delayed frames, pc games that have low cpu usage have the same problem.

Could you kindly try to run Latencymon and intel burn test at the same time I would like to know if this happens only to me

You're not alone. I don't have the RTM version to test on, but that's what was happening in the Preview version.

Would you mind trying something?

Enter this command in an elevated command prompt, reboot, and see if it helps:

Code:
bcdedit /set disabledynamictick yes

What it will do is stop Windows from coalescing CPU clock ticks when idle, a feature added in Windows 8 for power savings.
 

artins90

Junior Member
Aug 12, 2012
3
0
61
Would you mind trying something?

Enter this command in an elevated command prompt, reboot, and see if it helps:

Code:
bcdedit /set disabledynamictick yes

What it will do is stop Windows from coalescing CPU clock ticks when idle, a feature added in Windows 8 for power savings.

You made my day Continuity28! 21 stable, Windows 8 is better than Windows 7 i had 60 with Windows 7, that setting should be spread to the whole internet thanks again!
 

FDCPCZ

Junior Member
Sep 12, 2006
9
0
0
You're not alone. I don't have the RTM version to test on, but that's what was happening in the Preview version.

Would you mind trying something?

Enter this command in an elevated command prompt, reboot, and see if it helps:

Code:
bcdedit /set disabledynamictick yes

What it will do is stop Windows from coalescing CPU clock ticks when idle, a feature added in Windows 8 for power savings.

Excellent info
Works a treat.

I also noticed the high latency problems on an idle or near idle PC.
 

Elix Berd

Junior Member
Aug 21, 2012
5
0
0
Enter this command in an elevated command prompt, reboot, and see if it helps:

Code:
bcdedit /set disabledynamictick yes
I just registered to say it didn't work for me :( I run cmd.exe with administrator rights and copy-pasted your command and rebooted. Still the same 1000ms of latency...
 

Ryun

Member
Nov 28, 2008
42
0
66
Just FYI for anyone that is using DPC Latency Checker on Windows 8. The results are not accurate.

Windows 8 Compatibility: The DPC latency utility runs on Windows 8 but does not show correct values. The output suggests that the Windows 8 kernel performs badly and introduces a constant latency of one millisecond which is not the case in practice. DPCs in the Windows 8 kernel behave identical to Windows 7. The utility produces incorrect results because the implementation of kernel timers has changed in Windows 8 which causes a side effect with the measuring algorithm used by the utility. Thesycon is working on a new version of the DPC latency utility and will make it available on this site as soon as it is finished.

http://www.thesycon.de/eng/latency_check.shtml

I'm not saying that those who are having problems don't have high DPC. But if you're Windows 8 system is running fine and you run DPC Latency checker and get high latency don't freak out. ;)
 

Jeff7181

Lifer
Aug 21, 2002
18,368
11
81
So, back to the real problem with Windows 8, the Full screen start menu formerly known as Metro. How big a crap pile is that, eh? :)
 

Varkaf

Junior Member
Oct 15, 2012
1
0
0
Hi, I've tried the cmd line in Windows 8 Final release and it still doesn't work. The problem seems to be caused by my Wireless adapter on a hp 6720s , if i disable the wireless i don't get spikes anymore but it's still yellow in the DPC Latency. It's annoying because i hear pops and cracks .. any other command that could work?
dpcfail.png
 
Last edited:

Rhonda the Sly

Senior member
Nov 22, 2007
818
4
76
Hi, I've tried the cmd line in Windows 8 Final release and it still doesn't work. The problem seems to be caused by my Wireless adapter on a hp 6720s , if i disable the wireless i don't get spikes anymore but it's still yellow in the DPC Latency. It's annoying because i hear pops and cracks .. any other command that could work?
dpcfail.png
From Ryun's post above:

Ryun said:
The DPC latency utility runs on Windows 8 but does not show correct values.
 

spacebar2012

Junior Member
Oct 17, 2012
1
0
0
What CDJay on EightForums posted:

"Windows 8 Compatibility: The DPC latency utility runs on Windows 8 but does not show correct values. The output suggests that the Windows 8 kernel performs badly and introduces a constant latency of one millisecond which is not the case in practice. DPCs in the Windows 8 kernel behave identical to Windows 7. The utility produces incorrect results because the implementation of kernel timers has changed in Windows 8 which causes a side effect with the measuring algorithm used by the utility. Thesycon is working on a new version of the DPC latency utility and will make it available on this site as soon as it is finished"

IE don't worry about it. In fact from something I read Cakewalk (who make a DAW called Sonar) claimed improvements in core scheduling, latency, availability etc. "


I looked all this up today when I ran DPCLat and found the following results.

DPC8.png


Messed around with drivers and settings for 2 hours and gave up. What a waste of time!

I was running Studio One and had no issues running about 35 channels on a project at one time. All was fine. Then I fired up Ableton and at about 11 channels of random sketching, I had a nasty pop in the audio. It almost felt like a slap! Checked DPCLat for the first time since I installed Win 8 CP over a week ago and was startled to see all that yellow above..
Then I found this and thought, well, why the pop then?

As it turns out, it was due to Ableton's shocking support of 64 bit.. Those guys really got to get their SH** together or else Bitwig is arriving bigtime! :colbert:
 

shankly1985

Junior Member
Nov 7, 2012
4
0
66
Hello guys add me to the list. Windows 8 pro 64bit and have High latency and my sound is stuttering, games drops frames when the stuttering happens.
Has Microsoft came out and said anything about this issue?

I have installed/Uninstalled all drivers tried windows 8 version also Windows 7 versions nothing has helped.
My system specs
Case: Corsair Carbide 500r / MB: Asrock Z68 Extreme4 Gen3 / CPU: i5 2500k / GPU: XFX HD7950 DD /Cooling: Corsair H80 / Ram: Kingston HyperX Genesis Grey 8GB @ 1600mhz / PSU: Corsair HX850w / 2TB Seagate Sata3 HDD+Corsair GT 60GB Caching / Asus Xonar DS
 

shankly1985

Junior Member
Nov 7, 2012
4
0
66
Guys looks like I fixed my audio stutter with BIOS Update. So check to see if your Motherboard has BIOS Update.
 

oscarnitas

Junior Member
Jan 16, 2013
1
0
0
Hey guys!

Same problem here, sound issues go away when i disable wifi, DCP latency goes down.
Ran de command also but still get stuttering when wifi is enabled.
All drives are up to date, any ideas to stop this when using wifi????

Thanks
 

sm625

Diamond Member
May 6, 2011
8,172
137
106
I wish someone would explain why modern sound chips have such small buffers. A latency of 1 mS shouldnt mean squat to a buffer that is big enough to store several hundred mS worth of audio samples. Hell it only takes 128KB of memory to store a second's worth of 2 channel audio.
 

fsgeek

Junior Member
Feb 2, 2013
1
0
0
www.osr.com
Can someone post a quick explanation of why DPC is important?

There are essentially three parts to a driver:

- dispatch code, that takes calls from the OS and programs the hardware to perform an operation
- interrupt code, that handles interrupts from the hardware indicating some sort of event has occurred (e.g., an operation is done or new data has arrived)
- post-interrupt cleanup code. In Windows, this is a "Deferred Procedure Call" or DPC.

Normally, DPC code is completely interruptable - so if the hardware needs attention, it gets it. Typically, DPCs run ahead of normal user code (including dispatch code).

There are some potentially complex issues with DPCs, because a misbehaving DPC can "starve" other DPCs, which in turn can mean that buffers start to overflow. This can show up as dropped packets in a network or stuttering audio from a sound card. Essentially, one poorly written driver on a system can cause other drivers to function incorrectly.

That's why DPCs are important. :)
 

Magic Carpet

Diamond Member
Oct 2, 2011
3,477
231
106
windows 7 is going to hold on longer then xp did, in the business world. win8 is for us dumb consumers, simply put.
Just migrated my home network (5 computers) from Windows XP Pro to Windows 8 Pro. Happy so far, and I do like the new interface. WDDM 1.2 was the deciding factor, however.
 
Last edited:

IndyColtsFan

Lifer
Sep 22, 2007
33,656
687
126
Never want to deploy it in an office setting. Ill probably quit my job when we are forced.

My company is doing a new system rollout now and AFAIK, never seriously considered Windows 8 as a possible replacement for Windows 7. They're even frowning on Windows Server 2012 at this stage; why on earth would MS enforce Metro on a server OS?!?!?!

I personally think the whole Metro debacle will turn out to be Microsoft's worst decision certainly since Windows ME, and perhaps ever. Enterprise customers begged and pleaded with them about Metro and they wouldn't listen. The degree of arrogance displayed by MS is astonishing and is something they could ill afford.
 

supergex

Junior Member
Dec 28, 2009
5
0
66
FYI guys, DPC Latency Checker is not compatible with Windows 8. No need to lost time on your 1000 value, we all have the same.

Source: DPC Latency Checker Official website
Windows 8 Compatibility: The DPC latency utility runs on Windows 8 but does not show correct values. The output suggests that the Windows 8 kernel performs badly and introduces a constant latency of one millisecond which is not the case in practice. DPCs in the Windows 8 kernel behave identical to Windows 7. The utility produces incorrect results because the implementation of kernel timers has changed in Windows 8 which causes a side effect with the measuring algorithm used by the utility. Thesycon is working on a new version of the DPC latency utility and will make it available on this site as soon as it is finished.
Anyway, I agree with you that Windows 8 does not perform efficiently in terms of handling audio. I am doing Professional Sound mixing and I have to double the buffer compared to W7 to avoid audio drop-outs.

Also, if I start using my computer for a few hours, then even my poor MediaMonkey start to give me audio droup-outs, followed by a simple 720p movie with MPC-HC... And I am running a i7 2720qm, 8GB with dedicated Video card.
I ran a lot of tests using Windows Performance Toolkit, I judged all my drivers or W8 services after a while but none of them are guilty.
nb: From my experience, I think Latency Mon also do not show correct values. I tried my best but it is not reliable software. Use Windows ADK.

I also thought it could be hardware problem, so I went to do the same stuff on my PC... It operates better, I have to admit, however if I start doing multiple things at a time, it gives me same "gzzz sound" that I hate and a nice 1sec lag. Last thing to do save the ship, reboot.

Conclusion: I don't like Apple, I hate iTunes, I found their OS ugly, I love W8, I find it fast and clean, but I am going to by a MAC.
 
Last edited: