高通msm8994手动提升性能脚本
- stop thermald
- stop mpdecision
- stop thermal-engine
- # online A57
- echo 1 > /sys/devices/system/cpu/cpu2/online
- echo 1 > /sys/devices/system/cpu/cpu3/online
- echo 1 > /sys/devices/system/cpu/cpu4/online
- echo 1 > /sys/devices/system/cpu/cpu5/online
- echo 1 > /sys/devices/system/cpu/cpu6/online
- echo 1 > /sys/devices/system/cpu/cpu7/online
- # set governor
- echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
- echo performance > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor
- # set max freq
- echo 1555200 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
- echo 1958400 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq
- # set gpu
- echo performance > /sys/class/kgsl/kgsl-3d0/devfreq/governor
- echo 0 > /sys/class/kgsl/kgsl-3d0/min_pwrlevel
- echo performance > /sys/class/devfreq/qcom,cpubw.32/governor
- echo performance > /sys/class/devfreq/qcom,gpubw.71/governor
- echo performance > /sys/class/devfreq/qcom,kgsl-busmon.70/governor
cpu0会一直在线,因此不用手动online。
8994的cpu频率是按簇调整的,因此只需要设置cpu0和cpu4的performance。
拉起来的瞬间可能会触发bcl的调频和拔核动作,全部拉起来后可能温度过高导致thermal降频及拔核。
另外,vendor/qcom/proprietary/Android-perf/core-ctl/core_ctl.c的某些代码可能会引起拉核失败或者拉上来后又被这个模块给down了,需要做如下修改:
将753行cpu_callback()的CPU_UP_PREPARE分支里的如下判断改成if(0),这可以防止拉核失败:
将该文件try_hotplug()函数里的do_hotplug()取消掉,可以防止该模块又把拉上来的cpu给offline了。
不过如此修改代码后,需要手动降低性能:
- #offline A57
- echo 0 > /sys/devices/system/cpu/cpu4/online
- echo 0 > /sys/devices/system/cpu/cpu5/online
- echo 0 > /sys/devices/system/cpu/cpu6/online
- echo 0 > /sys/devices/system/cpu/cpu7/online
- # down max freq
- echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
- echo simple_ondemand > /sys/class/kgsl/kgsl-3d0/devfreq/governor
- echo 5 > /sys/class/kgsl/kgsl-3d0/min_pwrlevel
- stop thermald
- stop mpdecision
- stop thermal-engine
- # online A57
- echo 1 > /sys/devices/system/cpu/cpu2/online
- echo 1 > /sys/devices/system/cpu/cpu3/online
- echo 1 > /sys/devices/system/cpu/cpu4/online
- echo 1 > /sys/devices/system/cpu/cpu5/online
- echo 1 > /sys/devices/system/cpu/cpu6/online
- echo 1 > /sys/devices/system/cpu/cpu7/online
- # set governor
- echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
- echo performance > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor
- # set max freq
- echo 1555200 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
- echo 1958400 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq
- # set gpu
- echo performance > /sys/class/kgsl/kgsl-3d0/devfreq/governor
- echo 0 > /sys/class/kgsl/kgsl-3d0/min_pwrlevel
- echo performance > /sys/class/devfreq/qcom,cpubw.32/governor
- echo performance > /sys/class/devfreq/qcom,gpubw.71/governor
- echo performance > /sys/class/devfreq/qcom,kgsl-busmon.70/governor
cpu0会一直在线,因此不用手动online。
8994的cpu频率是按簇调整的,因此只需要设置cpu0和cpu4的performance。
拉起来的瞬间可能会触发bcl的调频和拔核动作,全部拉起来后可能温度过高导致thermal降频及拔核。
另外,vendor/qcom/proprietary/Android-perf/core-ctl/core_ctl.c的某些代码可能会引起拉核失败或者拉上来后又被这个模块给down了,需要做如下修改:
将753行cpu_callback()的CPU_UP_PREPARE分支里的如下判断改成if(0),这可以防止拉核失败:
将该文件try_hotplug()函数里的do_hotplug()取消掉,可以防止该模块又把拉上来的cpu给offline了。
不过如此修改代码后,需要手动降低性能:
- #offline A57
- echo 0 > /sys/devices/system/cpu/cpu4/online
- echo 0 > /sys/devices/system/cpu/cpu5/online
- echo 0 > /sys/devices/system/cpu/cpu6/online
- echo 0 > /sys/devices/system/cpu/cpu7/online
- # down max freq
- echo 960000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
- echo simple_ondemand > /sys/class/kgsl/kgsl-3d0/devfreq/governor
- echo 5 > /sys/class/kgsl/kgsl-3d0/min_pwrlevel
高通msm8994手动提升性能脚本的更多相关文章
- 高通msm8994启动流程简介
处理器信息 8994包含如下子系统: 子系统 处理器 含义 APSS 4*Cortex-A53 应用子系统 APSS 4*Cortex-A57 应用子系统 LPASS QDSP6 v5.5A(Hexa ...
- 高通msm8994启动流程简单介绍
处理器信息 8994包括例如以下子系统: 子系统 处理器 含义 APSS 4*Cortex-A53 应用子系统 APSS 4*Cortex-A57 应用子系统 LPASS QDSP6 v5.5A(He ...
- 高通msm8994性能及温度监测脚本
[plain] view plain copystartTime=$(date +%Y-%m-%d-%H-%M-%S) pathName="/data/cpu_logs" fi ...
- 百万级高并发mongodb集群性能数十倍提升优化实践
背景 线上某集群峰值TPS超过100万/秒左右(主要为写流量,读流量很低),峰值tps几乎已经到达集群上限,同时平均时延也超过100ms,随着读写流量的进一步增加,时延抖动严重影响业务可用性.该集群采 ...
- MySQL管理之道:性能调优、高可用与监控内置脚本
MySQL管理之道:性能调优.高可用与监控内置脚本 随书附送脚本 keepalive配置文件和脚本开源工具pssh批量管理服务器(python) 下载地址 http://files.cnblogs.c ...
- 【转】高通平台android 环境配置编译及开发经验总结
原文网址:http://blog.csdn.net/dongwuming/article/details/12784535 1.高通平台android开发总结 1.1 搭建高通平台环境开发环境 在高通 ...
- 从零开始写一个武侠冒险游戏-7-用GPU提升性能(2)
从零开始写一个武侠冒险游戏-7-用GPU提升性能(2) ----把地图处理放在GPU上 作者:FreeBlues 修订记录 2016.06.21 初稿完成. 2016.08.06 增加对 XCode ...
- 高通与MTK瓜分天下?手机处理器品牌分析
http://mobile.pconline.com.cn/337/3379352.html [PConline 杂谈]如果你向朋友请教买一台怎样的台式机或者笔记本的话,很多时候那朋友会根据你对电脑的 ...
- Android : 高通平台的HVX简介及调试
一.HVX简介 HVX(“Hexagon矢量扩展”,Hexagon-六边形.Vector-矢量.Extensions-扩展)是Hexagon 680 DSP的典型特性,能够在执行图像处理应用中的计算负 ...
随机推荐
- 精力(power)
[问题描述]假设你有一个属性叫”精力值”, 这个属性的上限为 E, 一开始你的精力值为 E.每天结束时, 该属性会回复 R,但回复后不会超过上限 E. 现在有 N 天时间给你去工作, 若第 i 天花费 ...
- [BZOJ]1143: [CTSC2008]祭祀river
题目大意:给定一个n个点m条边的有向无环图,问最多选多少个点使得两两之间互不到达.(n<=100,m<=1000) 思路:题目所求即最长反链,最长反链=最小链覆盖,对每个点向自己能到的所有 ...
- Uva 11400 照明系统
有一个照明系统需要用到n种灯,每种灯的电压为V,电源费用K,每个灯泡费用为C,需要该灯的数量为L.注意到,电压相同的灯泡只需要共享一个对应的电源即可,还有电压低的灯泡可以被电压高的灯泡替代.为了节约成 ...
- linux x86内核中的分页机制
Linux采用了通用的四级分页机制,所谓通用就是指Linux使用这种分页机制管理所有架构的分页模型,即便某些架构并不支持四级分页.对于常见的x86架构,如果系统是32位,二级分页模型就可满足系统需求: ...
- hdu 3974 线段树 将树弄到区间上
Assign the task Time Limit: 15000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- Gradle学习之基础篇
一.gradle基础概念 Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建工具.Gradle抛弃了基于各种繁琐的XML,使用一种基于Groovy的特定领域语言( ...
- (转)Ensemble2015安装
1 IIS安装和windows系统配置 1.1 IIS安装 检查是否安装好了IIS,可在[管理工具]的[服务管理器]中查看,如下图所示表示安装了IIS. 确认IIS已完全安装,点击上图中的Web服 ...
- react 或 vue 中引用 jQuery 插件
前言 今天与遇到一个令人抓狂的事情, 因为项目中有个交互太过于复杂而且冷门, 没有人封装类似react-swiper那种的移植过来的插件 只有现成的jQuery插件. 而时间并不宽裕,自己重写成rea ...
- python字典无限遍历
#无限遍历dict,通过key获取value,嵌套字典存在多个相同的key,可获取多个key class getValues(object): def __init__(self): pass #无限 ...
- 解决ASP.NET MVC 检测到有潜在危险的 Request.Form 值
提交使用html编辑器编辑后的数据,由于Request时出现有HTML或JavaScript等字符串时,系统会认为是危险性值.立马报错. "从客户端 ... 中检测到有潜在危险的 Reque ...