查看、设置CPU工作频率的命令

本文介绍了如何在Linux系统中查看和设置CPU的工作频率,包括使用cat命令查看当前、最大、最小频率,以及可用频率和变频策略。还讲解了如何使用userspace模式手动设置工作频率,并验证设置是否生效。深入了解可参考Linux的cpufreq子系统。
部署运行你感兴趣的模型镜像

之前遇到过功耗问题,朝着CPU工作频率方向思考,发现功耗过高的原因:

为了性能让程序跑在大核上

 

以下为查看、设置cpu动态工作频率的命令:

查看cpu0的当前工作频率:

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

查看cpu0的最大工作频率:

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

查看cpu0的最小工作频率:

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

查看cpu0可以支持的工作频率:

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

查看cpu0当前设置的工作频率值:

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

查看cpu0当前最大可达到的工作频率值:

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

查看cpu0当前最小可达到的工作频率值:

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

查看cpu0调节工作频率可用的变频策略:

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

工作频率可用的策略有以下几种:

  • conservative
  • ondemand        //计算量任务快速动态调整CPU频率在设定的最低频率与最高频率之间切换
  • userspace        //用户自定义模式(用户态应用通过相应接口决策cpu工作频率)
  • powersave       //节能模式,以cpu当前可达到的最低频率进行工作
  • performance    //性能模式,以cpu当前可达到的最高频率进行工作
  • schedutil

手动设置频率

echo "userspace" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

echo (cpu可选的工作频率) > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed

查看设定是否生效:

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

以上仅仅是尝试分析功耗问题时,手动设置cpu工作频率的相关命令;

若要深入理解,应当学习“Linux 的cpufreq子系统”;

 

参考:https://www.kernel.org/doc/html/latest/cpu-freq/cpufreq-stats.html?highlight=cpufreq#introduction

 

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

<think> 嗯,用户想了解在飞腾CPU查看CPU频率命令,这应该是个运维或开发人员在使用麒麟系统时需要监控硬件性能。让我仔细看看用户提供的引用材料。 引用[1]给了关键信息,麒麟系统查看飞腾CPU频率有三个方法:cpupower命令、直接读取sys文件、watch实时监控。引用[3]补充了通过dmidecode看内存频率间接判断的方法,引用[4]提到飞腾腾云S5000C的具体参数,引用[5]则是体系结构信息。用户明确需要的是"查看频率命令",所以重点应该放在操作层面的指导上。 注意到用户之前可能已经查询过飞腾CPU信息,这次是聚焦在频率监控这个具体操作上。需要强调命令的实用性:优先推荐cpupower这个标准工具,因为它直接显示所有核心信息且格式友好;sys文件方案适合脚本调用;watch命令对实时监控很实用。dmidecode虽然能间接判断,但不如直接读频率准确。 安全方面要提醒用户权限问题,这些命令都需要root。另外引用[4]提到飞腾处理器支持2.8GHz高频,但实际运行频率可能因负载动态调整,需要解释scaling_cur_freq和cpuinfo_max_freq的区别。 用户可能还想知道物理核心与逻辑核心的关系,不过当前问题集中在频率查看,体系结构部分引用[5]的内容暂时不需要展开。最后考虑生成相关问题时,要覆盖性能监控工具链和调优方向,比如如何结合top看负载曲线就很实用。 </think> 根据提供的引用内容,在飞腾CPU查看CPU频率命令如下(基于麒麟系统): ### 一、查看实时频率的方法 1. **使用 `cpupower` 工具** ```bash cpupower frequency-info ``` *输出示例:* ``` current CPU frequency: 2.2 GHz (asserted by call to kernel) ``` 2. **直接读取系统文件** - 查看 **CPU0** 的当前频率: ```bash cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq ``` - 查看所有核心的当前频率: ```bash cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq ``` 3. **实时动态监控(每1秒刷新)** ```bash watch -n 1 "cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq" ``` --- ### 二、查看最大频率/设计参数 1. **通过内存频率间接判断(引用[3])** ```bash dmidecode -t processor | grep 'Max Speed' ``` *输出示例(飞腾腾云S5000C):* ``` Max Speed: 2800 MHz # 主频2.8GHz [^4] ``` 2. **查看CPU型号信息** ```bash lscpu 或 cat /proc/cpuinfo ``` *输出关键字段:* ``` Model name: Phytium, ... # 飞腾处理器标识 CPU max MHz: 2800.0000 # 最大频率值 ``` --- ### 三、补充说明 1. **权限要求** 上述命令需 `root` 权限执行(`sudo` 前缀或切换到root用户)。 2. **文件路径含义** - `scaling_cur_freq`:**当前实时频率**(动态调整值) - `cpuinfo_max_freq`:**硬件支持的最大频率**(固定值) ```bash cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq ``` --- ### 相关问题 1. 如何监控飞腾CPU的实时温度? 2. 麒麟系统下如何调整飞腾CPU的性能模式? 3. 飞腾腾云S5000C相比Intel至强处理器的性能差距具体在哪些场景?[^4] 4. 飞腾CPU的 `cpupower` 工具支持哪些高级调控参数? > 注:飞腾CPU频率管理机制与x86架构相似,均通过 **DVFS(动态电压频率调整)** 实现能效优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值