一条命令让Linux机器省电一半,常见Linux系统之cpupower

2025-05-26 41 2

简介

  cpupower命令的功能是用于调整CPU主频参数,Linux系统内核支持根据使用场景来通过调节CPU主频参数来提高计算性能或降低功耗。 对于移动设备来讲,在没有接通电源的时候,续航是很重要的。而服务器是一直接着电源的,而且需要性能很强,此时就应禁止CPU休眠功能,并把CPU主频固定到最高值了。

语法格式:cpupower [参数] [对象]

# 查看命令帮助信息
[Thu Jan 11 08:40:40 root@localhost ~ ]# cpupower 
Usage:    cpupower [-d|--debug] [-c|--cpu cpulist ] <command> [<args>]
Supported commands are:
    frequency-info
    frequency-set
    idle-info
    idle-set
    set
    info
    monitor
    help

Not all commands can make use of the -c cpulist option.

Use 'cpupower help <command>' for getting help for above commands.

查看当前CPU的全部主频信息

cpupower -c all frequency-info      # 查看所有CPU信息
cpupower -c 0 frequency-info        #查看CPU0的信息
cpupower -c 1 frequency-info        #查看CPU1的信息
cpupower -c 2 frequency-info        #查看CPU2的信息

设置当前CPU为性能模式

cpupower -c all frequency-set -g performance
  • performance:将CPU频率固定工作在其支持的最高运行频率上,不动态调节,可以获取到最大的性能。
  • powersave: 将 CPU 频率设置为最低的所谓 “省电” 模式,CPU 会固定工作在其支持的最低运行频率上。
  • 因此这两种 governors 都属于静态 governor,即在使用它们时 CPU 的运行频率不会根据系统运行时负载的变化动态作出调整。
  • 这两种 governors 对应的是两种极端的应用场景,使用 performance governor 是对系统高性能的最大追求,而使用 powersave governor 则是对系统低功耗的最大追求。
  • userspace:最早的 cpufreq 子系统通过 userspace governor 为用户提供了这种灵活性。
  • 系统将变频策略的决策权交给了用户态应用程序,并提供了相应的接口供用户态应用程序调节 CPU 运行频率使用。
  • ondemand:按需快速动态调整 CPU 频率, 一有 cpu 计算量的任务,就会立即达到最大频率运行,等执行完毕就立即回到最低频率;
  • ondemand:userspace 是内核态的检测,用户态调整,效率低。
  • conservative: 与 ondemand 不同,平滑地调整 CPU 频率,频率的升降是渐变式的, 会自动在频率上下限调整,和 ondemand 的区别在于它会按需分配频率,而不是一味追求最高频率;

设置CPU频率

cpupower -c all frequency-set -f 2.4GHz

设置CPU最小频率

cpupower -c all frequency-set -d 2.4GHz

设置CPU最大频率

cpupower -c all frequency-set -u 2.4GHz

查看CPU实时频率

  • 用 monitor 子命令可以报告处理器拓扑,以及监视特定时间段内的频率和空闲电源状态统计。默认间隔为 1 秒,但可以使用 -i 来更改。工具中实施有独立的处理器休眠状态和频率计数器 — 其中一些可从内核统计中检索,另一些可从硬件寄存器中读取。可用的监视器取决于底层硬件和系统。使用 cpupower monitor -l 可以列出这些监视器
cpupower monitor

显示 CPU idle 驱动程序的可用空闲状态和其他统计信息

cpupower idle-info
  • 使用 cpupower idle-info 找出支持的处理器空闲状态后,可以使用 cpupower idle-set 命令禁用单个状态。通常,用户希望禁用最深度的休眠状态,例如:
cpupower idle-set -d 5
  • 或者,禁用延迟等于或高于 80 的所有 CPU:
cpupower idle-set -D 80
  • 启用所有的idle-sate
cpupower --cpu 15 idle-set --enable-all
  • 禁用 POLL 
cpupower --cpu 15 idle-set --disable POLL
cpupower -c 15 frequency-info 

设置/查看处理器电源硬件配置

# cpupower set 命令设置处理器节能策略
cpupower set --perf-bias 5
# 使用 --perf-bias 选项,您可以在支持的 Intel 处理器上启用软件来确定最优性能并节省功率。分配的值范围从 0 到 15,其中 0 是最优性能,15 是最佳节能。默认情况下,--perf-bias 选项适用于所有内核。要将它应用到各个内核,请添加 --cpu cpulist 选项。

# 显示处理器电源和相关硬件配置
cpupower info

查看当前CPU可用策略

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors

查看CPU当前生效策略

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

查看CPU当前频率

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq

您的订阅点赞分享充电打赏(三连投币分享)是对老高最大的支持和鼓励!看完片子,加爱折腾的群和讨论组:https://diyforfun.565856.xyz/ 欢迎您加入和有着共同折腾爱好的朋友们一起:折腾的开心!开心的折腾!

相关文章

[22分钟纯享]博通永久免费版ESXi的All in One 飞牛直通核显硬解转码新手小白教程来啦!
MacminiM4绝配?双DP+双M2+开机键,阿卡西斯Macmini M4扩展底座M00Pro深度拆解全面测评
是迷你电脑 or NAS?天钡WTR Pro Ryzen R7 5825U迷你电脑NAS深度测评
MacminiM4黄金搭档喜加一,移速Macmini M4扩展坞硬盘体验测试
显卡坞的颜值担当内置700W铂金电源~妙联蜂鸟MAX S显卡坞新品体验
高带宽/真色彩/低延迟~阿卡西斯4K RGB 雷电/USB4视频采集卡深度全面测评

评论(2)

  1. 请问老高研究过链路聚合吗?
    unraid有两个2.5G网口,win11是万兆网口
    我用网管交换机设置了静态聚合, unraid设置了bond0
    从unraid传到win11能跑满5Gbps,但是win11传unraid就只有一个网口工作只有2.5Gbps
    请问如何做到双向5Gbps的速度?

    1. @xyz星人 原来玩过傻瓜交换机多通道SMB,需要2条线,2个网卡(PC和NAS都需要),交换机4个网口。是可以双向5G的,等于一份数据,它均衡分为2份,每条线路跑1份。这样叠加起来是5G。但是本质上每条线路还是2.5G。我觉得你如果PC有2个网口才能回程跑到NAS 2.5+2.5Gbps。

发布评论