新 Surface Pro 的 DPST 设置

月初时,我入手了一台新的 Surface Pro (5th gen),即 Surface Pro 2017 款。

但在使用过程中,遇到了一个问题:屏幕的色彩对比度或亮度,在部分画面场景中,能感知到明显的变化。我猜测,这可能是 Intel 的 Display Power Saving Technology(DPST,显示器节能技术)引起。且事实上的确如此。

在 Surface Pro 3 等搭载 Intel 核芯显卡的设备上,通过下载安装 Intel 的官方驱动,并在驱动的控制面板中关闭“显示器节能技术”即可解决此问题。但是微软似乎对新 Surface Pro 的驱动进行了相关的定制,以至于从 Intel 官网下载的驱动无法安装。

然而,Mike Battista 在他的博客中,针对 Surface Pro 4 提供了一个十分有效的解决方案:通过修改注册表来禁用 DPST。1

在 Surface Pro 4 的注册表项 FeatureTestControl 的字段中,每个值都代表了一个功能特性。其中 0 表示启用某个特性,而 1 则表示禁用。Intel 的显卡驱动正是通过读取该注册表项中的值来决定是否启用相关特性。而 DPST 的值,就在从右往左数第五位。

1
2
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000]
"FeatureTestControl"=dword:00009240

因此,要禁用 DPST,只需要把该值设置成为 1 即可。正如上面所显示的,值为 9240,那么只要把它替换成 9250 就可以了。但如果你的设备中,显示的值并不是 9240,那么就需要把你设备上的这十六进制数,输入到计算器中,换算成二进制,然后从右往左数,看看第五位是否为 0。如果是,那么只需要替换成 1 即可禁用该特性。将替换后的二进制数再次换算回十六进制,填进注册表中。

虽然 Battista 的方法是针对 Surface Pro 4 的,但是 Nick G 在评论中指出,该方法同样适用于新的 Surface Pro (5th gen) ,只不过注册表中值的位置稍微有些差异罢了,不是在 0000,而是在 0001 中:

1
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0001]

同样的,只需按照上面的方法修改即可。

修改完毕后,记得重启系统。

嗯!It works!

但要注意,系统推送的升级可能会把这个值重置回 0,从而重新开启 DPST,到时候可能需要你再去改一次注册表。

参考链接

[1] Mike Battista, Disable Intel Display Power Saving Technology on Surface Pro 4