查內存 adb shell dumpsys meminfo查CPU top -m 10打開 system_monitor adb shell am start -n eu.chainfire.perfmon/.LaunchActivity設置CPU的核心數 在/sys/devices/system/cpu目錄下可以看到你的CPU有幾個核心,如果是雙核,就是cpu0和cpu1,如果是四核,還會加上cpu2和cpu3。 隨便進一個文件夾,比如cpu1,里面有個online文件。我們可以用cat命令查看該文件的內容: cat /sys/devices/system/cpu/cpu1/online 這個文件只有一個數字,0或1。0表示該核心是offline狀態的,1表示該核心是online狀態的。所以,如果你想關閉這個核心, 就把online文件的內容改為“0”;如果想打開該核心,就把文件內容改為“1”。 echo "0" > /sys/devices/system/cpu/cpu0/online # 關閉該CPU核心 echo "1" > /sys/devices/system/cpu/cpu0/online # 打開該CPU核心設置CPU的模式 首先我們要修改governor的模式,但在修改前需要查下CPU支持哪些governor的模式 cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors 我用的是Nexus 4手機,所以有以下5個選擇,其他的手機型號可能略有不同 conservative ondemand userspace powersave interactive performance 關于這些模式,具體解釋如下: ondemand:系統默認的超頻模式,按需調節,內核提供的功能,不是很強大,但有效實現了動態頻率調節,平時以低速方式運行,當系統負載提高時候自動提高頻率。以這種模式運行不會因為降頻造成性能降低,同時也能節約電能和降低溫度。一般官方內核,還有CM7的默認的方式都是ondemand。流暢度: 一般,流暢 interactive:交互模式,直接上最高頻率,然后看CPU負荷慢慢降低,比較耗電。 流暢度: 最高,極流暢 Interactive 是以 CPU 排程數量而調整頻率,從而實現省電。InteractiveX 是以 CPU 負載來調整 CPU 頻率,不會過度把頻率調低。所以比 Interactive 反應好些,但是省電的效果一般 performance:性能模式!只有最高頻率,從來不考慮消耗的電量,性能沒得說,但是耗電量.......流暢度:還需要說么?還有比這種模式更流暢的嗎? conservative:保守模式,類似于ondemand,但調整相對較緩,想省電就用他吧。Google官方內核,kang內核默認模式。 流暢度: 高,流暢 smartass:聰明模式,是I和C模式的升級,該模式在比i模式不差的響應的前提下會做到了更加省電流暢度: 最高,流暢 powersave 省電模式,通常以最低頻率運行,打不死我也不用。流暢度: 極低 userspace:用戶自定義模式,系統將變頻策略的決策權交給了用戶態應用程序,并提供了相應的接口供用戶態應用程序調節CPU 運行頻率使用。也就是長期以來都在用的那個模式。可以通過手動編輯配置文件進行配置流暢度:根據設置而定 Hotplug:類似于ondemand, 但是cpu會在關屏下嘗試關掉一個cpu,并且帶有deep sleep,比較省電。流暢度:一般,流暢 在這里,我們將模式調整為performance。 echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor echo interactive > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor MTK8163: ondemand userspace powersave interactive performance設置CPU的頻率 CPU的頻率不是可以任意設置的,需要查看scaling_available_frequencies文件,看CPU支持哪些頻率。 cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies 1300000 1216000 1133000 1050000 871000 741000 624000 600000這里的頻率是以KHz為單位的,我準備將cpu0設置為1.416GHz,那就將1416000寫入scaling_setspeed即可。echo 1300000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed echo 1216000 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_setspeed echo 1216000 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_setspeed echo 1216000 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_setspeed設置好后,我們可以通過scaling_cur_freq文件查看當前這個核心的頻率 cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_cur_freq cat /sys/devices/system/cpu/cpu2/cpufreq/scaling_cur_freq cat /sys/devices/system/cpu/cpu3/cpufreq/scaling_cur_freq最后我們也可以設置下CPU的最大和最小頻率,只需要將需要設置的頻率值寫入scaling_max_freq和scaling_min_freq即可echo 1300000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq # 設置最大頻率 echo 1133000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq # 設置最小頻率 這里要注意的是最大值需要大于等于最小值。adb shell "echo 0 > /proc/hps/enabled" adb shell "echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor" adb shell "echo 1 > /sys/devices/system/cpu/cpu0/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"