PVE环境下CPU等设备的省电调整

安装依赖

安装 cpupower

apt update && apt install linux-cpupower powertop -y

查看当前电源状态

# 查看当前进程耗电情况
# 进入后按 <TAB> 键可以切换选项卡
powertop

# 查看支持的 CPU 电源模式
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors

# 查看当前的 CPU 电源模式
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

不同调速器的主要区别如下:

  1. conservative:在节能和性能之间取得平衡,CPU频率随负载逐步增加或减少,适合不需要快速频率切换的应用。通常用于需要相对稳定但低功耗的环境。
  2. ondemand:根据当前CPU负载动态调整频率,负载高时迅速升频,负载低时迅速降频。适合负载波动较大的任务,节省功耗的同时保证性能。
  3. userspace:允许用户或应用程序通过手动方式设置CPU频率。需要用户提供额外的控制程序,适合希望精确控制CPU频率的场景,但需一定技术背景来调整。
  4. powersave:将CPU频率锁定在最低值,最大限度节约电量。适合极度节电的应用,但在性能需求较高时可能会导致卡顿或延迟。
  5. performance:将CPU频率固定在最高值,提供最佳性能,不考虑功耗。适合需要持久高性能的应用,但功耗相对较高。
  6. schedutil:是结合了调度器和调频器的方案,基于内核调度决定CPU频率变化。它在保持性能的同时更高效地节约电量,适合更现代的设备和多线程应用。

每种调速器都有其特定的适用场景,选择时可根据需求侧重性能、节能或手动控制等方面。

在省电需求下,powersave最节能,conservative适合省电且保持一定响应性,而schedutil则适合复杂负载和省电之间的智能调节。

常用命令

# CPU实时频率查看
watch -n 1 cpupower monitor

# 查看当前所有CPU的信息
cpupower -c all frequency-info

# 设置所有CPU为节能模式
cpupower -c all frequency-set -g powersave

# 设置所有CPU为性能模式
cpupower -c all frequency-set -g performance

参考与鸣谢

https://pve.sqlsec.com/4/6/
https://foxi.buduanwang.vip/virtualization/pve/bestpractice/3031.html/

本文链接:

https://blog.nkxingxh.top/archives/487/
1 + 6 =
快来做第一个评论的人吧~