- A collection of
Tweaks.batfocused on optimizing overall responsiveness by improving framerate, frametimes, input and device communication latencies. - Experimental
Windows11Tweaks.batthat make the OS more responsive. Remove bloat and configure telemetry, security and privacy elements. - Other improvements can include reducing or eliminating stutters and hitching.
Note
- Serves mainly as a document to track my own configuration changes.
- Not intended as a comprehensive user guide with technical explanations or a FAQ.
- Not a system overclocking guide.
- Currently tested and working on;
INTEL i9 12900KNVIDIA RTX 3080WINDOWS 11 Pro [Version 25H2 Build 26200.6899]
Warning
- Tweaks are experimental.
- Tailored for Intel CPU, NVIDIA GPU and Windows 11 OS.
- Expect increased temperatures, power consumption and usage of CPU and GPU.
- Use the scripts provided as a reference to test and tailor settings to your own environment.
Caution
- Use at your own risk.
- ASUS GPU Tweak III
- Display Driver Unistaller (DDU)
- Driver Store Explorer
- Equalizer APO + PEACE
- HWiNFO
- Intelligent Standby List Cleaner
- Interrupt Affinity Policy Tool
- Measure Sleep
- NVIDIA Profile Inspector
- NVCleanInstall
- ParkControl
- Power Settings Explorer
- Timer Bench
- USB Device Viewer
- USB Tree Viewer
Disable:
- Active State Power Management (ASPM)
Disable - Aggressive Link Power Management (ALPM)
Disable - Hyper-V
Disable - Intel Virtualization Technology
Disable - VT-d
Disable - Hyper-Threading [Dependant on Game/System]
Disable - Spread Spectrum [When Overclocking]
Disable - CPU C-States
Disable - CPU Power Throttling
Disable - CPU Thermal Protection
Disable - Fast Boot
Disable - Intel SpeedStep
Disable - Intel TurboBoost
Disable - TPM
Disable - Integrated devices [Audio, Video, Bluetooth, WiFi]
Disable - Unused USB ports
Disable
Enable:
- Above 4G Decoding [Resizable Bar]
Enable - AHCI [SATA Controller Mode]
Enable - XMP [Profiles for RAM]
Enable - High Performance Power Mode [Intel Defaults]
Enable - BCLK size [Set to 100.00 Mhz]
Enable - High Precision Event Timer (HPET)
Enable - AVX Offset - Set to
Enableand0offset. - Load Line Calibration (LLC) [Set a static voltage for CPU vcore and use LLC]
Enable - Secure Boot
Enable
Note
- Performance improvement by disabling Hyper-Threading will vary by game. May benefit by; decreasing power draw and temperatures, specific core/instruction assignments and increase overclock stability or capabilities. There are always trade-offs.
- Set appropriate number of cores value in
BCDTweaks.batto match your HT setting.
-
Enabling
Resizable BARin the BIOS is required otherwise the GPU Driver level settings will not have any effect. -
In BIOS:
- Set Above 4G Decoding [Resizable Bar] to
Enable
- Set Above 4G Decoding [Resizable Bar] to
-
In NVIDIA Profile Inspector:
- Set rBAR - Feature to
Enable - Set rBAR - Options to
0x00000001 - Set rBAR - Size Limit to
0x0000000060000000[1.5GB]
- Set rBAR - Feature to
Note
- Enabling
Resizable BARin the BIOS depends on your hardware compatibility, motherboard manufacturer and BIOS version. - You can verify
Resizable BARis enabled by opening theNVIDIA Control PanelthenSystem Information, and then look forResizable BARin the list. If it saysYes, you’re set.
- Boot Windows in
Safe Mode - Run
Display Driver Uninstaller (DDU)to remove all traces of your current NVIDIA driver from your PC. - Reboot
- Run
NVCleanInstallsoftware to install a modified version of the NVIDIA graphics card driver. - Follow the settings in the next section
- Select Components to Install
Display Driver (Required) - Disable Installer Telemetry & Advertising
On - Unattended Express Installation
On - Perform a clean installation
On - Disable Multi-Plane Overlay (MPO)
On - Disable Ansel
On - Show Expert Tweaks
On - Disable Driver Telemetry (Experimental)
On - Enable Message Signaled Interrupts (MSI)
On - Interupt Policy
Specified ProcessersClickSelect Processorsand assign the cores you want MSI to be assigned for the GPU - Interupt Priority
High - Disable HDCP
On - Rebuild Digital Signature (Required)
On - Use Method Compatible With Easy Anti-Cheat
On - Automatically Accept "Driver Unsigned" warning
On
- Open
NVIDIA Control Panel - Click
Manage 3D Settings - Image Scaling
Off - Image Sharpening
Off - Anisotropic Filtering
Off - Antialiasing - FXAA
Off - Antialiasing - Gamma Correction
On - Antialiasing - Mode
Application Controlled - Antialiasing - Transparancy
Off - Background Application Max Frame Rate
Off - CUDA – GPUS
All - Low Latency Mode
OnorUltra - Max Frame Rate
OfforMatch Your Monitor's Refresh Rate - Monitor Technology
Fixed Refresh - Multi-Frame Samples AA (MFAA)
Off - OpenGL GDI Compatibility
Prefer performance - OpenGL Rendering GPU
Auto - Power Management Mode
Prefer Max Performance - Preferred refresh rate
Highest available - Shader Cache Size -
Unlimited - Texture filtering - Anisotropic sample optimization
Off - Texture filtering - Negative LOD bias
Clamp - Texture filtering - Quality
High Performance - Texture filtering - Trilinear optimization
Off - Threaded optimization
On - Tripple buffering
Off - Vertical Sync
Off
Note
- Set these as the global profile for NVIDIA
- Individually set specific NVIDIA profile per game .exe to your preference [such as sharpening or frame-rate locking]
- Low Latency Mode [Off/On/Ultra] is preferential based and the best choice will depend on the game and your hardware.
- NVIDIA Reflex setttings enabled in-game will override any Low Latency Mode flag set.
- Negative LOD bias setting is preferential based and the best choice will depend on the game. Manipulates texture pop-in distance and quality.
- Some games intentionally ignore NVIDIA Control Panel settings or are simply not compatible.
- Open
NVIDIA Control Panel - Under
DisplayselectChange Resolution - Select
Use NVIDIA color settings - Under
Desktop color depthselectHighest (32-bit) - Under
Output color depthselect8 bpc - Under
Output color formatselectRGB - Under
Output dynamic rangeselectFull
- Open
NVIDIA Control Panel - Under
DisplaySelectAdjust Desktop Size and Position - Under
Select Scaling ModeSelectNo Scaling - Under
Perform Scaling On:SelectGPU - Check
Override the scaling mode set by games and programstoOn
Note
- In general, any type of scaling either by GPU or Display will add some amount of latency.
- GPU scaling is typically faster than what built-in monitor technology offers which, on some models, can introduce more input latency than expected.
- Open
NVIDIA Control Panel - Click
Manage 3D Settings - Click
Program Settings - Click
AddsetPower Management ModetoHigh Performancefor;- DWM.exe (located in \Windows\System32)
- Explorer.exe (located in \Windows)
- MicrosoftShellExperienceHost
- Steam
- Browsers
- VLC
- Any other games or apps with this toggle not set correctly
Note
- Simple method for forcing
High Performanceindividually for specific Windows apps and game .exes ensuring Power Management Mode is NOT set toNVIDIA Recommended.
- GSYNC - Application Mode
Off - GSYNC - Application Requested State
Off - GSYNC - Application State
Disable - GSYNC - Global Feature
Off - GSYNC - Global Mode
Off - Vertical Sync - Force
Off - Vertical Sync - Smooth AFR Behavior
Off - Vertical Sync - Tear Control
Standard - Antialiasing - Line Gamma
On - Ansel - Enabled
Off[Dependancy for NVIDIA APP/GUI and Overlay. Does not impact NVIDIA Control Panel] - CUDA - Forced P2 State
Off - DLSS - Enable DLL Override -
On - DLSS Overridden by latest available - DLSS - Forced Preset Letter -
Always use latest - DLSS-RR - Enable DLL Override -
On - DLSS-RR Overridden by latest available - DLSS-RR - Forced Preset Letter -
Always use latest - Raytracing - (DXR) Enabled
Off - Raytracing - (Vulkan RT) Enabled
Off - rBAR - Feature
Enable - rBAR - Options
0x00000001 (Returnal, Red Dead Redemption 2) - rBAR - Size Limit
0x0000000060000000[1.5GB] - Antialiasing - SLI AA
0x00000000 AA_MODE_SELECTOR_SLIAA_DISABLED - NVIDIA Predefined Ansel Usage
0x00000000 ANSEL_ALLOW_DISALLOWED - Variable Refresh Rate
0x00000000 VSYNCVRRCONTROL_DISABLE - Staging Cache Size
0x01000001 Max - Shader Max Reg Allowed
0x00000400 Max[Specifies max register allowed when compiling/optimizing a shader]
- Open
Control Panel - Select
System - Select
Display - Select
Graphics - Select
Change Default Graphics Settings - Set
Hardware-accelerated GPU SchedulingtoOn
- Open
Control Panel - Select
Gaming - Select
Game Mode - Set Game Mode to
On
- Disable
Audio/Signal Enhancements - Disable
Spatial Sound - Enable
Exclusive Mode - Open
Control Panel>Hardware and Sound>Sound>Communications> Set toDo Nothing - Set
Audio OutputtoHeadphonesmode in games whenever possible - Set
Default Formatto24-bit 48000Hz (Studio Quality) - Increase and keep
Windows OSvolume set to100%- Use your DAC/AMP, physical volume slider or in-game settings to control volume levels instead
- Use the Intelligent Standby List Cleaner application to force a Windows Timer Resolution
- Start this program with windows and always running in the background
- Enable
Custome Timer Resolution - Enable
GlobalTimerResolutionRequests[we already force enable this in the registry inTimerTweaks.bat] - Set the
Wanted Timer Resolutionfield to a value extremely close to 0.5ms - Use Measure Sleep application to check diagnostics for resolution, sleep and delta;
Resolution: 0.5050ms, Sleep(n=1) slept 1.0038ms (delta: 0.0038)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0040ms (delta: 0.0040)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0036ms (delta: 0.0036)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0042ms (delta: 0.0042)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0045ms (delta: 0.0045)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0041ms (delta: 0.0041)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0076ms (delta: 0.0076)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0033ms (delta: 0.0033)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0041ms (delta: 0.0041)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0045ms (delta: 0.0045)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0041ms (delta: 0.0041)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0031ms (delta: 0.0031)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0035ms (delta: 0.0035)
Resolution: 0.5050ms, Sleep(n=1) slept 1.0033ms (delta: 0.0033)
Note
- The default Windows setting is around ~15ms.
- For my system, setting the Timer Resolution value to 0.5050 produced the best result where each sleep metric is exact/accurate to 2 decimal places - 1.00ms.
- On your system, test different Timer Resolution values so that you achieve the lowest and most consistent sleep metric
- Your Timer Resolution isn't optimal when you see the sleep values vary too much (spiking from 1ms to 2ms or higher)
- Use the Interrupt Affinity Policy Tool application to define and force Message Signal Intterupts
- Assign cpu cores to separate devices where interrupts are sent to
- Assign priority level
| Device | Priority | Core Assignment |
|---|---|---|
| GPU | High | P-Cores 4,5,6,7 |
| Network Controller | High | P-Cores 1,2,3 |
| USB Host Controllers | High | P-Cores 1,2,3 |
| NVME Drives | High | E-cores 8-15 |
| NVME Controllers | High | E-cores 8-15 |
Note
- Example table shows a configuartion where HyperThreading is disabled, that sets high priority and seperates intterupts individually on usable threads for all MSI enabled devices.
- Recommended to not set intterupts on Core 0. Typically the default interrupt thread(s) for entire system. Bottleneck in many cases where OS, applications and games can default to significant usage of this core/thread(s).
Plundered with ❤️ by NEKR1D