本文共计1676个字,预计阅读时长6.7分钟。
【更新日志】
1. 本次更新合并了20+个commit
2. 预调参配置增加
1. 天玑1100/1200
2. 骁龙780g
3. 修复负优化
1. 处理触摸事件序列存在触摸状态变化未通知上层,导致有时无法进入touch相关Hint
2. 无正向作用的sf.disable\_backpressure,可能导致60hz下掉帧
3. 线程分类器跳过com.android.systemui,可能导致“系统界面无响应”
4. android.bg设置了错误的优先级,导致使用百度地图时死机
5. 不够激进的Unity相关规则,导致基于Unity的场景加载偏慢
6. 应用音频相关线程优先级设置偏低,导致音频卡顿
4. 预调参调整
1. 放宽费电模式线程放置限制,跑分请使用费电模式
2. Heavyload采用松限制,配合长时长的Hint使用
5. 改进
1. SsAnim改为定时长类型Hint,状态进入退出更稳定
2. 动态高刷支持使用系统默认值“-1”
3. SfAnalysis和uperf进一步整合,移除Injector标志位
4. 先尝试不关闭SELinux注入,失败后设置SELinux许可模式后重试,此重试默认开启
5. 减少sensor、kswapd、电话数据对大核的唤醒
6. 显著提升开机初始化脚本执行速度,从30s降低到5s(sdm888平台测试)
6. 重构
1. 整合SsAnalysis到SfAnalysis,减少对system\_server侵入,减少死机概率
2. 新的poke方式,支持在设备SELinux规则限制内从surfaceflinger传递整形
3. 编译工程切换到cmake,编译参数更明确,NDK或许有些魔法
4. 用户态线程调度器前台后台参数完全隔离,实现更加灵活的规则设置
5. 分进程的线程分类器,实现更加灵活的规则设置
6. 常数时间复杂度的线程分类器缓存表
7. lock\_val和mutate支持批量操作
【预调参配置文件】
- Uperf是个通用用户态性能控制器,用户可完全自定义每个hint执行的动作
- 为了降低使用门槛,提供了主流硬件平台预调参配置文件,开箱即用
- HMP平台(15份配置文件):
- sdm615/616/650/652/625/626/660/636/82x/835
- exynos7420/8890/8895
- EAS平台(37份配置文件):
- sdm625/626/660/636/82x/835
- sdm662/665/675/710/712/730/730g/750g/765/765g/768g/775/780
- sdm845/855/855+/865/865+/870/888
- exynos8890/8895/9810/9820/9825/990/1080/2100
- dimensity720/800u/800/820/1000/1000l/1000+/1100/1200
- Helio P65/G70/G80/G85/G90T
著作权归文章作者所有。
uperf-dev-21.06.20-yc调度更新啦