可以读下红帽的说明文档以获取更全面和准确的信息。
Table of Contents
CPUfreq
CPU的运行频率是可以调节的,在工作负载低的时候可以通过降低CPU运行频率,达到节能、减少CPU发热的目的。CPUfreq大概就是用来设置CPU运行频率的?
CPU speed governer的概念
CPU speed governer就是用来设定CPU应该如何动态调整运行频率。CPU speed governer有以下可选类型:
- powersave
强制CPU以最低频率运行,该最低频率是静态值,一经设定不再改变。该策略最省电,但是在cpu负载高的时候,其耗电却可能反而高于让CPU以更高频率运行。 - performance
总是让CPU以最高频率运行,该最高频率是静态值,一经设定不再改变。 - ondemand
根据系统负载让CPU运行频率在最高和最低两个频率之间切换(要么选最高,要么选最低)。缺点是这个频率切换会有滞后性(latency)。 - userspace 允许用户程序来设置CPU运行频率。
- conservative 类似ondemand,但是更平滑,根据系统负载选择系统需要的CPU运行频率,不像ondemand只有两个选择,缺点是其滞后性比ondemand更严重。
CPU speed governor的设置
安装CPUfreq驱动,Ubuntu貌似默认带了这个,不需要装。
ls /lib/modules/[kernel version]/kernel/arch/[architecture]/kernel/cpu/cpufreq/
如果需要安装且同时有acpi-cpufreq和p4-clockmod两种驱动,优先安装acpi-cpufreq,因为p4-clockmod只会降频,不能降电压。
查看当前的governor类型:
cpupower frequency-info
查看可用的governor类型:
cpupower frequency-info --governors
可能系统没有提供想要的governor类型,此时需要安装内核模块添加需要的governor类型。内涵模块位于/lib/modules/[kernel version]/kernel/drivers/cpufreq/。
设置governor类型:
cpupower frequency-set --governor [governor]
如果用不了cpupower命令,那么可以通过读写/sys/devices/system/cpu/[cpuid]/cpufreq/里的文件来获取相关信息和修改相关设置。
几个查看cpu信息的命令
cat /proc/cpuinfo
lscpu
lstopo
i7z
近期评论