Hello All! I don't know where to correctly post my question. I hope I am in the right place. I have been experiencing significant Windows clock lag. For 1 minute to pass in Windows ~2-3 minutes pass in real time. I just upgraded my CPU to an AMD A8-7600 and BIOS to 2.4 from 2.1 (ASRock A88XFM2 Extreme 4+) because the previous CPU's (AMD A8-6500) GPU unit died on me (STOP 116 error). Checked to see if I have a weak battery - would be strange, since I just bought the motherboard in February. The BIOS clock seems to be running fine. Compared it with realtime and no delays (not even a second) during a 15 minute test. I have been searching around the net for solutions and found WinTimerTester 1.1. Ran it and found that my ratio is way off: 1.5-3 Depending on "bcdedit /set useplatformclock true" and HPET enabled/disabled in BIOS. Also tested the system with DPC Latency Checker and LatencyMon. Both stared out perfectly, but soon started to produce significant errors. While searching for a solution I realized that my VLC is significantly stuttering, which could also be due to this latency issue. Interestingly MPC-HC does not reproduce this stuttering. I know that I can force the Windows clock to sync every few minutes - this is what I have enabled now - but this is only an interim solution as video playback is still greatly affected. Can somebody help me deciper LatencyMon? I will post the results below. Thanks for the help!
_________________________________________________________________________________________________________ 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:54 (h:mm:ss) on all processors. _________________________________________________________________________________________________________ SYSTEM INFORMATION _________________________________________________________________________________________________________ Computer name: MARVIN OS version: Windows 7 Service Pack 1, 6.1, build: 7601 (x64) Hardware: ASRock, FM2A88X Extreme4+ CPU: AuthenticAMD AMD A8-7600 Radeon R7, 10 Compute Cores 4C+6G Logical processors: 4 Processor groups: 1 RAM: 3501 MB total _________________________________________________________________________________________________________ CPU SPEED _________________________________________________________________________________________________________ Reported CPU speed: 3094.0 MHz Measured CPU speed: 2242.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): 16679.495181 Average measured interrupt to process latency (µs): 4.371833 Highest measured interrupt to DPC latency (µs): 529.796679 Average measured interrupt to DPC latency (µs): 1.564542 _________________________________________________________________________________________________________ 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): 286.608920 Driver with highest ISR routine execution time: ataport.SYS - ATAPI Driver Extension, Microsoft Corporation Highest reported total ISR routine time (%): 0.169215 Driver with highest ISR total time: hal.dll - Hardware Abstraction Layer DLL, Microsoft Corporation Total time spent in ISRs (%) 0.190595 ISR count (execution time <250 µs): 405756 ISR count (execution time 250-500 µs): 0 ISR count (execution time 500-999 µs): 3 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): 283.844861 Driver with highest DPC routine execution time: ndis.sys - NDIS 6.20 driver, Microsoft Corporation Highest reported total DPC routine time (%): 0.062921 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.1410 DPC count (execution time <250 µs): 982842 DPC count (execution time 250-500 µs): 0 DPC count (execution time 500-999 µs): 1 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: cavwp.exe Total number of hard pagefaults 535 Hard pagefault count of hardest hit process: 201 Highest hard pagefault resolution time (µs): 141247.180026 Total time spent in hard pagefaults (%): 0.218640 Number of processes hit: 19 _________________________________________________________________________________________________________ PER CPU DATA _________________________________________________________________________________________________________ CPU 0 Interrupt cycle time (s): 6.636995 CPU 0 ISR highest execution time (µs): 220.089528 CPU 0 ISR total execution time (s): 2.423784 CPU 0 ISR count: 366329 CPU 0 DPC highest execution time (µs): 283.844861 CPU 0 DPC total execution time (s): 1.420897 CPU 0 DPC count: 925050 _________________________________________________________________________________________________________ CPU 1 Interrupt cycle time (s): 3.085950 CPU 1 ISR highest execution time (µs): 216.236587 CPU 1 ISR total execution time (s): 0.030284 CPU 1 ISR count: 5082 CPU 1 DPC highest execution time (µs): 161.356173 CPU 1 DPC total execution time (s): 0.122829 CPU 1 DPC count: 10591 _________________________________________________________________________________________________________ CPU 2 Interrupt cycle time (s): 2.415706 CPU 2 ISR highest execution time (µs): 286.608920 CPU 2 ISR total execution time (s): 0.036591 CPU 2 ISR count: 5875 CPU 2 DPC highest execution time (µs): 141.931803 CPU 2 DPC total execution time (s): 0.167514 CPU 2 DPC count: 24082 _________________________________________________________________________________________________________ CPU 3 Interrupt cycle time (s): 1.934687 CPU 3 ISR highest execution time (µs): 254.939884 CPU 3 ISR total execution time (s): 0.208520 CPU 3 ISR count: 28473 CPU 3 DPC highest execution time (µs): 115.878798 CPU 3 DPC total execution time (s): 0.285579 CPU 3 DPC count: 23120 _________________________________________________________________________________________________________
LatencyMon`s report is normal. Windows doesn`t use HPET and TSC (any counters affected by "useplatformclock" command) for system time. I think that your motherboard glitches. Edit: Which version of Windows? Is it installed in UEFI mode?
Hmm.... Some new findings: Running DPC Latency Checker I get the following message "Some device ddrivers on this machine behave bad and will probably cause drop-outs in real-time audio and/or video streams". This is not surprising since the measurements all are red and above 5000us. However, if I use Set Timer Resolution form the original 0.987 to 0.488 (maximum) then DPC Latency shows values all green, all below 400us. VLC is running smoothly as well! :grin: Now is there a way to permanently keep Timer Resolution at the maximum value? mbk1969: I am using Windows 7 Ultimate x64 with all updates. I do have an UEFI BIOS.
http://forums.guru3d.com/showthread.php?t=376458 Original timer resolution is 15.6 ms (minimum one). But what about clock in Windows? I think that you need to reinstall Windows - advice of a professional. Something strange is happening with your OS. Edit: Also I would added another 4GB of RAM. You should notice a boost in performance. Edit: Another thought - what power plan is active? If not Performance plan then try it.
Using PC Clock Frequenciees v3.1.1.13 I spotted the difference. GetTickCount resolution is always 15.60ms but GetSystemTimeAsFile resolution varied between 500 and 1000 us. Now with the program link you provided it is permanently(?) fixed at 500us, which seems to have solved the problems. Even windows clock. The windows clockl slowdown was somehow related to the fact that QueryPerformanceCounter did not equal GetTickCounter (WinTimerTester). Now after about a minute I get a perfect 1.0 ratio. Yes, I know I need another 4Gb memory. That will be the next upgrade, but first I would like to have a week without any complications. By the way I have Samsung High Performance (since I have an SSD) power plan active which differs in High Performance in a few ways: it is allowed to shut down the monitor after 15 minutes, hard drive never goes to sleep and the minimum processor state is 100%.
Remarks The resolution of the GetTickCount function is limited to the resolution of the system timer, which is typically in the range of 10 milliseconds to 16 milliseconds. The resolution of the GetTickCount function is not affected by adjustments made by the GetSystemTimeAdjustment function.
Hi I think I may have the same problem: same APU (A8-7600), same motherboard (ASrock FM2A88m extreme4+), and my audio/video playback is stuttering. When I set Windows timer to 0.5ms using TimerTool, things start to work fine. I don't have problems with Windows clock, but I'm not sure if I'm using Internet time or not. Is it a good solution to have the interrupt timer always set to minimum value? Could things get better with "tick-less" kernel of a newer Windows? Any other solutions coming to mind? Thanks in advance!