linux CPU主频设置

news/2024/10/31 1:33:57/

文章目录

    • CPU主频相关信息
    • 修改模式为 ondemand
    • 添加新频率696MHz

CPU主频相关信息

root@am335x-evm:/sys/devices/system/cpu/cpu0/cpufreq# ls
affected_cpus                  scaling_cur_freq
cpuinfo_cur_freq               scaling_driver
cpuinfo_max_freq               scaling_governor
cpuinfo_min_freq               scaling_max_freq
cpuinfo_transition_latency     scaling_min_freq
related_cpus                   scaling_setspeed
scaling_available_frequencies  stats
scaling_available_governors
  • cpuinfo_cur_freq:当前 cpu 工作频率,从 CPU 寄存器读取到的工作频率。
    cpuinfo_max_freq:处理器所能运行的最高工作频率(单位: KHz)。
    cpuinfo_min_freq :处理器所能运行的最低工作频率(单位: KHz)。
    cpuinfo_transition_latency:处理器切换频率所需要的时间(单位:ns)。
    scaling_available_frequencies:处理器支持的主频率列表(单位: KHz)。
    scaling_available_governors:当前内核中支持的所有 governor(调频)类型。
    scaling_cur_freq:保存着 cpufreq 模块缓存的当前 CPU 频率,不会对 CPU 硬件寄存器进
    行检查。
    scaling_driver:该文件保存当前 CPU 所使用的调频驱动。
    scaling_governor: governor(调频)策略, Linux 内核一共有 5 中调频策略:
    ①、 Performance,最高性能,直接用最高频率,不考虑耗电
    ②、 Interactive,一开始直接用最高频率,然后根据 CPU 负载慢慢降低。
    ③、 Powersave,省电模式,通常以最低频率运行,系统性能会受影响,一般不会用这个!
    ④、 Userspace,可以在用户空间手动调节频率。
    ⑤、 Ondemand,定时检查负载,然后根据负载来调节频率。负载低的时候降低 CPU 频率,这样省电,负载高的时候提高 CPU 频率,增加性能.
root@ATK-IMX6U:~# cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
792000
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
198000 396000 528000 792000
root@ATK-IMX6U:~# cat /proc/cpuinfo
processor       : 0
model name      : ARMv7 Processor rev 5 (v7l)
BogoMIPS        : 12.00
Features        : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x0
CPU part        : 0xc07
CPU revision    : 5Hardware        : Freescale i.MX6 Ultralite (Device Tree)
Revision        : 0000
Serial          : 0000000000000000

BogoMIPS 为 12.00,处理器性能越强,主频越高,BogoMIPS 值就越大。

查看内核中的主频属性设置

CPU Power Management-> CPU Frequency scaling-> CPU Frequency scaling-> Default CPUFreq governor

在这里插入图片描述
但是在以后的实际产品开发中,从省电的角度考虑,建议使用 ondemand 模式,一来可以省电,二来可以减少发热。

修改模式为 ondemand

在这里插入图片描述

编译后zImage ,启动后查看参数

root@ATK-IMX6U:~# cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
528000

当前频率降低了,为528M

root@ATK-IMX6U:~# cat /proc/cpuinfo
processor       : 0
model name      : ARMv7 Processor rev 5 (v7l)
BogoMIPS        : 6.00
Features        : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x0
CPU part        : 0xc07
CPU revision    : 5Hardware        : Freescale i.MX6 Ultralite (Device Tree)
Revision        : 0000
Serial          : 0000000000000000

BogoMIPS 数值变小了

添加新频率696MHz

修改方法 设备树文件 arch/arm/boot/dts/imx6ull.dtsi

        cpus {#address-cells = <1>;#size-cells = <0>;cpu0: cpu@0 {compatible = "arm,cortex-a7";device_type = "cpu";reg = <0>;clock-latency = <61036>; /* two CLK32 periods */operating-points = </* kHz  uV */996000  1275000792000  1225000528000  1175000396000  1025000198000  950000>;fsl,soc-operating-points = </* KHz  uV */996000  1175000792000  1175000528000  1175000396000  1175000198000  1175000>;

加入针对 696MHz 的支持

cpus {#address-cells = <1>;#size-cells = <0>;cpu0: cpu@0 {compatible = "arm,cortex-a7";device_type = "cpu";reg = <0>;clock-latency = <61036>; /* two CLK32 periods */operating-points = </* kHz  uV */996000  1275000792000  1225000696000 1175000528000  1175000396000  1025000198000  950000>;fsl,soc-operating-points = </* KHz  uV */996000  1175000792000  1175000696000 1175000528000  1175000396000  1175000198000  1175000>;
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-  dtbs

编译完成以后使用新的设备 树 文 件 imx6ull-alientek_emmc.dtb 启 动 Linux

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
198000 396000 528000 696000 792000

选项中有696M频率


http://www.ppmy.cn/news/275233.html

相关文章

什么是主频

主频也叫时钟频率&#xff0c;单位是MHz&#xff0c;用来表示CPU的运算速度。CPU的主频&#xff1d;外频倍频系数。很多人认为主频就决定着CPU的运行速度&#xff0c;这不仅是个片面的&#xff0c;而且对于服务器来讲&#xff0c;这个认识也出现了偏差。至今&#xff0c;没有一…

计算机处理器的CPU主频与指令条数

我是一名软件工程师&#xff0c;经常有人问一些CPU的概念&#xff08;主频、指令&#xff09;。今天我开一篇文章&#xff0c;用通俗易懂的语言把基本的概念给大家解释清楚。 古有水风车自动碾磨谷物、提水灌溉——水流驱动 今有振荡器自动启动设备、运行程序——电能驱动 时…

CPU性能衡量参数-主频,MIPS,CPI,时钟周期,机器周期,指令周期

CPU性能衡量参数-主频&#xff0c;MIPS&#xff0c;CPI&#xff0c;时钟周期&#xff0c;机器周期&#xff0c;指令周期 1&#xff0c;主频 主频 时钟频率&#xff0c;它是指CPU内部晶振的频率&#xff0c;常用单位为MHz&#xff0c;它反映了CPU的基本工作节拍; 时钟频率又…

CPU时钟周期、主频、CPI、MIPS

主频 理解&#xff1a;主频是机器内部主时钟的频率&#xff0c;主频越高&#xff0c;完成指令的一个执行步骤所用的时间就越短&#xff0c;速度越快。比如跳绳&#xff0c;跳的越快&#xff08;即频率越高&#xff09;&#xff0c;那么完成一次所用的时间就越短。 单位&#x…

如何理解时钟周期及公式CPU执行时间 = CPU时钟周期数/主频

因为用OneNote制作的&#xff0c;公式复制不过来太麻烦&#xff0c;直接截图了。 下面看一下时钟周期的定义&#xff1a; CPU时钟周期&#xff1a;通常为节拍脉冲或T周期&#xff0c;即主频的倒数&#xff0c;它是CPU中最小的时间单位&#xff0c;每个动作至少需要一个时钟周期…

定时任务 Cron 表达式,了解一下?

一、概述 Cron表达式是一种广泛应用于Linux系统的时间表示格式&#xff0c;常用于定时任务的调度。Cron表达式可以通过指定不同的时间参数&#xff0c;描述一个在未来某个时间点执行的任务。 Spring框架也提供了相关支持基于Scheduled注解&#xff0c;我们可以通过Cron表达式…

CPU性能由主频决定吗?

关注星标公众号&#xff0c;不错过精彩内容 编排 | strongerHuang 微信公众号 | 嵌入式专栏 问&#xff1a;CPU性能由主频决定吗&#xff1f; 答&#xff1a;CPU主频只是决定其性能的因素之一&#xff0c;但不是唯一因素。 比如&#xff1a;你40M的51单片机&#xff0c;性能是比…

CPU主频的理解

以CPU主频4.2GHZ为例&#xff0c;主频代表的是时钟频率&#xff0c;也就是cpu的工作频率。主频的倒数指的是时钟周期。通常CPU完成一条指令的执行需要多个操作&#xff0c;取指&#xff0c;执行指令。每个操作可能需要若干个时钟周期。简单来说就是CPU主频高&#xff0c;时期周…