How to solve latency problems and VAC under/overflows in Windows 10

USB headsets to digital audio workstation software...
ea3aqr
Posts: 270
Joined: Mon Mar 04, 2019 10:50 pm
Location: BCN

How to solve latency problems and VAC under/overflows in Windows 10

Postby ea3aqr » Wed May 05, 2021 9:02 pm

Hi all,

It was a 30 days long journey fighting against my Windows 10 after a forced update to v.20H2.

My system was running silk smooth on v.1903 prior to the update and become a real nightmare after v20H2. Lots of over/underflows, a very unstable system, lots of SEQ errors...

From a rock solid VAC operation at:
Buffer size: 64
Sample rate: 96k
Ring Buffer IN: 3
Ring Buffer OUT: 4
Port Audio: both at 0

To a system totally unusable below 20/20 ringbuffer settings.

So... finally I found the solution. Please use my tips at your own risk:

How to reduce VAC latency and buffer under/overflows in Windows 10 (specially after W10 v2004 or 20H2 update):

First of all I set my ASIO buffer latency to 2ms using this tool (it stays sticky between restarts):
http://www.djdecks.be/asioconfig.exe

And the most important part, the registry tweaks:

EDIT: MOST PEOPLE REPORTED THAT DOING JUST STEP #1 SOLVED THEIR ISSUES.
SO PLEASE, TRY JUST THE FIRST REGISTRY CHANGE, REBOOT AND TEST YOUR RADIO.


Make a restoration point before proceeding:

1) Run regedit and modify the registry
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile.
Under SystemProfile, create (if not exists) a DWORD 32 value and name it to “NetworkThrottlingIndex” then set its value to ffffffff for max throughput: ffffffff completely disables throttling.

Multimedia streaming and some games that uses “Multimedia Class Scheduler” service (MMCSS) can only utilize up to 80% of the CPU. The “Multimedia Class Scheduler” service (MMCSS) ensures prioritized access to CPU resources, without denying CPU resources to lower-priority background applications.

2) Modify the registry key
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile.
From there, create a new DWORD 32 and name it to “SystemResponsiveness” (if not exists) and set its value to 0 for pure gaming/streaming performance.

3) In the same Registry hive as the above tweak, go to:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Multimedia\SystemProfile\Tasks\

And change the following registry values in "Audio", "Playback" and "ProAudio".
Set all of them to:
“GPU Priority” to 8
“Priority” to 6

I made no changes under “Capture”, “DisplayPostProcessing”, “Distribution”, “Games” and “Windows Manager” but who knows if you need it in your system.

Reboot your computer and start enjoying again low latency and free under/overflows Thetis operation.

All credits to this Reddit post (link edited to show the correct thread):
https://www.reddit.com/r/killerinstinct/comments/4fcdhy/an_excellent_guide_to_optimizing_your_windows_10/

73!
EA3AQR
Last edited by ea3aqr on Thu May 13, 2021 2:23 pm, edited 13 times in total.
New call sign EA3CL
User avatar
Tony EI7BMB
Posts: 651
Joined: Sun Apr 09, 2017 2:31 pm
Location: Dublin
Contact:

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby Tony EI7BMB » Thu May 06, 2021 6:17 am

Thanks for the fix. I can confirm that Thetis actually works better now on my system with lower ring buffers than previously.
ea3aqr
Posts: 270
Joined: Mon Mar 04, 2019 10:50 pm
Location: BCN

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby ea3aqr » Thu May 06, 2021 6:27 am

Tony EI7BMB wrote:Thanks for the fix. I can confirm that Thetis actually works better now on my system with lower ring buffers than previously.


I'm glad it worked for you!
New call sign EA3CL
User avatar
rbduck
Posts: 327
Joined: Tue Dec 03, 2019 1:49 pm

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby rbduck » Thu May 06, 2021 9:55 am

ea3aqr wrote:
Tony EI7BMB wrote:Thanks for the fix. I can confirm that Thetis actually works better now on my system with lower ring buffers than previously.


I'm glad it worked for you!


I will second that. I let it run all night and this morning no underflows or overflows. Thanks again and I hope you enjoyed your single malt. Great work!
73
Ruben
NB4R
Apache-Labs Anan 7000DLE MKII Black -- Thetis 2.10.3.6 dev_2 -- Windows 11
ea3aqr
Posts: 270
Joined: Mon Mar 04, 2019 10:50 pm
Location: BCN

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby ea3aqr » Thu May 06, 2021 10:50 am

rbduck wrote:
ea3aqr wrote:
Tony EI7BMB wrote:Thanks for the fix. I can confirm that Thetis actually works better now on my system with lower ring buffers than previously.


I'm glad it worked for you!


I will second that. I let it run all night and this morning no underflows or overflows. Thanks again and I hope you enjoyed your single malt. Great work!


Your are welcome!
New call sign EA3CL
Joe-W4WT
Posts: 167
Joined: Sun Apr 09, 2017 5:27 pm
Location: Cumming, GA

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby Joe-W4WT » Fri May 07, 2021 2:43 am

I thank you too Jordi! I wasn't able to do your #3 since I didn't have the "Game" tab off "Tasks" maybe because I don't do games and have that turned off in Windows but did do 1 & 2 and I can confirm that it made a big difference. I'm running the latest update to Windows as of a week or so ago and was never able to see over/underflows sit still. They always creeped up and randomly shot up tens or hundreds at a time.

I have been running with a sample rate of 96000 and buffer size of 128 for some time but would need to go to 20 or 30 on buffer latency to get any semblance of stability but it still creeped up continually. No real audio issues that I noticed though, most of the time. When I started up, with just Thetis running and no other programs I could sit for some time with no change in the under/overflows but as soon as I started the typical programs I run (DxLab, PstRotator, Brave browser, Thunderbird email) over/underflows started running up and would continue; just pausing for a short time but ever creeping up.

After making changes 1 & 2 (I already had UMC control panel set to 128 samples, 2 ms) and starting Thetis I set my buffer latency to 5/5 and pressed the Power button. I had to do the typical "click manual off/on" to reset the re-sampler but after that the counters sat at zero. I waited a couple of minutes and nothing moved. I then begin to bring up the programs mentioned above one at a time while watching the counters and never saw any of them move off zero! This hasn't happened before. As I'm typing this, all programs are running and my numbers are still sitting at zero while I sit here listening to 40m. It's only been about 20 minutes but I'm already a believer that this is fixed!

So far, I haven't seen anything that seems different in the operation of the computer (9th generation I7-9700K)

I'm going to let things run all night and see what it shows tomorrow. I'll update this post with those numbers. If nothing changes, I'll see how low I can go before I see a runaway again.

Thanks again,

Joe W4WT

Update: After running for 12 hours, my To Vac overflows were 21/2 and From Vac were 2/11. Outstanding!

I decided to see if I could run with buffer size at 64 and so far I've been running for 6 hours now with Buffer size set to 64, Sample rate at 96000 and buffer latency at 3/3 and still seeing less than 30 over/underflows in both to and from VAC. Really nice.

Joe
Last edited by Joe-W4WT on Fri May 07, 2021 8:06 pm, edited 1 time in total.
ea3aqr
Posts: 270
Joined: Mon Mar 04, 2019 10:50 pm
Location: BCN

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby ea3aqr » Fri May 07, 2021 7:30 am

Joe-W4WT wrote:I thank you too Jordi! I wasn't able to do your #3 since I didn't have the "Game" tab off "Tasks" maybe because I don't do games and have that turned off in Windows but did do 1 & 2 and I can confirm that it made a big difference. I'm running the latest update to Windows as of a week or so ago and was never able to see over/underflows sit still. They always creeped up and randomly shot up tens or hundreds at a time.

I have been running with a sample rate of 96000 and buffer size of 128 for some time but would need to go to 20 or 30 on buffer latency to get any semblance of stability but it still creeped up continually. No real audio issues that I noticed though, most of the time. When I started up, with just Thetis running and no other programs I could sit for some time with no change in the under/overflows but as soon as I started the typical programs I run (DxLab, PstRotator, Brave browser, Thunderbird email) over/underflows started running up and would continue; just pausing for a short time but ever creeping up.

After making changes 1 & 2 (I already had UMC control panel set to 128 samples, 2 ms) and starting Thetis I set my buffer latency to 5/5 and pressed the Power button. I had to do the typical "click manual off/on" to reset the re-sampler but after that the counters sat at zero. I waited a couple of minutes and nothing moved. I then begin to bring up the programs mentioned above one at a time while watching the counters and never saw any of them move off zero! This hasn't happened before. As I'm typing this, all programs are running and my numbers are still sitting at zero while I sit here listening to 40m. It's only been about 20 minutes but I'm already a believer that this is fixed!

So far, I haven't seen anything that seems different in the operation of the computer (9th generation I7-9700K)

I'm going to let things run all night and see what it shows tomorrow. I'll update this post with those numbers. If nothing changes, I'll see how low I can go before I see a runaway again.

Thanks again,

Joe W4WT


Same behavior as me, some disk activity (I'm using a very fast NVMe drive) when opening programs or browsing web pages produced a big burst of over/underflows in Thetis.

I was using Google maps to test this behavior. Before the fixes fast in/out zooming in a map using satellite view, produced hundreds or thousands of glitches in Thetis, after the fix just a few drops.

Of course after a long time running Thetis while you use your computer for others tasks will show a few over/underflows, but that's a normal behavior. Don't worry about it!

I'm glad it worked for you.

EDIT: There was a typo in step #3 "Games" should no be in the registry path
Just search for "Audio", "Playback" and "ProAudio" in:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Multimedia\SystemProfile\Tasks\


Sorry, it was my fault... but if it is working fine for you, don't change anything else.
New call sign EA3CL
Joe-W4WT
Posts: 167
Joined: Sun Apr 09, 2017 5:27 pm
Location: Cumming, GA

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby Joe-W4WT » Fri May 07, 2021 11:31 pm

Thanks for the correction Jordi. I took a look at Audio, Playback, and Pro Audio and saw that Audio was already set to 8 and 6. The other two were 8 and 3 and 8 and 1 so I just left them all as they were since things are working great.

I operated a bit today using 96000, 64, and 4/4 for ringbuffer and saw over/underflows go up no more than a couple of points so I'm working near where you are now. NICE!

So far, I don't see any detrimental effects on anything else due to these changes.

73,

Joe W4WT
User avatar
kc2rgw
Posts: 165
Joined: Mon Jun 22, 2020 5:44 pm

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby kc2rgw » Sat May 08, 2021 2:04 pm

Thanks for this. Made the changes today and one telltale sign it improved things is that when I had Chrome running and loaded a YouTube index page with all the thumbnails on it, if I scrolled that page it would cause interrupt jitter in the RX audio and now it's all gone. I suspect the network change was the main improvement as I've suspected it wasn't performing optimally given that it's a closed GigE network strictly for my SDRs.

Will be interesting to see how it affects other things that I do with low latency audio. Will take some time to feel it out.
W4WMT
Posts: 325
Joined: Sun Apr 09, 2017 10:12 pm

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby W4WMT » Sat May 08, 2021 3:15 pm

Hi All,

This might be a good time to throw out a "caution flag" concerning the Pro Audio registry key discussed above. Starting in v2.6.8, Thetis uses the Multimedia Class Scheduler Service (MMCSS) to endow its quasi real-time streaming threads with the highest possible scheduling priority (26) except for the OS kernel itself. Prior to this change, these critical threads ran at priority 15. Thetis elects to run these threads as a "Pro Audio" task, which is the most critical of the available MMCSS types that are created by default in the Windows registry (Vista and beyond). If the Pro Audio key can't be found in the registry, the MMCSS request fails and the critical threads run at the legacy priority of 15 (just as they always did prior to v2.6.8).

BTW, you can view these thread priorities for yourself in Microsoft's Process Explorer utility (www.sysinternals.com).

The above does not apply to VAC1/VAC2 audio threads. VAC audio thread priorities are established by your sound device's driver and Thetis is forbidden from tinkering. Use Process Explorer to evaluate your sound device's thread priority to determine if it is taking advantage of MMCSS (and maybe buy a better one if it's not).

So experiment with the Pro Audio key as you like, but don't delete it.

73, Bryan W4WMT
Joe-W4WT
Posts: 167
Joined: Sun Apr 09, 2017 5:27 pm
Location: Cumming, GA

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby Joe-W4WT » Sat May 08, 2021 9:12 pm

Today I decided to play a bit with the two registry entries to see if both were indeed needed to obtain stability. I first returned the “SystemResponsiveness” to its original value of 14 hex. I then tested for about an hour and didn't notice any change so I left it at 14 hex. I then changed “NetworkThrottlingIndex” back to its original value of hex A. Upon testing I experienced runaway over/underflows again. I tried several different values for this setting but in the end, it indeed must be set to FFFFFFFF hex in order to stop the runaways. This makes sense since this setting is a throttling mechanism for network packets. Obviously, throttling Thetis packets leads to bad things.

So, at least for me, the only change needed to fix this persistent problem is to just set “NetworkThrottlingIndex” to max, FFFFFFFF hex, and you're good to go.

73,

Joe W4WT
ea3aqr
Posts: 270
Joined: Mon Mar 04, 2019 10:50 pm
Location: BCN

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby ea3aqr » Sat May 08, 2021 9:13 pm

W4WMT wrote:Hi All,

This might be a good time to throw out a "caution flag" concerning the Pro Audio registry key discussed above. Starting in v2.6.8, Thetis uses the Multimedia Class Scheduler Service (MMCSS) to endow its quasi real-time streaming threads with the highest possible scheduling priority (26) except for the OS kernel itself. Prior to this change, these critical threads ran at priority 15. Thetis elects to run these threads as a "Pro Audio" task, which is the most critical of the available MMCSS types that are created by default in the Windows registry (Vista and beyond). If the Pro Audio key can't be found in the registry, the MMCSS request fails and the critical threads run at the legacy priority of 15 (just as they always did prior to v2.6.8).

BTW, you can view these thread priorities for yourself in Microsoft's Process Explorer utility (http://www.sysinternals.com).

The above does not apply to VAC1/VAC2 audio threads. VAC audio thread priorities are established by your sound device's driver and Thetis is forbidden from tinkering. Use Process Explorer to evaluate your sound device's thread priority to determine if it is taking advantage of MMCSS (and maybe buy a better one if it's not).

So experiment with the Pro Audio key as you like, but don't delete it.

73, Bryan W4WMT


I don't know if it is mandatory to tweak Audio, PlayBack and ProAudio keys. Just try steps #1 & #2, reboot and decide by yourself after testing...

Right now I can't test it because I'm 200km away from my shack for a month or so. Here I'm running a completely different setup and when I connect remotely to my shack I'have a 20-30ms internet latency so I run my ringbuffers in AUTO mode.
New call sign EA3CL
ea3aqr
Posts: 270
Joined: Mon Mar 04, 2019 10:50 pm
Location: BCN

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby ea3aqr » Sat May 08, 2021 9:16 pm

Joe-W4WT wrote:Today I decided to play a bit with the two registry entries to see if both were indeed needed to obtain stability. I first returned the “SystemResponsiveness” to its original value of 14 hex. I then tested for about an hour and didn't notice any change so I left it at 14 hex. I then changed “NetworkThrottlingIndex” back to its original value of hex A. Upon testing I experienced runaway over/underflows again. I tried several different values for this setting but in the end, it indeed must be set to FFFFFFFF hex in order to stop the runaways. This makes sense since this setting is a throttling mechanism for network packets. Obviously, throttling Thetis packets leads to bad things.

So, at least for me, the only change needed to fix this persistent problem is to just set “NetworkThrottlingIndex” to max, FFFFFFFF hex, and you're good to go.

73,

Joe W4WT


Nice test!

Unfortunately I'm away (see my previous post) and I can't test anyting until I came back to Barcelona, it will be in about 30 to 40 days...

Any way "SystemResponsiveness" seems to give a more responsive feeling in Windows, so I will keep changes on.
New call sign EA3CL
K1LSB
Posts: 639
Joined: Wed Feb 05, 2020 5:25 pm

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby K1LSB » Sat May 08, 2021 9:46 pm

According to the Microsoft link below, the value in SystemResponsiveness "determines the percentage of CPU resources that should be guaranteed to low-priority tasks. For example, if this value is 20, then 20% of CPU resources are reserved for low-priority tasks."

Effectively this means that unless your system load is at least 80% then setting a value of anything less than 20 is of no benefit. And if your system load is 80% then you really should strongly consider upgrading your computer.

The article further states that "values that are not evenly divisible by 10 are rounded up to the nearest multiple of 10. A value of 0 is also treated as 10." So effectively, for anyone who is not already seriously straining their system, changing the value of SystemResponsiveness basically has no effect at all - and even for those who are seriously straining their system, the only change you can make (it's already set to 20 so you can only go to 10) is precious little help.

Here's the source of that info: https://docs.microsoft.com/en-us/window ... er-service

Mark
cLicari
Posts: 109
Joined: Mon Apr 10, 2017 9:33 pm
Location: North Texas

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby cLicari » Sun May 09, 2021 3:04 am

I'm not using VAC but analog audio instead. Will these registry tweaks still help?
Also, here is what I see in the registry where you said to go. As you can see in SystemProfile I see REG_DWORD, not DWORD 32. The DATA value is showing 0x0000000a (10). What should I change it to? I'm not real comfortable in the registry so detailed help would be appreciated.
Thx
Carl
NX5T
[img]
DWORD.JPG
[/img]
Attachments
DWORD.JPG
DWORD.JPG (106.36 KiB) Viewed 12537 times
Carl Licari
NX5T
Anan 8000DLE, FW v2.0 2b, Thetis 2.8.11, 21k9
Windows 10, dedicated network subnet, Intel i7 8700K, 32GB, NVIDIA GeForce GTX 1060, Samsung 40" 4K display
ea3aqr
Posts: 270
Joined: Mon Mar 04, 2019 10:50 pm
Location: BCN

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby ea3aqr » Sun May 09, 2021 7:20 am

cLicari wrote:I'm not using VAC but analog audio instead. Will these registry tweaks still help?
Also, here is what I see in the registry where you said to go. As you can see in SystemProfile I see REG_DWORD, not DWORD 32. The DATA value is showing 0x0000000a (10). What should I change it to? I'm not real comfortable in the registry so detailed help would be appreciated.
Thx
Carl
NX5T
[img]DWORD.JPG[/img]


The registry tweak dissables bandwith throttling so it can help you if your problem is due to bandwith issues. In my system the issue appeared after W10 2004 or 20H2 updates.

Forget about DWORD 32, it is just the type you should choose when creating the registry if it is not present.

In your case:
1) Make a Windows restoration point
2) Just "double click" in "NetworkThrottilingIndex" and change its value to ffffffff
3) Reboot and test

If it doesn't help, proceed with step #2 and so on...

If none helps, reset the values to the previous ones or just use your restoration point to go back.
Last edited by ea3aqr on Tue May 11, 2021 8:42 pm, edited 1 time in total.
New call sign EA3CL
HB9LFQ
Posts: 20
Joined: Wed Jan 06, 2021 11:44 am

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby HB9LFQ » Sun May 09, 2021 1:55 pm

cLicari wrote:I'm not using VAC but analog audio instead. Will these registry tweaks still help?


Hi,

I don't use VAC for audio, only for WSJT-X/WinLink. I did these changes and now Thetis runs stable without dropouts on RX/TX. There are some RX droputs after a system startup when everything is loaded at the same time but after this erverything is fine. Before these changes I always had RX dropouts if the system load increased because of other programs like Firefox, Virus scanner etc.

73,
András
Joe-W4WT
Posts: 167
Joined: Sun Apr 09, 2017 5:27 pm
Location: Cumming, GA

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby Joe-W4WT » Tue May 11, 2021 4:23 pm

Scott,

After doing some research on the Network Throttling Index I think it might be good if you were to create a "sticky" either under Thetis or Protocol 2 suggesting that the "Network Throttling Index" should be changed to "FFFFFFFF" from its default IF you are running Thetis with Protocol 2 firmware. The reason for this is due to the stated intention by Microsoft of the network throttling index which is:

"By default, Windows implements a network throttling mechanism to restrict the processing of non-multimedia network traffic to 10 packets per millisecond ( a bit over 100 Mbits/second)."

Obviously throttling non-multimedia traffic over 100 Mbits/second directly affects Thetis running on Protocol 2 since this runs at 1 gigabit. Thetis running on Protocol 1 shouldn't be affected nor would OpenHPSDR running on Protocol 1 as they both run at 100 Mbits/second.

I don't know how Microsoft detects "Multimedia" traffic vs. non-Multimedia traffic. Perhaps its possible to designate our UDP traffic as Multimedia traffic and get around the throttling that way. This would probably be the best action, if possible, so registry modification isn't necessary. Perhaps someone more experienced in network traffic than I am will know how Microsoft determines this. I assume it would need to be in the packet payload.

Joe W4WT
User avatar
W2PA
Posts: 166
Joined: Sun Apr 09, 2017 6:34 pm
Location: LaGrangeville, NY
Contact:

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby W2PA » Tue May 11, 2021 5:58 pm

I have to echo your observation and suggestion, Joe.

After I made that one single change (step 1 in the referenced procedure by EA3AQR about the NetworkThrottlingIndex registry entry) not only did sequence errors magically disappear but so did all the data drop-outs I was occasionally getting, both upstream and downstream. This applies across the board whether you're using VAC or not (in my case, not, except for digital mode).
73,
Chris, W2PA
User avatar
w-u-2-o
Posts: 5539
Joined: Fri Mar 10, 2017 1:47 pm

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby w-u-2-o » Wed May 12, 2021 5:12 pm

Joe-W4WT wrote:Scott,

After doing some research on the Network Throttling Index I think it might be good if you were to create a "sticky" either under Thetis or Protocol 2 suggesting that the "Network Throttling Index" should be changed to "FFFFFFFF" from its default IF you are running Thetis with Protocol 2 firmware.

I'll probably do that, since this change has helped several people. However, it is by no means a definitive fix for everyone. I suspect that the specific NIC and NIC driver may make a difference as well. For instance, this change has made zero difference in the performance I see on my PC, which was already good without it.

The reason for this is due to the stated intention by Microsoft of the network throttling index which is:

"By default, Windows implements a network throttling mechanism to restrict the processing of non-multimedia network traffic to 10 packets per millisecond ( a bit over 100 Mbits/second)."

This is demonstrably false. Without making this change you can easily demonstrate rates well in excess of 100Mbit/s for file transfer, speed testing, using tools like iPerf, etc. I'm hardwired to my both my NAS and my router. I see rates well over 500Mbit/s to my NAS, and with 300Mbit/s internet service, well over 100Mbit/s for internet downloads.

I Google searched this statement and only found it repeated endlessly in a series of gamer forums with no attribution to any Microsoft references.

It's also worth mentioning that with RX1 and RX2 both activated and both running 768KHz, total network utilization is below 100Mbit/s as reported by the Windows ResMon tool.
HB9LFQ
Posts: 20
Joined: Wed Jan 06, 2021 11:44 am

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby HB9LFQ » Wed May 12, 2021 7:56 pm

w-u-2-o wrote:I suspect that the specific NIC and NIC driver may make a difference as well. For instance, this change has made zero difference in the performance I see on my PC, which was already good without it.


Hi,

ok, it helped with a:
Realtek PCIe GbE Family Controller
Driver version: 10.35.510.2019
Windows 10 Pro, Version 2004, Build 19041.985

73,
András
Last edited by HB9LFQ on Wed May 12, 2021 7:59 pm, edited 1 time in total.
User avatar
w-u-2-o
Posts: 5539
Joined: Fri Mar 10, 2017 1:47 pm

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby w-u-2-o » Wed May 12, 2021 8:41 pm

Good idea. Did NOT help with:

Intel(R) Ethernet Connection (2) I219-V
Driver version: 12.19.0.18
Windows 10 Pro Version 20H2 (OS Build 19042.928)
ea3aqr
Posts: 270
Joined: Mon Mar 04, 2019 10:50 pm
Location: BCN

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby ea3aqr » Wed May 12, 2021 8:55 pm

Helped with:
Realtek PCIe 2.5 GbE
Driver: 10.42.526.2020
Windows 10 Enterprise 20H2

But I have a dual lan motehrboard and Had the same issue with the 1Gb Intel lan.

I suspect it si not ethernet chip dependant.
Last edited by ea3aqr on Thu May 13, 2021 2:32 pm, edited 4 times in total.
New call sign EA3CL
User avatar
W2PA
Posts: 166
Joined: Sun Apr 09, 2017 6:34 pm
Location: LaGrangeville, NY
Contact:

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby W2PA » Wed May 12, 2021 9:34 pm

Helped with mine:
Intel(R) 82579V Gigabit Network Connection
Driver: Intel 12.15.31.4
Windows 10 Pro 2004 19041.928
Last edited by W2PA on Thu May 13, 2021 12:08 pm, edited 1 time in total.
73,
Chris, W2PA
Joe-W4WT
Posts: 167
Joined: Sun Apr 09, 2017 5:27 pm
Location: Cumming, GA

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby Joe-W4WT » Wed May 12, 2021 10:39 pm

Scott,

You said "This is demonstrably false. Without making this change you can easily demonstrate rates well in excess of 100Mbit/s for file transfer, speed testing, using tools like iPerf, etc."

Sorry you misunderstood Scott. I thought it was obvious we were talking about UDP traffic; not TCP. Of course TCP traffic is not throttled. I assumed that would be obvious. And, I assume, UDP traffic is only throttled "to some extent" when necessary to protect Multimedia traffic. It doesn't take much throttling of our Thetis traffic to cause dropouts and under/overflows.

The fact that it fixed my dropouts and obviously from the comments fixed others seems to me to make it a demonstrable fact that this throttling of UDP traffic is happening and causing MANY people problems. Obviously you have something I and other don't seem to have in that your system is, by your statements, not affected at all. Congratulations on that. The rest of us are really happy Jordi found this information and presented it to us.

Joe W4WT
ea3aqr
Posts: 270
Joined: Mon Mar 04, 2019 10:50 pm
Location: BCN

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby ea3aqr » Wed May 12, 2021 10:54 pm

Joe-W4WT wrote:Scott,

You said "This is demonstrably false. Without making this change you can easily demonstrate rates well in excess of 100Mbit/s for file transfer, speed testing, using tools like iPerf, etc."

Sorry you misunderstood Scott. I thought it was obvious we were talking about UDP traffic; not TCP. Of course TCP traffic is not throttled. I assumed that would be obvious. And, I assume, UDP traffic is only throttled "to some extent" when necessary to protect Multimedia traffic. It doesn't take much throttling of our Thetis traffic to cause dropouts and under/overflows.

The fact that it fixed my dropouts and obviously from the comments fixed others seems to me to make it a demonstrable fact that this throttling of UDP traffic is happening and causing MANY people problems. Obviously you have something I and other don't seem to have in that your system is, by your statements, not affected at all. Congratulations on that. The rest of us are really happy Jordi found this information and presented it to us.

Joe W4WT


;)
New call sign EA3CL
User avatar
w-u-2-o
Posts: 5539
Joined: Fri Mar 10, 2017 1:47 pm

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby w-u-2-o » Wed May 12, 2021 11:54 pm

I'm sorry, Joe, but it's still demonstrably false that any traffic, UDP or TCP, is limited to 100Mbit/s. Here are two tests I just performed. The first is with network throttling set to FFFFFFFF, which happens to be where I last left it. Then I set the network throttling back to 0000000a and rebooted and performed the second test pictured. The Tamosoft server was on my not-particularly-fast laptop that was hardwired to the network. The connection was through my Ethernet switch. I suspect the laptop server was the limiting factor. It also is running the default, Windows 10 Pro network throttling setting.

I also played with the various QoS traffic type settings in the Tamosoft tool but did not see any performance changes that were significantly different. I sincerely doubt that either Thetis or the firmware does any QoS marking of the UDP traffic, but again no matter what type of traffic I selected in the Tamosoft tool it made little practical difference.

I only ran these tests for a about a minute, the stat's will really settle down if you run a longer test. But the point that network throttling in any way restricts average data rates is clearly false. That said, data rates did seem smoother and less variable with FFFFFFFF. So maybe there is something to be said for that. It needs a more careful study. But on my machine it can clearly keep up, well above the 50 to 100Mbit/s required by Thetis, even with a crappy old laptop as a server, so perhaps that's why I'm not noticing a difference.

If you have another PC you can use as the Tamosoft server I'd encourage you to try these experiments yourself.

Test #1--Network Throttling FFFFFFFF

Throughput Test Network Throttling FFFFFFFF.JPG
Throughput Test Network Throttling FFFFFFFF.JPG (287.82 KiB) Viewed 12265 times


Test #2--Network Throttling 0000000a

Througput Test Network Throttlling 0000000a.JPG
Througput Test Network Throttlling 0000000a.JPG (290.36 KiB) Viewed 12265 times
User avatar
W2PA
Posts: 166
Joined: Sun Apr 09, 2017 6:34 pm
Location: LaGrangeville, NY
Contact:

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby W2PA » Thu May 13, 2021 12:43 am

Maybe *average* data rates isn't the issue.

For a couple of years now, ever since moving to protocol 2 and GigE, I've been plagued with very short data stream dropouts accompanied by sequence errors. I'm sure my average data rates were just dandy. But the glitches were noticeable on both transmit and receive. Sometimes they'd occur every few seconds, sometimes a few times a minute, sometimes less frequently.

I've tried fine-tuning Ethernet settings, replacing the driver, even tried replacing the NIC, all to no avail. It would seem to be cured for a while only to return at random, sometimes after a few hours. And it wasn't a Thetis problem since it occurred with SDR Console too. And it had nothing to do with the firmware version - I tried several and it occurred with all of them.

When it would return, it would often disappear after a reboot. Until it started again at random. Frustrating.

Now, after making that one single registry change, it's been completely gone for three days, testing every few hours (during the day) - and so have the accompanying Seq errors - disappeared. I used to notice them constantly and they are completely gone now.

I don't completely understand the mechanism causing this problem. But I'm glad it's gone and I'm certain it was that one change that did it.
73,
Chris, W2PA
cLicari
Posts: 109
Joined: Mon Apr 10, 2017 9:33 pm
Location: North Texas

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby cLicari » Thu May 13, 2021 2:41 am

Since making the "NetworkThrottlingIndex" change to FFFFFFFF three days ago I have not had a single SEQ error during TX or RX. There is no question this change has eliminated pages of SEQ errors observed in every operating session since the Windows 10 update.
Carl
NX5T


Manufacturer: Intel Corporation
Description: Intel(R) Gigabit CT Desktop Adapter
Driver version: 12.17.10.8
Carl Licari
NX5T
Anan 8000DLE, FW v2.0 2b, Thetis 2.8.11, 21k9
Windows 10, dedicated network subnet, Intel i7 8700K, 32GB, NVIDIA GeForce GTX 1060, Samsung 40" 4K display
User avatar
Tony EI7BMB
Posts: 651
Joined: Sun Apr 09, 2017 2:31 pm
Location: Dublin
Contact:

Re: How to solve latency problems and VAC under/overflows in Windows 10

Postby Tony EI7BMB » Thu May 13, 2021 8:42 am

Same here , resolved the issue

Manufacturer: Intel Corporation
Description: Intel(R) Gigabit CT Desktop Adapter
Driver version: 12.17.10.8

Return to “Digital ("Virtual") Audio”