1 (edited by aureliopenna 2021-03-12 13:49:20)

Topic: UFX+ Thunderbolt Windows 20H2 Latency Monitor

Hello Guys,
As some of you, I'm struggling against latency in real-time record with low buffer size settings.
My system is
Gigabyte Z390 Designare - i9-9900K (OC 4.5ghz) - On Board intel thunderbolt 3
-64gb RAM - Samsung 960 NVM2 - Two Samsung 869 SSD
GPU Gigabyte RX570 (on-board intel it's disabled now)
Network Adapter Disabled, Onboard Audio disabled, Wifi on airplane mode.
Windows 10 64bits - 20H2 from a clean install.
C states all disable, HT disable, Turbo enable, active turbo from 4.8 first core to 4.5ghz last core.

UFX+ (uptodate) running with thunderbolt through Startech TB3 to TB2 Adapter
Cubase 10.5.30
Ultimate Performance Energy plan with some tweak but I afraid I need to tweak to Processor Manager a little bit more,
Also have CPU bitsum Park control software, what can I do run the system safety faster with it?
lots of windows useless services stoped.
Disabled all non needed device on device manager
Disabled intel management engine (doesn't seems to make much difference, but do I need it??)

I'm trying create a template to record with DAW monitoring with 96khz and 64 buffer size.
Also using Sonarworks Reference 4 on Cubase's Monitor Control Room (when I disable it, CPU load on Cubase decrease a lot but I need to use it and it's not suppose to be that heavy...)

20 channel with some few not heavy plugins.
Getting 50% load and peaks of 100% spikes.
While the CPU is about 20%.
So my ploblem is not CPU

I have measure with latency monitor and DPC latency Checker, and ASAP will post results here.

My question is what can I do to run without these spikes?
Some results I got.
https://i.ibb.co/QKfMg9P/20210309-152326-resized.jpg
https://i.ibb.co/1ZTVWFv/20210309-152406-resized.jpg
https://i.ibb.co/QQFrPVt/20210309-152422-resized.jpg
https://i.ibb.co/jMQwgbz/20210309-184133-resized.jpg
https://i.ibb.co/p1HR2p8/20210309-184822-resized.jpg
https://i.ibb.co/WfPLTDw/20210309-184844-resized.jpg
imagem do if

2 (edited by ramses 2021-03-11 08:10:29)

Re: UFX+ Thunderbolt Windows 20H2 Latency Monitor

> Getting 50% load and peaks of 100% spikes.

What load do you mean here if not CPU ? ASIO load according to Cubase ?

> Network Adapter Disabled, Onboard Audio disabled, Wifi on airplane mode.

You can keep LAN adapter active, in case you want to browse someting in the internet.
But while recording I would not do this in parallel.
I would not enable WLAN, more likely to cause issues.

> DPC latency checker measuring

AFAIK DPC Latency checker is not suitable for measuring Windows 10.
Use only LatencyMon.
DPC routines reaching 210 us execution time are fully ok.
The LatencyMon results are ok.

> I'm trying create a template to record with DAW monitoring with 96khz and 64 buffer size.

Challenging for a system to operate at double speed with lowest ASIO buffersize, but theoretically not impossible.

> Also using Sonarworks Reference 4 on Cubase's Monitor Control Room
> (when I disable it, CPU load on Cubase decrease a lot but I need to use it and it's not suppose to be that heavy...)

Ok, here you seem to have the tool consuming much CPU ...

But besides a high ASIO (??) and higher CPU load that you mentioned ...
Do you have audio loss ?

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub13

Re: UFX+ Thunderbolt Windows 20H2 Latency Monitor

ramses wrote:

> Getting 50% load and peaks of 100% spikes.

What load do you mean here if not CPU ? ASIO load according to Cubase ?
Yes, acording Cubase.

> Network Adapter Disabled, Onboard Audio disabled, Wifi on airplane mode.

You can keep LAN adapter active, in case you want to browse someting in the internet.
But while recording I would not do this in parallel.
I would not enable WLAN, more likely to cause issues.
I wish I have a LAN cable for internet but only Wifi, so can't disable it. Just put in airplane mode or disable on device manager when recording.

> DPC latency checker measuring

AFAIK DPC Latency checker is not suitable for measuring Windows 10. I think you might be right, it runs, but some results seems to be not accurated like some 1000us spikes without doing anything..

Use only LatencyMon.
DPC routines reaching 210 us execution time are fully ok.
The LatencyMon results are ok.

> I'm trying create a template to record with DAW monitoring with 96khz and 64 buffer size.

Challenging for a system to operate at double speed with lowest ASIO buffersize, but theoretically not impossible.
Doens't changes that much when I go 48khz 32buffer size. The thing is the "realtime";

> Also using Sonarworks Reference 4 on Cubase's Monitor Control Room
> (when I disable it, CPU load on Cubase decrease a lot but I need to use it and it's not suppose to be that heavy...)

Ok, here you seem to have the tool consuming much CPU ... Yes unfortunately..

But besides a high ASIO (??) and higher CPU load that you mentioned ...

Do you have audio loss ?
Not exactly loss but, cubase spikes causes these undesireable pops and crackles.

Re: UFX+ Thunderbolt Windows 20H2 Latency Monitor

Here my last Latency monitor stats


_________________________________________________________________________________________________________
CONCLUSION
_________________________________________________________________________________________________________
Your system appears to be suitable for handling real-time audio and other tasks without dropouts.
LatencyMon has been analyzing your system for  0:10:05  (h:mm:ss) on all processors.


_________________________________________________________________________________________________________
SYSTEM INFORMATION
_________________________________________________________________________________________________________
Computer name:                                        DESKTOP-T7N8EBI
OS version:                                           Windows 10 , 10.0, build: 19042 (x64)
Hardware:                                             Z390 DESIGNARE, Gigabyte Technology Co., Ltd., Z390 DESIGNARE-CF
CPU:                                                  GenuineIntel Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz
Logical processors:                                   8
Processor groups:                                     1
RAM:                                                  65484 MB total


_________________________________________________________________________________________________________
CPU SPEED
_________________________________________________________________________________________________________
Reported CPU speed:                                   360 MHz
Measured CPU speed:                                   9 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.

WARNING: the CPU speed that was measured is only a fraction of the CPU speed reported. Your CPUs may be throttled back due to variable speed settings and thermal issues. It is suggested that you run a utility which reports your actual CPU frequency and temperature.



_________________________________________________________________________________________________________
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):   134,80
Average measured interrupt to process latency (µs):   1,780293

Highest measured interrupt to DPC latency (µs):       133,90
Average measured interrupt to DPC latency (µs):       0,646323


_________________________________________________________________________________________________________
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):              1,685556
Driver with highest ISR routine execution time:       Wdf01000.sys - Tempo de Execução da Estrutura de Driver em Modo Kernel, Microsoft Corporation

Highest reported total ISR routine time (%):          0,000038
Driver with highest ISR total time:                   Wdf01000.sys - Tempo de Execução da Estrutura de Driver em Modo Kernel, Microsoft Corporation

Total time spent in ISRs (%)                          0,000038

ISR count (execution time <250 µs):                   4545
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):              133,244444
Driver with highest DPC routine execution time:       ntoskrnl.exe - NT Kernel & System, Microsoft Corporation

Highest reported total DPC routine time (%):          0,004010
Driver with highest DPC total execution time:         ntoskrnl.exe - NT Kernel & System, Microsoft Corporation

Total time spent in DPCs (%)                          0,014643

DPC count (execution time <250 µs):                   555871
DPC count (execution time 250-500 µs):                0
DPC count (execution time 500-999 µs):                0
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.


Process with highest pagefault count:                 none

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


_________________________________________________________________________________________________________
PER CPU DATA
_________________________________________________________________________________________________________
CPU 0 Interrupt cycle time (s):                       0,771484
CPU 0 ISR highest execution time (µs):                1,685556
CPU 0 ISR total execution time (s):                   0,001851
CPU 0 ISR count:                                      4545
CPU 0 DPC highest execution time (µs):                99,048889
CPU 0 DPC total execution time (s):                   0,292546
CPU 0 DPC count:                                      285158
_________________________________________________________________________________________________________
CPU 1 Interrupt cycle time (s):                       0,228924
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):                133,101667
CPU 1 DPC total execution time (s):                   0,053975
CPU 1 DPC count:                                      41124
_________________________________________________________________________________________________________
CPU 2 Interrupt cycle time (s):                       0,200660
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):                133,050556
CPU 2 DPC total execution time (s):                   0,032699
CPU 2 DPC count:                                      30584
_________________________________________________________________________________________________________
CPU 3 Interrupt cycle time (s):                       0,211608
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):                133,006111
CPU 3 DPC total execution time (s):                   0,044882
CPU 3 DPC count:                                      37150
_________________________________________________________________________________________________________
CPU 4 Interrupt cycle time (s):                       0,203380
CPU 4 ISR highest execution time (µs):                0,0
CPU 4 ISR total execution time (s):                   0,0
CPU 4 ISR count:                                      0
CPU 4 DPC highest execution time (µs):                133,244444
CPU 4 DPC total execution time (s):                   0,041515
CPU 4 DPC count:                                      32145
_________________________________________________________________________________________________________
CPU 5 Interrupt cycle time (s):                       0,219550
CPU 5 ISR highest execution time (µs):                0,0
CPU 5 ISR total execution time (s):                   0,0
CPU 5 ISR count:                                      0
CPU 5 DPC highest execution time (µs):                132,890
CPU 5 DPC total execution time (s):                   0,061621
CPU 5 DPC count:                                      39129
_________________________________________________________________________________________________________
CPU 6 Interrupt cycle time (s):                       0,230042
CPU 6 ISR highest execution time (µs):                0,0
CPU 6 ISR total execution time (s):                   0,0
CPU 6 ISR count:                                      0
CPU 6 DPC highest execution time (µs):                132,447222
CPU 6 DPC total execution time (s):                   0,074474
CPU 6 DPC count:                                      41769
_________________________________________________________________________________________________________
CPU 7 Interrupt cycle time (s):                       0,260056
CPU 7 ISR highest execution time (µs):                0,0
CPU 7 ISR total execution time (s):                   0,0
CPU 7 ISR count:                                      0
CPU 7 DPC highest execution time (µs):                131,898889
CPU 7 DPC total execution time (s):                   0,107145
CPU 7 DPC count:                                      48812
_________________________________________________________________________________________________________

https://i.ibb.co/TvMBPK8/20210311-152725.jpg


https://i.ibb.co/Tr3PxGQ/20210311-152743.jpg


https://i.ibb.co/8mFrRyP/20210311-152750.jpg


https://i.ibb.co/pLRSd3r/20210311-152756.jpg

5 (edited by ramses 2021-03-12 14:52:23)

Re: UFX+ Thunderbolt Windows 20H2 Latency Monitor

Looks good.

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub13

Re: UFX+ Thunderbolt Windows 20H2 Latency Monitor

Thanks man!