本文档以 iMX6UL 为例,简单介绍 cpufreq 的 5 种模式。

在 imx6ul 的 menuconfig 中,进入

CPU Power Management --->

CPU Frequency scaling --->

Default CPUFreq governor (ondemand) --->

中,如下图所示,可以看到有 5 个选项。 这 5 个选项,可以将 cpu 的频率设置为不同的

管理模式,默认设置的是 ondemand 模式。

 

cpufreq 是一个动态调整 cpu 频率的模块,系统启动时会生成

“/sys/devices/system/cpu/cpu0/cpufreq/ ”,如下图所示,是 imx6ul 文件上的

cpufreq 文件夹。

 

以上参数可以通过 cat 命令,例如:

“cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor”可以获取当前

CPU 频率的模式。作者机器当前模式是“ondemand”,也就是动态调频模式。

 

其它参数:

cpuinfo_cur_freq 为当前频率;

cpuinfo_max_freq 为最大频率;

scaling_min_freq 为最小频率;

scalin_governor 为当前模式。

在动态调频模式下,state 下的 time_in_state 可以查询 cpu 整个运行周期中,在不同频

率下运行时间的比例。

以下简单介绍各种模式,用户可以根据需求,在不同模式下运行。

performance 模式:将 CPU 频率固定工作在其支持的最高运行频率上,而不动态调节。

powersave 模式:将 CPU 频率固定在“省电”模式,也就是最低频率。

以上两种,一种是极端效率,一种是极端低功耗。

Userspace 模式:用户可以在用户态调整频率,用户在应用或者在系统启动阶段,可以进

入这种模式,来设置频率。

ondemand 模式:这种模式会依据需求来调整频率,例如 ul 有三种频率:198000、

396000 和 528000,在有大量计算量的情况下,会立即达到最高频率,在运算完成就会立即

回到最低频率。

conservative 模式:和 ondemand 对比,这种模式下,系统会平滑地调整 CPU 频率,

频率的升降是渐变式的,而不是在大量计算到来就立即进入最高频率。

接着可以尝试配置这几种模式,验证一下。

测试 Userspace 模式,使用“echo userspace >

/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor”命令可以进入 Userspace 模

式,这样就可以在用户态调整频率,使用命令“echo 528000 >

/sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed”可以配置为 528000,如下图

所示。

 

测试 powersave 模式,使用命令“echo powersave >

/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor”配置为最低功耗模式。然后

就能发现频率降低到最低。

 

测试 performance 模式,使用命令“echo performance >

/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor”,如下图所示。配置为最高

频率模式,理所当然频率九尾最高 528000 了。

 

测试下 ondemand 动态调频模式,如下图所示,可以使用命令“cat

/sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state”查看各种频率运行占用的时

间长度。作者因为调整过多次频率,528000 看起来比例较高,实际上默认这种系统,不运行

程序,大部分时间都是 198000 频率。

 
 

iTOP-iMX6UL开发板-动态调频技术文档分享的更多相关文章

  1. iTOP-iMX6UL开发板-MiniLinux-CAN测试使用文档

    本文档介绍的是迅为iMX6UL开发板在 MiniLinux 系统环境下 iTOP-iMX6UL CAN 实验调试步骤.给用户提供了“can_libs.rar”.“can_tools.zip”和“can ...

  2. [资料分享]迅为iTOP4412开发板-SDIO WiFi移植文档

    本文转自迅为:http://www.topeetboard.com 概述 近期需要把WiFi无线网络功能移植到iTOP-4412 开发平台,查阅了相关资料,经过一段时间的研究.调试,终于成功的将WiF ...

  3. 技术文档分享_linux中生成考核用的GPT分区表结构修复

    注:历史版本,后期改用python实现了 实验一: 目的:用于生成大量模拟破坏GPT分区结构案例,并生成唯一方式修复后的评判方法.故障:在一个完整的GPT分区磁盘上,丢失了GPT主分区表,或备份分区表 ...

  4. DL动态载入框架技术文档

    DL动态载入框架技术文档 DL技术交流群:215680213 1. Android apk动态载入机制的研究 2. Android apk动态载入机制的研究(二):资源载入和activity生命周期管 ...

  5. 迅为IMX6UL开发板

    迅为iMX6UL开发板采用核心板加底板形式,核心板使用邮票孔方式连接,牢固耐用.处理器ARM®Cortex®-A7内核,运行速度高达528 MHz.512MDDR内存,8G EMMC存储,板截双网口, ...

  6. 迅为-IMX6UL开发板丨双网口丨双CAN总线丨4路USB HOST丨2路串口、6路插座引出,共8路串口丨1路RGB信号丨2路LVDS信号

    迅为iMX6UL开发板多路串口开发平台迅为i.MX 6UL开发板基于ARM Cortex-A7内核,主频高达528 MHz,内存:512MDDR3存储:8G EMMC,支持2路CAN,2路百兆以太网, ...

  7. C# 动态生成word文档 [C#学习笔记3]关于Main(string[ ] args)中args命令行参数 实现DataTables搜索框查询结果高亮显示 二维码神器QRCoder Asp.net MVC 中 CodeFirst 开发模式实例

    C# 动态生成word文档 本文以一个简单的小例子,简述利用C#语言开发word表格相关的知识,仅供学习分享使用,如有不足之处,还请指正. 在工程中引用word的动态库 在项目中,点击项目名称右键-- ...

  8. 程序员如何编写好开发技术文档 如何编写优质的API文档工作

    编写技术文档,是令众多开发者望而生畏的任务之一.它本身是一件费时费力才能做好的工作.可是大多数时候,人们却总是想抄抄捷径,这样做的结果往往非常令人遗憾的,因为优质的技术文档是决定你的项目是否引人关注的 ...

  9. 如何修改开发板主频--迅为iMX6UL开发板

    平台:iMX6UL开发板           iMX6UL开发板 可以在文件系统中通过命令修改 CPU 运行的主频.如下图所示,使用命令“cat /sys/devices/system/cpu/cpu ...

随机推荐

  1. 吴裕雄--天生自然JAVA SPRING框架开发学习笔记:Spring基于Annotation装配Bean

    在 Spring 中,尽管使用 XML 配置文件可以实现 Bean 的装配工作,但如果应用中 Bean 的数量较多,会导致 XML 配置文件过于臃肿,从而给维护和升级带来一定的困难. Java 从 J ...

  2. part5 城市页面列表开发

    1.配置路由 先在router文件夹中,创建一个路由.引入组件 { path: '/city', name: 'HelloCity', component: city, meta: { name: ' ...

  3. pycharm和python安装

    1.pycharm安装:https://www.cnblogs.com/dcpeng/p/9031405.html 2,python安装:https://www.liaoxuefeng.com/wik ...

  4. scala通过尾递归解析提取字段信息

    一.背景 获取数据中以“|”作为字段间的分隔符,但个别字段中数据也是以“|”作为分隔符.因此,在字段提取时需要保护数据完整性. 二.实现 1.数据以“|”分隔,可以采用递归方式迭代解析.通过尾递归方式 ...

  5. sql优化从300秒到7秒

    原始sql select b.jd 街道,b.rglm 楼宇,zzrl 楼宇编号,count(oname) 入楼企业总数, (select count(oname) from ${tablename} ...

  6. Linux环境创建交换分区

    最近在准备在移动端跑一下深度学习训练好的模型,在RK3399的板子上安装scipy时报错.网上查了一下,由于内存不足导致,做个交换分区就搞定了.那么如何做交换分区呢.话不多说,直接开撸. ------ ...

  7. VS2017中使用ReportViewer控件,vs2017找不到Microsoft Rdlc Report Designer for Visual Studio

    VS2017中没有ReportViewer控件,这个控件用来实现在项目中显示和打印关系数据库中的表比较容易,特别是想要打印的时候,这个比用DataGridView和PrintDocument要简单一些 ...

  8. 一维消消乐(DP)

    一维消消乐是一款非常简单的游戏.有n颗珠子排成一排,每一颗珠子有一个价值w(可能是负数). 游戏是这样,你可以选择如若干对相邻的珠子,让他们同时消去.每一对珠子的消失,都会使得总分数加上两颗珠子相乘的 ...

  9. Apache添加ssl支持

    安装证书文件说明:1. 证书文件xxx.pem,包含两段内容,请不要删除任何一段内容.2. 如果是证书系统创建的CSR,还包含:证书私钥文件xxx.key.证书公钥文件public.pem.证书链文件 ...

  10. [Algo] 611. Compress String II

    Given a string, replace adjacent, repeated characters with the character followed by the number of r ...