Win10怎么修改注册表来优化对CPU超线程技术的调度问题

  发布时间:2020-04-13 14:44:40   作者:佚名   我要评论
Win10已经是目前主流系统,而Win7会随着时间推移慢慢淘汰掉,但是有些用户依然坚守使用Win7,一种可能是习惯,另一种可能就是需要使用某个软件或者游戏,在Win10下运行不了或者是有各类问题,那么一起看看Win10怎么修改注册表来优化对CPU超线程技术的调度问题

大家都知道,Win10已经是目前主流系统,而Win7会随着时间推移慢慢淘汰掉,但是有些用户依然坚守使用Win7,一种可能是习惯,另一种可能就是需要使用某个软件或者游戏,在Win10下运行不了或者是有各类问题。论CPU,Win10对超线程的调度一直没有Win7好,经常会出现同频下,i9-9900K不如i7-9700K,或者是i7 8700K不如i5 8600K的情况,感兴趣的朋友不要错过了。

教你修改注册表来优化Win10对CPU超线程技术的调度问题

优化Win10对CPU超线程技术的调度问题

优化原理:

利用win10的异构调度功能将所有的超线程伪装成小核心,达到优先使用非超线程核心并减少线程切换核心,可以减少响应延迟提高游戏性能和单核性能,并且不影响多线程性能。

注意事项:

此方法只适合intel配备超线程的CPU,尤其是非K系列CPU效果更明显,日常使用的时候睿频也更加稳定,如果您的CPU不带超线程则无效,如果是AMD锐龙处理器不能使用此优化方法,需要在Win10 1903或以上版本+最新芯片组驱动即可,此方法至少支持2017年以后的Win10版本。

具体操作方法

注意,我们需要修改如下的代码中的SmallProcessorMask的值,例如2核4线程就改为00000005,4核8线程就改为00000055,6核12线程就改为00000555,8核16线程就改为00005555。

如下的代码,我们以具备6核心12线程的i7-8700K为例,此值是2进制表示的大小核标识,1为大核心,由于实测Win10系统下0 2 4等线程才是超线程,所以是010101010101,它们的16进制值就是555,这里的KGroups\00中的00是1号cpu如果是多路cpu还需要设置01等等。DynamicCpuPolicyExpectedRuntime值决定进程在cpu单一线程上的保持时间可以适当加长,此值需要使用regedit手动修改注册表添加,无法导入,1450为默认值5200ms。

代码如下:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel]

"DefaultDynamicHeteroCpuPolicy"=dword:00000000

"DynamicCpuPolicyExpectedRuntime"=dword:00001450?

"DynamicHeteroCpuPolicyImportant"=dword:00000002

"DynamicHeteroCpuPolicyImportantShort"=dword:00000000

"DynamicHeteroCpuPolicyMask"=dword:00000004

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\KGroups\00]

"SmallProcessorMask"=dword:00000555

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\0cc5b647-c1df-4637-891a-dec35c318584]

"Attributes"=dword:00000000

代码结束!

我们需要在桌面空白处右键点击,点击“新建”,再点击“文本文档”,即可创建一个文本文件。

教你修改注册表来优化Win10对CPU超线程技术的调度问题

将以上的代码复制到文本中,切记SmallProcessorMask的值,需要根据您的CPU实际具体情况来修改,如下演示是6核心12线程的i7-8700K,所以我们填写了“00000555”。2核4线程就改为00000005,4核8线程就改为00000055,6核12线程就改为00000555,8核16线程就改为00005555。

教你修改注册表来优化Win10对CPU超线程技术的调度问题

相关文章

最新评论