一份对Windows游戏的丝滑度、手感等因素的研究心得
请查看(https://learn.microsoft.com/windows-hardware/design/minimum/windows-processor-requirements)
然后按照自己的CPU最高可用的Windows版本选择
| 系统版本 | 硬件加速GPU计划 | 窗口化游戏优化 |
|---|---|---|
| <=23H2 | 不开 | 不开 |
| >=24H2 | 开 | 开 |
-
新显卡的
显卡驱动需要定期更新,老显卡用系统自动装的驱动就是最稳定 -
追求最新特性和最新BUG修复就选择
GameReady驱动 -
特别注重新驱动的稳定性可以选择
Studio驱动 -
网卡驱动和芯片组驱动不要太老就好
-
一定要注意显卡
DP和HDMI接口版本和显示器接口版本是不是对等
其次如果要保证延迟稳定性,线材最长不超过1.5m
然后不要被显示器分辨率迷惑,4K高刷如果DP接口只有DP1.4,就必须开DSC使用
开DSC要付出很多代价,不开就没法用高刷 -
用DP接口需要手动在显示器开启
AdaptiveSync,HDMI接口是自动识别VRR
优先买拥有这2个可变垂直同步技术的显示器
注意这2个技术和DSC不兼容,DSC也和自定义刷新率不兼容 -
非到必要,不选择超频档刷新率,只选择原生刷新率
超频档刷新率大部分都会导致显存无法休眠,永远在最高频 -
进阶操作可以使用CRU工具创建一个更稳的刷新率
计时标准选择Automatic PC,这个是消隐兼容性最好的计时
更稳的刷新率意思是把刷新率调整到像素频率不超过显示器面板带载上限
Tip
我个人更喜欢尽最大可能优选用DP
我在用X3D CPU,搭配300HZ的屏幕,接的DP + 无DSC + AdaptiveSync + CRU调整消隐
简直棒得不行
系统的MPO功能会在游戏高GPU负载时影响低GPU负载程序的画面更新,出现画面残留等,关闭这个功能可以缓解
- 修改方法
下载和管理员运行set-mpo-disabled.bat - 重置修改
下载和管理员运行reset-mpo-default.bat
Important
需要重启生效
Note
运行一次即整个系统永久保持,不需要加入开机自启
这是一个大幅影响鼠标手感的修改,推荐FPS选手
如果要玩的游戏不支持原始鼠标输入,这个修改就可以消除鼠标加速带来的游戏里的奇怪鼠标手感
- 修改方法
下载和管理员运行set-mouseacceleration-off.bat - 重置修改
下载和管理员运行reset-mouseacceleration-default.bat
Important
需要重启生效
Note
运行一次即整个系统永久保持,不需要加入开机自启
这是一个细微影响鼠标手感的修改,推荐FPS选手
- 修改方法
低灵敏度玩家:下载和管理员运行set-fgbgslice-fix31.bat高灵敏度玩家:下载和管理员运行set-fgbgslice-var31.bat
- 重置修改
下载和管理员运行reset-fgbgslice-default.bat
Important
需要重启生效
Note
运行一次即整个系统永久保持,不需要加入开机自启
Win32PrioritySeparation二进制位解释
| 6~5位 | 4~3位 | 2~1位 | |
|---|---|---|---|
| 解释 | 时间片长短 | 长短可变性 | 前后台时间片比例 |
| 数值作用 | 00 = 默认 | 00 = 默认 | 00 = 1:1 |
| 数值作用 | 01 = 长 | 01 = 可变 | 01 = 2:1 |
| 数值作用 | 10 = 短 | 10 = 固定 | 10 = 3:1 |
| 数值作用 | 11 = 默认 | 10 = 默认 | 11 = 3:1 |
举例:
- 二进制
010110表示可变长3:1调度,对应十六进制16,十进制22 - 二进制
101010表示固定短3:1调度,对应十六进制2a,十进制42
把ISR锁定到CPU0处理,可以防止ISR轮流到不同CPU核心反复切换C-State导致的延迟,尤其是鼠标的ISR收益会更大
再把tick中断来源设置为强制LAPIC,可以阻止老游戏使用主板的慢速tick
- 修改方法
下载和管理员运行set-isr-cpu0.bat
下载和管理员运行set-isr-lapic.bat - 重置修改
下载和管理员运行reset-isr-default.bat
Tip
建议把鼠标设备插入到主板上能和CPU直连的PCIe链路上
可以免去走芯片组中继
Important
需要重启生效
Note
运行一次即整个系统永久保持,不需要加入开机自启
建议也把CPU0设置为默认调度不使用的保留核心,防止用户层线程调度到CPU0上被ISR反复排挤
- 修改方法
下载和管理员运行set-isr-cpu0-reserved.bat - 重置修改
下载和管理员运行reset-isr-default.bat
Note
对于没有超线程的CPU,第1个CPU核心会被完全不可调度(除非设置Affinity)
Important
需要重启生效
Note
运行一次即整个系统永久保持,不需要加入开机自启
重新开启全局同步的最高计时器精度,可以让每个程序的中断计时器获得同等的最高精度
- 修改方法
下载和管理员运行set-globaltimeres-enable.bat - 重置修改
下载和管理员运行reset-globaltimeres-default.bat
Important
需要重启生效
Note
运行一次即整个系统永久保持,不需要加入开机自启
Windows事件日志中Kernel-Processor-Power的最大性能百分比,会直接影响Windows的线程调度分布
- 单CCD AM4的关闭方法
BIOS中选择CPPC Preferred Cores为禁用 - 双CCD或者AM5以后的关闭方法
BIOS中选择PBO Per-core Boost Clock Limit- 属于CCD0的核心设置为高于CCD1的频率
(随便高多少) - 属于CCD1的核心设置为CCD1的频率上限
(也可以是自己想要的上限)
- 属于CCD0的核心设置为高于CCD1的频率
Note
有研究兴趣可以尝试