我在我的联想T530笔记本电脑上使用Debian 10 (buster),它有一个i7-3630QM。多年来,我一直在为频率缩放和温度而烦恼,但到目前为止,它已经成为了一个小问题。
当我尝试运行CPU密集型应用程序时,CPU可能会变得很热很长一段时间,我说的是100°C以上。现在,这台笔记本电脑已经有8年多的历史了,我不知道它还能持续多久,所以我想
几年前,有几个管理者可以用来做这件事,所以我很惊讶现在只有powersave和performance。我尝试使用cpupower设置最高频率为2.4GHz:cpufreq-set -u 2.4GHz。
不幸的是,这似乎并没有真正起作用。cpupower frequency-info报告
current policy: frequency should be within 1.20 GHz and 2.40 GHz.
The governor "powersave" may decide which speed to use
within this range.但是当我启动CPU密集型应用程序(特别是需要3D图形加速的应用程序)时,在我的游戏"Stellaris“中,CPU变得非常热,这并不奇怪,因为cpupower frequency-info报告了。
hardware limits: 1.20 GHz - 3.40 GHz
available cpufreq governors: performance powersave
current policy: frequency should be within 1.20 GHz and 2.40 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency: Unable to call hardware
current CPU frequency: 3.30 GHz (asserted by call to kernel)实际上是自相矛盾的。
现在,这个问题已经在这问题中讨论过了,作者在他的回答中解决了这个问题。不过,有人说这是行不通的。在我的例子中,它也不起作用。这一期中的另一张海报在他的回答中写道,这也不起作用,实际上是链接到内核文档,其中声明实际上不可能可靠地设置频率。
我的笔记本电脑的风扇最近已经清洗和新的热糊已经应用,但正如我说过,这台机器是旧的,但变得热。另一个海报建议将最大负载设置为一个较低的百分比,这实际上可以工作,但不会纠正我的问题,因为CPU会变得非常热。
有没有人知道一种不同的、可靠的限制CPU频率的方法?在前面的示例Stellaris中,我想我注意到CPU试图将频率限制在2.4GHz的设置值,当游戏加载时和我在主菜单中时。一旦我加载一个保存文件,并在游戏本身,它猛增到它的最大频率。应用程序本身是否有可能重写这些值?
有没有人知道还有什么其他方法可以让CPU不能达到这么高的温度呢?当CPU开始节流时,是否可以设置一个较低的温度阈值?
发布于 2021-05-27 06:15:05
多亏了阿特姆·塔什基诺夫,我才能解决这个问题。他在评论中写道
尝试使用intel_pstate:https://silvae86.github.io/2020/06/13/switching-to-acpi-power的acpi-cpufreq整数
这就成功了。
我不得不通过acpi_cpufreq安装apt-get驱动程序(在我的例子中它已经安装了)
apt-get install acpi-support acpid acpi并通过向/etc/default/grub添加intel_pstate=disable来编辑GRUB_CMDLINE_LINUX_DEFAULT,如下所示(在我的例子中):
GRUB_CMDLINE_LINUX_DEFAULT="quiet nosplash debug intel_pstate=disable"然后运行update-grub并重新启动机器。因此,不再使用intel_pstate驱动程序,取而代之的是acpi_cpufreq。除了有更多的调控器可供选择(您可以阅读这里关于它们),最重要的是,我现在可以打开ondemand调控器,并设置一个最小和最大的频率。而且它是这样的。在我的例子中,我用
cpupower frequency-set -g ondemand -d 1.2GHz -u 2.0GHz到目前为止机器还没有太热。
在经历了温度问题之后,我想出了问题的所在。这是GPU的频率和事实,这个问题仍然发生在使用3D应用程序。在/sys/kernel/debug/dri/0/i915_ring_freq_table中,您可以看到GPU可以在相应的最大CPU频率下运行的最大频率。在设置CPU频率后,GPU频率也必须在/sys/class/drm/card0/gt_max_freq_mhz和/sys/class/drm/card0/gt_boost_freq_mhz中进行调整。
https://unix.stackexchange.com/questions/650873
复制相似问题