我似乎忽略了有关 GPU 节流的一些信息。我以为这是 GPU 本身的一种低级机制,当 GPU 运行过热时会降低频率。
然而,在使用我的笔记本电脑(戴尔 XPS 9560,Windows 10)时,我遇到了另一种我从未听说过的节流。当我长时间执行 GPU 密集型操作并监控我的 GPU 时,我可以看到它以全时钟速度启动,并且 GPU 的使用率为 100%。一段时间后,“节流”开始:GPU 仍然以全时钟速度运行,但 GPU 使用率下降到 30-50%。此后,GPU 使用率开始频繁地从 30-50 跳到 100 并返回。
我无法发现 GPU 温度和“节流”之间存在任何直接关联,但我已经进行了各种测试,并且我确信它与过热有关(在一段时间不使用笔记本电脑并让其冷却后,首次 100% 使用率的时间明显更长,而使用冷却垫可以明显减少这些下降的频率)。此外,我无法在 Linux(Ubuntu 16.04)上重现这种情况。因此,我的假设是,这是 Windows 级别的某种限制,以防止笔记本电脑运行时温度过高,即使 GPU 温度本身没有问题。
问题是
- 这种类型的限制真的存在吗,还是我误解了什么?
- 有没有办法手动关闭这种节流?我不太关心我的笔记本电脑温度,只要它对笔记本电脑来说是安全的,而且所有传感器都报告相当安全的温度。
答案1
可能是附近另一个组件(甚至是 CPU)的温度导致您的系统整体节流。
笔记本电脑设计的一个问题是,它们通常在 GPU 和 CPU 之间共用一根热管,然后再连接到系统中的单个冷却风扇。这意味着运行其中一个可能会加热另一个,从而导致达到热极限。
因此,即使 CPU 的使用率很低,GPU 也很有可能会导致 CPU 过热,然后 CPU 会进入节流模式,导致 GPU 无法工作。
一旦这种情况开始,您就会陷入 GPU 加热 CPU 的恶性循环,CPU 过热导致其节流,导致 GPU 无法工作,使系统冷却到节流阈值以下,从而允许 CPU 向 GPU 投入更多工作,然后导致 CPU 再次过热。
这是笔记本电脑冷却系统的正确示例,其中 CPU 和 GPU 具有单独的冷却功能: 图片来自Computerworld HP Spectre 评测
注意夹在热管上的两个散热器。如果较小的部件永远不会变热,这可能是可以接受的,但在操作过程中,它实际上会阻止热量离开较大的散热器区域。这是坏的。
更现代的系统不倾向于使用这种糟糕的设计,特别是当越来越多的工作被卸载到 GPU 并且我们期望两个部分都能获得良好的性能时,但这取决于您使用的笔记本电脑。
当然,如果您使用与 CPU 位于同一封装中的集成显卡,那么还会出现 CPU 旁边产生热量的另一个问题。
至少,拆开笔记本电脑并检查冷却组件是否充满灰尘以及风扇是否正常运行是值得的。更换导热膏也会有所帮助。