linux设置cpu频率 echo,调节ODROID

编程入门 行业动态 更新时间:2024-10-24 16:33:18

linux设置cpu<a href=https://www.elefans.com/category/jswz/34/1769829.html style=频率 echo,调节ODROID"/>

linux设置cpu频率 echo,调节ODROID

先提一下背景:我的ODROID-U3(跑的Linux)在用XBMC播放视频的时候,容易因为CPU一直较高负载而吃掉太多电压,导致USB接口供电不足致使移动硬盘“掉线”。今天试验了一下发现把CPU频率从默认的1.7GHz降到1.2GHz之后,移动硬盘没有再掉链子了,而且XBMC依然能流畅播放1080P视频。

懒得安装那些专门调节CPU的工具了,直接上最原始的办法(最原始但也最有效)。理论上对所有Linux发行版、所有架构都一样。

只需一条命令:

su -c "echo 1200000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq"

就把最高频率限制到了1.2GHz了,能够设置的最高频率也可以通过同样简单的一条命令来查看:

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

那为啥四核CPU(ODROID-U3是四核Samsung Exynos 4412)只需要设置一个cpu0的频率就行了呢?因为/sys/devices/system/cpu/cpu0/cpufreq/affected_cpus是0, 1, 2, 3,也就是设置cpu0就会同时影响四个核。我刚刚检查了一下,我的笔电上AMD的四核羿龙CPU的affected_cpus只有自己,cpu0只影响cpu0,cpu1只影响cpu1,以此类推。这种情况下,最好一次把四个核心的频率同时都给调整了,以免频率不同对CPU造成不良影响。

又为了偷懒,随便写了一个简单的bash脚本来干设置CPU频率的活,有兴趣的可以点此从GIST拿走。脚本使用方法很简单:

./setcpu.sh -a 最高频率 -i 最低频率

如果不指定参数,最高频率默认是设置到1.7GHz,最低频率默认设置到CPU允许的最低频率(cpuinfo_min_freq)。执行完成后脚本会将设置生效的最高频率和最低频率打印到终端。

注意:这个脚本只更改cpu0的频率,如果你的affected_cpus不包含全部核心的话,你得修改一下脚本,把每个cpu的scaling_max_freq和scaling_min_freq都变更了。

预计下一篇博客要差不多夏天才会写了吧,最近实在太忙……学业好重,又要准备找工作,又在写书(预告一下,关于Qt5的):/

更多推荐

linux设置cpu频率 echo,调节ODROID

本文发布于:2024-02-06 03:26:07,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1746231.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:频率   cpu   linux   echo   ODROID

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!