电源管理调控器单独从powersave变为性能
所以,我有一些HP Envy 15的过热问题让我疯狂。 请参阅此内容以供参考。
无论如何,我做了一个Ubuntu 18.04全新安装。 还安装了tlp
和cpufrequtils
。 那么,如果我做tlp stat -p
…
+++ Processor CPU model = Intel(R) Core(TM) i7-4510U CPU @ 2.00GHz [....] /sys/devices/system/cpu/cpu3/cpufreq/scaling_driver = intel_pstate /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor = performance /sys/devices/system/cpu/cpu3/cpufreq/scaling_available_governors = performance powersave /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq = 3100000 [kHz] /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq = 3100000 [kHz] /sys/devices/system/cpu/intel_pstate/min_perf_pct = 25 [%] /sys/devices/system/cpu/intel_pstate/max_perf_pct = 100 [%] /sys/devices/system/cpu/intel_pstate/no_turbo = 0 /sys/devices/system/cpu/intel_pstate/turbo_pct = 50 [%] /sys/devices/system/cpu/intel_pstate/num_pstates = 24
现在,因为我想使用一个powersave
器, 所以我可以使用它。
+++ Processor CPU model = Intel(R) Core(TM) i7-4510U CPU @ 2.00GHz [....] /sys/devices/system/cpu/cpu3/cpufreq/scaling_driver = intel_pstate /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor = powersave /sys/devices/system/cpu/cpu3/cpufreq/scaling_available_governors = performance powersave /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq = 3100000 [kHz] /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq = 3100000 [kHz] /sys/devices/system/cpu/intel_pstate/min_perf_pct = 25 [%] /sys/devices/system/cpu/intel_pstate/max_perf_pct = 100 [%] /sys/devices/system/cpu/intel_pstate/no_turbo = 0 /sys/devices/system/cpu/intel_pstate/turbo_pct = 50 [%] /sys/devices/system/cpu/intel_pstate/num_pstates = 24
到现在为止还挺好。
有两件事让我注意:
- 如果我再次开始使用我的笔记本电脑,不知道为什么,但有时,
tlp stat -p
再次显示scaling_governor=performance
。 - 为什么
scaling_min_freq
和scaling_max_freq
相等? 我想减少它们,看看我是否能以某种方式控制我所面临的过热问题。
如何避免performance
调控器? 如何调整min
和max
缩放?
谢谢!
卢卡斯
强制调速速度调节器
您正在使用sudo tlp stat -p
来查找速度调节器何时设置为performance
模式。 发生这种情况时,请powersave
以下命令将其重置为powersave
:
$ echo "powersave" | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor powersave
再次运行tlp
statistics并确保最小频率标准化,不再设置为最大频率。
继续运行tlp
以了解tlp
器重置为performance
模式的频率。
继续搜索重置调速器的程序。
作为最后的手段,您可以:
- 设置睡眠过程以每x秒重置一次
powersave
。 - 设置一个程序,每秒监视一次速度调节器,并在它发生变化时重置。
这个答案是针对你的第二个问题:
为什么scaling_min_freq和scaling_max_freq相等? 我想减少它们,看看我是否能以某种方式控制我所面临的过热问题。
我不知道他们是如何设置相同的,但必须要做的事情。 要限制最大CPU频率,使用intel_pstate CPU频率缩放驱动程序时,一种方法是(例如70%):
$ echo 70 | sudo tee /sys/devices/system/cpu/intel_pstate/max_perf_pct
例:
doug@s15:~/temp$ grep . /sys/devices/system/cpu/intel_pstate/* /sys/devices/system/cpu/intel_pstate/max_perf_pct:100 /sys/devices/system/cpu/intel_pstate/min_perf_pct:42 /sys/devices/system/cpu/intel_pstate/no_turbo:0 /sys/devices/system/cpu/intel_pstate/num_pstates:23 /sys/devices/system/cpu/intel_pstate/status:active /sys/devices/system/cpu/intel_pstate/turbo_pct:18 doug@s15:~/temp$ echo 70 | sudo tee /sys/devices/system/cpu/intel_pstate/max_perf_pct 70 doug@s15:~/temp$ grep . /sys/devices/system/cpu/intel_pstate/* /sys/devices/system/cpu/intel_pstate/max_perf_pct:70 /sys/devices/system/cpu/intel_pstate/min_perf_pct:42 /sys/devices/system/cpu/intel_pstate/no_turbo:0 /sys/devices/system/cpu/intel_pstate/num_pstates:23 /sys/devices/system/cpu/intel_pstate/status:active /sys/devices/system/cpu/intel_pstate/turbo_pct:18