博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android系统 CPU 核数、频率、策略控制
阅读量:4147 次
发布时间:2019-05-25

本文共 4722 字,大约阅读时间需要 15 分钟。

一、/sys/devices/system/cpu 目录

Z91:/sys/devices/system/cpu # ls -allls -alltotal 0drwxr-xr-x 13 root root    0 2018-01-09 11:17 .drwxr-xr-x  6 root root    0 2018-01-09 11:17 ..drwxr-xr-x  5 root root    0 2018-01-09 11:17 cpu0 [查看CPU 核数,频率,策略,频率档位]drwxr-xr-x  5 root root    0 2018-01-10 14:23 cpu1drwxr-xr-x  5 root root    0 2018-01-10 14:23 cpu2drwxr-xr-x  5 root root    0 2018-01-10 14:23 cpu3drwxr-xr-x  3 root root    0 2018-01-09 11:17 cpufreqdrwxr-xr-x  2 root root    0 2018-01-09 11:17 cpuidledrwxr-xr-x  2 root root    0 2018-01-09 11:17 cputopodrwxr-xr-x  2 root root    0 2018-01-09 11:17 eas-r--r--r--  1 root root 4096 2018-01-09 11:17 isolated-r--r--r--  1 root root 4096 2018-01-09 11:17 kernel_max-r--r--r--  1 root root 4096 2018-01-09 11:17 modalias-r--r--r--  1 root root 4096 2018-01-09 11:17 offline-r--r--r--  1 root root 4096 2018-01-09 11:17 online [查看 CPU 当前开核]-r--r--r--  1 root root 4096 2018-01-09 11:17 possibledrwxr-xr-x  2 root root    0 2018-01-09 11:17 power-r--r--r--  1 root root 4096 2018-01-09 11:17 present [查看 CPU 核数]drwxr-xr-x  2 root root    0 2018-01-09 11:17 rq-statsdrwxr-xr-x  2 root root    0 2018-01-09 11:17 sched-rw-r--r--  1 root root 4096 2018-01-09 11:17 uevent

二、查看 CPU 核数、频率、策略

2.1 查看 CPU 核数

adb shell cat /sys/devices/system/cpu/present

Z91:/sys/devices/system/cpu # cat presentcat present0-3

2.2 查看 CPU 当前开核数

adb shell cat /sys/devices/system/cpu/online

Z91:/sys/devices/system/cpu # cat onlinecat online0-3

2.3 查看 CPU 调频档位

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

Z91:/sys/devices/system/cpu/cpu0/cpufreq # cat scaling_available_frequenciescat scaling_available_frequencies1274000 1235000 1196000 1170000 1105000 1053000 1001000 962000 910000 845000 702000 624000 546000 416000 338000 299000

2.4 查看 CPU 当前频率

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

Z91:/sys/devices/system/cpu/cpu0/cpufreq # cat cpuinfo_cur_freqcat cpuinfo_cur_freq299000

2.5 查看 CPU 的支持策略

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

D:\AndroidStudioProject\CpuRun>adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governorsondemand userspace powersave interactive performance sched

2.6 查看 CPU 的运行策略

adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

D:\AndroidStudioProject\CpuRun>adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governorsched

三、设置 CPU 核数、频率、策略

3.1 控制 CPU 核数

3.1.1 开核命令

adb shell “echo 1 > /sys/devices/system/cpu/cpu【index】/online”

adb shell "echo 1 > /sys/devices/system/cpu/cpu1/online"adb shell "echo 1 > /sys/devices/system/cpu/cpu2/online"adb shell "echo 1 > /sys/devices/system/cpu/cpu3/online"

3.1.2 关核命令

adb shell “echo 0 > /sys/devices/system/cpu/cpu【index】/online”

adb shell "echo 0 > /sys/devices/system/cpu/cpu1/online"adb shell "echo 0 > /sys/devices/system/cpu/cpu2/online"adb shell "echo 0 > /sys/devices/system/cpu/cpu3/online"

3.1.3 查询命令

adb shell cat /sys/devices/system/cpu/cpu【index】/online

查看单个adb shell cat /sys/devices/system/cpu/cpu1/onlineadb shell cat /sys/devices/system/cpu/cpu2/onlineadb shell cat /sys/devices/system/cpu/cpu3/online查看全部adb shell cat /sys/devices/system/cpu/present

3.2 控制 CPU 策略

需要事先查看所支持策略类型

adb shell “echo 【governor策略】 > /sys/devices/system/cpu/cpu【index】/cpufreq/scaling_governor”

adb shell "echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"adb shell "echo ondemand > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor"adb shell "echo sched > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor"adb shell "echo interactive > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor"查看修改是否成功adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

3.2 控制 CPU 频率

限制最高频率的阈值或者scaling_setspeed,但是实际设置可能觉得没设置到,其实也是正常的,因为CPU调频和场景相关,比如点开应用和滑动桌面都会频率全开,不受到频率控制,这里走了 CPU 场景调频模式了

adb shell “echo 【频率】 > /sys/devices/system/cpu/cpu【index】/cpufreq/scaling_setspeed”

adb shell “echo 【频率】 > /sys/devices/system/cpu/cpu【index】/cpufreq/cpuinfo_max_freq”

1.查询支持的档位adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies1274000 1235000 1196000 1170000 1105000 1053000 1001000 962000 910000 845000 702000 624000 546000 416000 338000 2990002.查看当前最高频率阈值adb shell "cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq"adb shell "cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed"3.设置最高当前最高频率阈值 scaling_setspeedadb shell "echo 845000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq"adb shell "echo 845000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed"adb shell "echo 1274000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq"4.查看当前频率,验证结果adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq

转载地址:http://focti.baihongyu.com/

你可能感兴趣的文章
Observer模式
查看>>
高性能服务器设计
查看>>
性能扩展问题要趁早
查看>>
MySQL-数据库、数据表结构操作(SQL)
查看>>
OpenLDAP for Windows 安装手册(2.4.26版)
查看>>
图文介绍openLDAP在windows上的安装配置
查看>>
Pentaho BI开源报表系统
查看>>
Pentaho 开发: 在eclipse中构建Pentaho BI Server工程
查看>>
JSP的内置对象及方法
查看>>
android中SharedPreferences的简单例子
查看>>
android中使用TextView来显示某个网址的内容,使用<ScrollView>来生成下拉列表框
查看>>
andorid里关于wifi的分析
查看>>
Spring MVC和Struts2的比较
查看>>
Hibernate和IBatis对比
查看>>
Spring MVC 教程,快速入门,深入分析
查看>>
Android 的source (需安装 git repo)
查看>>
Commit our mod to our own repo server
查看>>
LOCAL_PRELINK_MODULE和prelink-linux-arm.map
查看>>
Simple Guide to use the gdb tool in Android environment
查看>>
Netconsole to capture the log
查看>>