Audio stuttering, Latency, Windows Clock lag

Discussion in 'Soundcards, Speakers HiFI & File formats' started by Souths, Apr 24, 2015.

  1. Souths

    Souths New Member

    Messages:
    4
    Likes Received:
    0
    GPU:
    4Gb Corsair
    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!
     
  2. Souths

    Souths New Member

    Messages:
    4
    Likes Received:
    0
    GPU:
    4Gb Corsair
    _________________________________________________________________________________________________________
    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
    _________________________________________________________________________________________________________
     
  3. mbk1969

    mbk1969 Ancient Guru

    Messages:
    15,606
    Likes Received:
    13,615
    GPU:
    GF RTX 4070
    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?
     
    Last edited: Apr 24, 2015
  4. Souths

    Souths New Member

    Messages:
    4
    Likes Received:
    0
    GPU:
    4Gb Corsair
    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.
     

  5. mbk1969

    mbk1969 Ancient Guru

    Messages:
    15,606
    Likes Received:
    13,615
    GPU:
    GF RTX 4070
    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.
     
    Last edited: Apr 25, 2015
  6. Souths

    Souths New Member

    Messages:
    4
    Likes Received:
    0
    GPU:
    4Gb Corsair
    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%.
     
  7. mbk1969

    mbk1969 Ancient Guru

    Messages:
    15,606
    Likes Received:
    13,615
    GPU:
    GF RTX 4070
  8. miisoquer

    miisoquer Guest

    Messages:
    1
    Likes Received:
    0
    GPU:
    none
    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!
     

Share This Page