As always make a system restore point before making and registry settings, make a backup of your registry too. You don’t have to, nothing should go wrong but it’s always better to be safe than sorry.

It’s crazy how much microsoft gimps your PC from it’s full gaming potential and the amount of stuff they hide from you.

How to Tweak Windows 10 for Gaming Nagle’s Algorithm

Nagle’s algorithm combines several small packets into a single, larger packet for more efficient transmissions. This is designed to improve throughput efficiency of data transmission. Disabling “nagling” can help reduce latency/ping in some games. Nagle’s algorithm is enabled in Windows by default.

To implement this tweak, modify the following registry keys.

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersInterfaces{NIC-id} For the {NIC-id}, look for the one with your IP address listed. Under this {NIC-id} key, create the following DWORD value:

TcpAckFrequency and set it to 1 to disable “nagling” for gaming.
TCPNoDelay and set it also to 1 to disable “nagling”
TcpDelAckTicks and set it to 0

Note: Some reports say that the tweaks did reduce latency when playing Dota 2 and League of Legends but it doesn’t work for some. I have tried it and my latency improved from 110 to 90ms (SEA Server) when playing Dota 2. Network Throttling Index

Windows implements a network throttling mechanism, the idea behind such throttling is that processing of network packets can be a resource-intensive task. It is beneficial to turn off such throttling for achieving maximum throughput.

To implement this tweak, run regedit and modify the registry HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionMultimediaSystemProfile. Under SystemProfile, create a DWORD value and name it to “NetworkThrottlingIndex” then set its Hexadecimal value to ffffffff for gaming and max throughput: ffffffff completely disables throttling. System Gaming Responsiveness

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.

To implement this tweak, run regedit and modify the registry key HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionMultimediaSystemProfile. From there, create a new DWORD and name it to “SystemResponsiveness” set its hexadecimal value to 00000000 for pure gaming/streaming.

In the same Registry hive as the above tweak, you can also change the priority of Games. To implement this tweak, go to HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionMultimediaSystemProfileTasksGames and change the following registry values:

“GPU Priority” change its values to 8 for gaming.
“Priority” set to 6 for gaming.

Update another tweak In Windows 8/8.1, just like with Windows 7, multimedia applications use the “Multimedia Class Scheduler” service (MMCSS) to ensure priritized access to CPU resources, without denying CPU resources to lower-priority background applications. However, this also reserves 20% of CPU by default for background processes, your multimedia streaming and some games can only utilize up to 80% of the CPU. This setting, in combination with the above “NetworkThrottlingIndex” can help some games and video streaming. We recommend reducing the reserved CPU for background processes from the default of 20%.

Navigate to:

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionMultimediaSystemProfile SystemResponsiveness=10 (DWORD, default is 20 denoting 20% of CPU reserved, recommended: decimal 10, or 0 for pure gaming/multimedia performance)

Notes: The number in this key is rounded by MMCSS to the nearest 10. In some server operating systems (Windows 2008 Server), the SystemResponsiveness may be set to 100, instead of 20 by default. This is by design, giving higher priority to background services over multimedia.

Update additional tweaks

Disable Receive Segment Coalescing State (RSC)

This is applicable to Windows 8/10/2012 Server, not available for earlier Windows versions.

Receive Segment Coalescing (RSC) allows the NIC to coalesce multiple TCP/IP packets that arrive within a single interrupt into a single larger packet (up to 64KB) so that the network stack has to process fewer headers, resulting in 10% to 30% reduction in I/O overhead depending on the workload, thereby improving throughput. Receive Segment Coalescing (RCS) is able to collect packets that are received during the same interrupt cycle and put them together so that they can be more efficiently delivered to the network stack. While this reduces CPU utilization and improves thorughput, it can also have a negative impact on latency. That is why we recommend you disable it where latency is more important than throughput.

Possible states: enabled, disabled, default. Default state: disabled Recommended: disabled for pure gaming latency, enabled for better throughput. To enable using netsh:

netsh int tcp set global rsc=disabled

To change using PowerShell cmdlets:

Disable-NetAdapterRsc -Name * (use to disable RSC for all adapters) Enable-NetAdapterRsc -Name * (use to enables RSC for all adapters that support it) Get-NetAdapterRsc -Name * (use to view adapters that support RSC)

Notes: Only supported by some network adapters. May need “Checksum Offload” enabled as well to work.

SystemResponsiveness (Gaming and Multimedia)

Source link

Leave a Comment