Enable Hardware-accelerated GPU scheduling¶
A new feature in Windows 10 May 2020 Update (version 2004) is hardware-accelerated GPU scheduling, which lets the GPU handle its own task scheduling instead of Windows, thereby reducing latency and improving performance. You can learn how to enable it with this guide.
If you are curious about what this feature exactly does, you can read this tech blog from Microsoft for more details.
If you experience problems or reduced performance from this feature, turn it off and submit feedback.
Disable Game Mode¶
Game Mode may reduce performance and cause stutters/freezes. Read this Guru3D article for more information and instructions on how to disable it.
Disable Fullscreen Optimizations¶
Fullscreen optimizations is a feature in Windows 10 where fullscreen windows are instead made to be a low level borderless window, which gets near fullscreen performance with the fast alt-tabbing of windowed mode.
Source is known to be worse with fullscreen optimizations on some systems and thus you should disable it if you encounter problems.
Open your game folder through Steam. Then, right click on
hl2.exe, click Properties, go to the Compatibility tab, and then select the box that says
Disable Fullscreen Optimizations.
You can find more information on the DirectX Developer Blog and in this Reddit thread.
If disabling fullscreen optimizations helps, let Microsoft know, so they can improve it in the future.
If you’re using variable refresh rate (VRR) technology, like G-SYNC, disabling Fullscreen Optimizations may break it, depending on your monitor, drivers and graphics card. So, if you experience problems with VRR after this, try reverting the change.
Use High Performance power plan¶
Open Power Options and select the High Performance power plan, or the Ultimate Performance plan if you have Windows 10 Pro for Workstations. For AMD Ryzen Zen 2 and below users, use a Ryzen specific plan to correctly take advantage of CPPC2. Alternatively, a custom Ryzen power plan can be used to potentially achieve higher boost clocks.
Disable Radeon Chill¶
Radeon Chill is a power saving feature that introduces a variable framecap. You can disable it in the Radeon Settings app:
- Go to the Gaming tab.
- Set global settings or only for Team Fortress 2 if you want to use Chill elsewhere.
- Turn Chill off.
Disable Unnecessary Services¶
You can use the W10Privacy tool to reduce disk load and other workloads to improve performance.
Use TCP Optimizer to optimize your internet settings.
- Choose your connection speed with the slider at the top.
- Choose the optimal setting at the bottom.
- Click Apply Changes.
This may not do much for TF2, as its optimizations are largely for TCP, which only happens during connection, with a small bit done for UDP, which is used during the actual game session.
Big idea: disable as many overlays as possible. They interrupt the rendering process with their own, which can severely affect performance in many causes. Common examples of overlays are: Discord and Nahimic.
Nahimic is an audio effects software preinstalled on some gaming laptops and desktops, from manufacturers like Alienware, Dell, MSI, and ASUS ROG. Its overlay is especially inefficient, and causes FPS drops and generally lower FPS even when it is turned off. It is notoriously hard to uninstall, so you will have better luck disabling the driver through the following steps:
- Open Device Manager
- Right click and disable anything along the lines of
A-Volute Audio Effects Component.
- Open Services.
- Open Nahimic service.
Intel Panel Self Refresh¶
Intel Panel Self Refresh can ruin frame latency and timings, especially on hybrid (Optimus) laptops. Disable it Power options within your Intel graphics settings app.
Driver latency optimization¶
Badly programmed kernel-mode device drivers might cause latency issues, which lead to problems such as frequent stuttering. The user must sniff out exactly which drivers are causing latency.
Enabling Message Signaled Interrupts (PCIe MSI) for all drivers is a great way to lower DPC latency caused by drivers (ring0). If you have an NVIDIA card, you can use NVCleanstall to enable this, with the added benefit of fully customizing your driver install.
Use LatencyMon and DPC Latency Checker to analyze latency issues caused by kernel-mode device drivers. If they report issues, try updating your drivers or installing alternate drivers.