大战戴尔 G3 动态功耗墙!

请先阅读上一篇文章的干货部分.

正如你所看到的那样,戴尔 G3 藏着一个大坑:功耗墙!其对 CPU 和 GPU 性能的影响都非常严重.而且,由于某些我并不清楚的原因,这堵功耗墙的阈值会根据电脑的运行情况动态地调节,真是可恶!下面我们就来看看怎样绕过这堵墙.

单纯的功耗墙并不难破解,在 XTU 里设置较高的 Turbo Boost Power Max 即可.然而, G3 内部实际起作用的功耗墙阈值可能并不是这个值,作出如此推测是基于以下两个现象:1, 当功耗墙阈值自动发生变化时, XTU 的 Turbo Boost Power Max 以及 AIDA64 的 CPU Power Limit 1 (Long Duration) 都会维持原值,只有 HWiNFO 的 PL1 Power Limit 能反映真实的即时数值.一般来说,上述 3 个示值指的是同一个东西,在这种情况下却出现了不同的值,这只能说明这 3 款软件是用不同的方法探测这个值的,而且测到的不是同一个东西;2, 即使将 Turbo Boost Power Max  拉到 Unlimited, 在高负载下功耗墙阈值仍然会大幅下降,这说明这个神秘的"有效阈值"甚至可以无视 XTU 的设定.综上,我的猜想是:在 G3 内部存在两个功耗墙阈值:"表观 PL1" 和"有效 PL1". 前者默认为 45W, 可被 XTU 修改,可被 XTU 和 AIDA64 探测;后者默认也是 45W, 只能被 HWiNFO 探测,功耗墙是否生效是参考后者的值.修改"表观 PL1" 时也会同时修改"有效 PL1" (但有例外,下文详述),但"有效 PL1" 的动态变化不会反映到"表观 PL1" 上.

在解决动态功耗墙这个问题前,得先弄明白到底是什么玩意能够自动调节"有效 PL1", 这是为了治本.(当然啦,上边也写了,我其实没搞明白)有两种可能:1, 电脑自带的电源管理之类的软件;2, BIOS 或 EC. 对于前者,我检查了系统内各种与性能或电源相关的设置,逐个看了任务管理器里的进程,并没有发现问题;对于后者,我觉得可能性很大,但是魔改 BIOS/EC 难度太大,而且戴尔官网上又没找到 EC 下载(或许是跟 BIOS 捆一起了?),遂放弃.

(还有一种可能:撞整机功耗墙.但是手边没工具没法确认.不过话说回来,就算撞整机墙了,我能怎么办?换电源适配器?原装的都已经是 180W 的怪物了,用惯了炒鸡本的我已经有点接受不能了,还要换功率更大的?)

治本不成,只好治标,好歹还有 XTU 嘛.有句话说得很有道理,台式机用 XTU 是为了超频,榨干 CPU 的所有潜能,而笔记本用 XTU 是为了维持频率稳定不降频. XTU 有个非常古怪的现象:如果在双烤前拉高 Turbo Boost Power Max, 双烤时过不了多久"有效 PL1" 就会降,但如果在双烤过程中(已经撞墙后)再拉高,它就永远都不会降, CPU 可以一直稳定在高频率上.实在搞不懂这是什么原因.鉴于此,为了保险,我选择的方案是借助 Windows 任务计划,每分钟调节一次 Turbo Boost Power Max, 就算它要降,我也能在最多一分钟内把它拉起来.

XTU 提供了一个命令行接口 XtuCLI.exe, 可以这样调用:

"C:\Program Files (x86)\Intel\Intel(R) Extreme Tuning Utility\Client\XtuCLI.exe" -t -id 48 -v 46

这会将 Turbo Boost Power Max 设置为 46W. 好啦,这里藏着一个坑:如果修改的目标数值与当前的"表观 PL1" 相同的话,这行命令不会生效.意思就是说,因为"表观 PL1" 只能被 XTU 修改而不会跟着"有效 PL1" 变化,就算"有效 PL1" 变了,这行命令(除第一次执行外)也永远不会生效!

听起来很奇怪,我再解释下.假设原 Turbo Boost Power Max 是 46W, 如果这个命令生效,会将 Turbo Boost Power Max 从 46W 调整为 46W, 这和"不生效"有什么区别?当然有,如上文所述,修改"表观 PL1" 时也会同时修改"有效 PL1",这才是我们想要的效果,而这个效果也会被无效化.

办法是有的.交替执行以下两行命令即可.

"C:\Program Files (x86)\Intel\Intel(R) Extreme Tuning Utility\Client\XtuCLI.exe" -t -id 48 -v 46
"C:\Program Files (x86)\Intel\Intel(R) Extreme Tuning Utility\Client\XtuCLI.exe" -t -id 48 -v 46.5

这会让"表观 PL1" 在 46W 与 46.5W 之间变来变去.

添加两个任务计划,操作分别是上述两行命令,勾选"使用最高权限运行"(执行这些命令会触发 UAC 的),均设置为间隔 2 分钟执行一次,后者比前者延迟 1 分钟.这样就可以实现每分钟交替变化了.

至于为什么不把 Turbo Boost Power Max 调得更高...你试试就知道,长时间高负载运行时 CPU 功率无论如何也突破不了 45W 的,毕竟 TDP 摆在那里.所以就算我们调成 46.5W CPU 也达不到这个功率,能维持 45W 的默认 PL1 已经是谢天谢地了,前边写了,笔记本用 XTU 又不是为了突破性能上限.

来看看成果吧.

这张图片展现的就是 PL1 动态下降后被及时拉高的典型情况.在 XTU 中可以看到,此时 CPU 频率接近 3.0GHz, 撞温度墙而没撞功耗墙,这就是最理想的情况(单从性能上讲的啦~键盘烫成铁板,谁敢摸?)你可能会问,这不撞了温度墙吗?我在上篇文章里写过, G3 的温度墙在 CPU 频率达到 3.0GHz 以上时才会真正产生降频效果,像这样接近而不超过 3.0GHz, 其实什么也不会发生.

你可以看到 PL1 Power Limit 方波状的变化.

可以看到 CPU 的频率十分稳定.

当然,有时也会出现一些古怪的情况.这是在一次双烤测试中观察到的现象:

蓝色箭头所指的是每分钟任务计划运行的时刻.可以看到有几次 PL1 Power Limit 刚被拉起来就立即掉下去了,而之后却可以保持稳定.另有一次我甚至观察到任务计划虽然成功执行,但 PL1 Power Limit 依旧维持较低值,毫无变化(没截图).综上,可以看到这个治标不治本的方法在个别情况下仍然是无效的,个中原理,谁知道呢

要是你看得懂我这上边胡扯了些啥,你也肯定知道这么玩是有风险的.绕过功耗墙当然爽啊,不过在动手折腾前,先要想清楚咯~

另外我要说的是,上述测试均在 -0.1V 电压偏移值的情况下进行.虽然在某台湾论坛上看到有人说所有的 i7-8750H 都可以在 -0.1V 下稳定运行,但是呢...总体来说,就我这台 G3 而言,还算稳定的(有次双烤时我去睡午觉了,烤了 1 个小时,机器没烤坏),不过我还是遇到过几次开机黑屏和蓝屏(蓝屏大概是驱动的锅,与此无关)所以...电压究竟降不降,你自己决定吧.

游戏测试(我就不上图了吧),单从帧率上比较,与上篇文章中的测试结果相差并不大.跑 Assassin's Creed Origins 时, CPU 未出现降频,也没有"越跑越凉"的感人情况,温度基本上在 90 度以上.性能测试快结束时, 46W/46.5W "反复跳跃"状态被打破了, PL1 Power Limit 降到了 45W 以下,但因为性能测试很快就结束了,没有造成什么影响.而 Rise of the Tomb Raider 这边也是一如既往的好看, CPU 没降频,"反复跳跃"也一直维持着.当然,这样时间超短的性能测试或许并不能反映真实情况.

以上.

4 thoughts on “大战戴尔 G3 动态功耗墙!

回复 Moment 取消回复

您的电子邮箱地址不会被公开。 必填项已用*标注