如何获得当前的 CPUPower 调控器

use*_*482 21 linux power-management

我想获得当前的 CPUPower 调控器。

当我打字时,cpupower frequency-info我会得到很多信息。我只想让调控器,就像没有更多信息的“按需”一样,在程序中使用它的价值。

Mar*_*rco 35

当前的州长可以通过以下方式获得:

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
Run Code Online (Sandbox Code Playgroud)

请注意,cpu* 将为您提供所有内核的缩放调节器,而不仅仅是 cpu0。

不过,此解决方案可能取决于系统。我不是 100% 确定这是便携式的。


小智 5

在我的 Ryzen 7 系统上的最新 Fedora 版本(26 alpha)中,我这样做了:

Fedora 26 alpha 没有安装 cpupower - 所以获取它:

dnf install kernel-tools
Run Code Online (Sandbox Code Playgroud)

此安装/etc/sysconfig/cpupower应默认设置性能级别(如果您想要不同的级别,请编辑第一行):

CPUPOWER_START_OPTS="frequency-set -g performance"
CPUPOWER_STOP_OPTS="frequency-set -g ondemand"
Run Code Online (Sandbox Code Playgroud)

现在是关键位 - 启用并启动 cpupower 服务

systemctl enable --now cpupower
Run Code Online (Sandbox Code Playgroud)

确认性能级别已设置:

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
Run Code Online (Sandbox Code Playgroud)

重新启动并重复该cat命令以确认性能仍然正常