一份对Windows游戏的丝滑度、手感等因素的研究心得
请查看(https://learn.microsoft.com/windows-hardware/design/minimum/windows-processor-requirements)
然后按照自己的CPU最高可用的Windows版本选择
当然了,条件不允许就不强求了
| 系统版本 | 硬件加速GPU计划 | 窗口化游戏优化 |
|---|---|---|
| <=23H2 | 不开 | 不开 |
| >=24H2 | 开 | 开 |
显卡驱动需要定期更新- 追求最新特性支持和最新BUG修复选择
GameReady驱动 - 特别注重驱动稳定性可以选择
Studio驱动
- 追求最新特性支持和最新BUG修复选择
网卡驱动和芯片组驱动不要太老就好
- 优先选择拥有
AdaptiveSync(自适应垂直同步),有经过测评延迟数据的显示器- 3A游戏可以开AdaptiveSync,FPS不开
- 非到必要,不选择超频档刷新率,只选择原生刷新率
- 超频档刷新率有可能在图像数据复杂时,破坏垂直同步变成负收益
系统的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
有研究兴趣可以尝试