systemd管理cpupower

CPU governor是调节处理器Turbo性能的策略,通过以下命令可以查看所有处理器的governor:

cpupower -c all frequency-info

详细的Intel Turbo Boost技术参考 Intel Turbo Boost技术和intel_pstate

手工设置powersave作为目标CPU governor:

sudo cpupower -c all frequency-set -g powersave

systemd和cpupower

RHEL/CentOS 7的systemd提供了cpupower.service配置 - /usr/lib/systemd/system/cpupower.service 内容如下:

[Unit]
Description=Configure CPU power related settings
After=syslog.target

[Service]
Type=oneshot
RemainAfterExit=yes
EnvironmentFile=/etc/sysconfig/cpupower
ExecStart=/usr/bin/cpupower $CPUPOWER_START_OPTS
ExecStop=/usr/bin/cpupower $CPUPOWER_STOP_OPTS

[Install]
WantedBy=multi-user.target

这个systemd启动服务脚本只需要创建一个软链接就可以使用:

上述命令软件了 /etc/systemd/system/multi-user.target.wants/cpupower.service/usr/lib/systemd/system/cpupower.service 的软链接。

然后可以启动服务

启动服务之后,可以通过systemd检查状态

输出显示

配置cpupower

默认的CPU governor配置是performance,这个设置可以从/etc/sysconfig/cpupower环境配置文件得到:

即默认配置下,cpupower.service启动将设置governorperformance,停止时则设置ondemand

详细的调整 CPU governor 以及设置 Intel p-state 方法,请参考 Intel Turbo Boost技术和intel_pstate

参考

Last updated

Was this helpful?