您的位置:首页 > 移动开发 > Android开发

MTK平台配置多核cpu oneline和gpu freq提升系统性能

2018-01-15 12:22 1366 查看
硬件平台:MT6797

软件平台:Android 6.0

今日在调整系统跑分性能,我们的板子用的MT6797,板子起来之后,通过adb命令行,查看cpu的状态,因为是十核,因此写了一个精悍的小脚本获取各cpu状态:

#!/system/bin/sh

#echo "1" > /sys/devices/system/cpu/cpu6/online

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

#echo "1391000" > /sys/devices/system/cpu/cpu6/cpufreq/scaling_setspeed

CPU_PATH=/sys/class/thermal

CPU_FREQ_BASE=/sys/devices/system/cpu

echo "#####################################"

for i in `seq 11`

do

    ((i=$i-1))

    echo "Cpu$i's Temp is: `cat $CPU_PATH/thermal_zone$i/temp`"

    online=`cat $CPU_FREQ_BASE/cpu$i/online`

    if [ $online = "1" ];then

        echo "Cpu$i's Freq is: `cat $CPU_FREQ_BASE/cpu$i/cpufreq/scaling_cur_freq`"

    else

        echo "Cpu$i is OFF"

    fi  

    echo -e "\r"

done

echo "#####################################"

push到system/bin目录,运行结果如下:

root@aeon6797_6c_m:/ # cpu_stat.sh                                             

#####################################

Cpu0's Temp is: 30000

Cpu0's Freq is: 715000

Cpu1's Temp is: 32500

Cpu1's Freq is: 715000

Cpu2's Temp is: -127000

Cpu2's Freq is: 715000

Cpu3's Temp is: 26123

Cpu3's Freq is: 715000

Cpu4's Temp is: 60000

Cpu4's Freq is: 1846000

Cpu5's Temp is: 1

Cpu5 is OFF

Cpu6's Temp is: 29000

Cpu6 is OFF

Cpu7's Temp is: 32000

Cpu7 is OFF

Cpu8's Temp is: 31300

Cpu8 is OFF

Cpu9's Temp is: 34300

Cpu9 is OFF

Cpu10's Temp is: 27700

/system/bin/cpu_stat.sh[19]: cat: /sys/devices/system/cpu/cpu10/online: No such file or directory

/system/bin/cpu_stat.sh[19]: [: 1: unexpected operator/operand

Cpu10 is OFF

#####################################

可以看到cpu0~4处于online态,后边都是offline态,通过一个设置状态的脚本把后边五个开启:

cpuset.sh如下:

#!/system/bin/sh

echo "================cpu set=================="

# 0~3 max:1391000

# 4~7 max:1846000

# 8~9 max:2314000

for i in `seq 10`

do

    ((i=$i-1))

#   ((j=$i+4))

    echo "performance" > /sys/devices/system/cpu/cpu$i/cpufreq/scaling_governor

    if [ $i -ge "4" ] && [ $i -le "7" ]; then

        echo "1846000" > /sys/devices/system/cpu/cpu$i/cpufreq/scaling_setspeed

        echo "1" > /sys/devices/system/cpu/cpu$i/online

    elif [ $i -le "3" ]; then

        echo "1391000" > /sys/devices/system/cpu/cpu$i/cpufreq/scaling_setspeed

    else

        echo "2314000" > /sys/devices/system/cpu/cpu$i/cpufreq/scaling_setspeed

        echo "1" > /sys/devices/system/cpu/cpu$i/online

    fi  

done

echo "================set finish================"

执行完成之后,再用第一个脚本查看结果:

root@aeon6797_6c_m:/ # cpu_stat.sh                                             

#####################################

Cpu0's Temp is: 30000

Cpu0's Freq is: 1391000

Cpu1's Temp is: 35600

Cpu1's Freq is: 1391000

Cpu2's Temp is: -127000

Cpu2's Freq is: 1391000

Cpu3's Temp is: 28626

Cpu3's Freq is: 1391000

Cpu4's Temp is: 60000

Cpu4's Freq is: 1846000

Cpu5's Temp is: 2

Cpu5's Freq is: 1846000

Cpu6's Temp is: 0

Cpu6's Freq is: 1846000

Cpu7's Temp is: 15000

Cpu7's Freq is: 1846000

Cpu8's Temp is: 42500

Cpu8's Freq is: 2314000

Cpu9's Temp is: 38000

Cpu9's Freq is: 2314000

Cpu10's Temp is: 30300

/system/bin/cpu_stat.sh[19]: cat: /sys/devices/system/cpu/cpu10/online: No such file or directory

/system/bin/cpu_stat.sh[19]: [: 1: unexpected operator/operand

Cpu10 is OFF

#####################################

可以看到cpu很雄壮的开始跑了。

GPU 频率控制相关部分稍后奉上。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息