Skip to content

Releases: yc9559/uperf

DEV 21.02.28

28 Feb 07:12
Compare
Choose a tag to compare
DEV 21.02.28 Pre-release
Pre-release

HMP平台(15份配置文件):

  • sdm615/616/650/652/625/626/660/636/82x/835
  • exynos7420/8890/8895

EAS平台(29份配置文件):

  • sdm625/626/660/636/82x/835
  • sdm665/675/710/712/730/730g/750g/765/765g/768g/775
  • sdm845/855/855+/865/865+/870/888
  • exynos8890/8895/9810/9820/9825
  • dimensity720/800u/800/820/1000/1000l/1000+
  • Helio G90T

【测试重点】

  1. 检查本模块是否能够正常安装/运行
  2. 检查使用时的频率选择,体验流畅度和能耗
  3. 动态高刷默认没有启用,由于OLED屏幕特性不同刷新率色彩参数不同,切换刷新率可能带来可感知的色彩变化。配置文件位于/sdcard/Android/cfg_uperf_display.txt

【更新日志】

  1. 本次更新合并了20+个commit
  2. 新增:静止/活动/交互3档动态刷新率,支持分应用配置,底层方案同S20RefreshRateControl
  3. 新增:功能模块与状态转移配置项,开放uperf核心部分配置参数
  4. 新增:当前顶层APP包名识别,用于动态刷新率分应用配置
  5. 新增:预制配置增加Exynos8890(EAS)
  6. 修复:按住屏幕时interaction动作自动退出导致掉帧
  7. 修复:配置生成器的错误导致使用EAS的a53小核被错误锁在最低频
  8. 修复:SsAnalysis由于部分设备不存在/system/lib/libhwbinder.so无法正常工作
  9. 修复:动态刷新率切换时由于子进程继承了重定向到log文件的fd,被SELinux阻止无法设置刷新率
  10. 修复:非magisk方式inject动态库路径不正确
  11. 改进:缩短SsAnim活跃时长,使其仅在性能关键场合启用,降低功耗
  12. 改进:取消普通高优先级任务固定在大核,避免负载过于集中导致卡顿
  13. 改进:重负载动作为mtk和三星平台考虑sched_boost替代方案
  14. 改进:取消静态更改cpuset的cpumask,全部交给uperf动态设置
  15. 改进:取消内核线程的亲和性和优先级设置,感知不明显
  16. 改进:取消隐式SELinux操作避免误解,尽管这可能导致SfAnalysis和SsAnalysis注入失败
  17. 改进:减少ANDR-PERF报错信息

下载:
方法一:点击下方"Assets"中的uperf-dev-21.02.28.zip开始下载
方法二:蓝奏云镜像

DEV 21.02.14

14 Feb 12:11
Compare
Choose a tag to compare
DEV 21.02.14 Pre-release
Pre-release

HMP平台(15份配置文件):

  • sdm615/616/650/652/625/626/660/636/82x/835
  • exynos7420/8890/8895

EAS平台(28份配置文件):

  • sdm625/626/660/636/82x/835
  • sdm665/675/710/712/730/730g/750g/765/765g/768g/775
  • sdm845/855/855+/865/865+/870/888
  • exynos8895/9810/9820/9825
  • dimensity720/800u/800/820/1000/1000l/1000+
  • Helio G90T

【测试重点】

  1. 检查本模块是否能够正常安装/运行
  2. 检查使用时的频率选择,体验流畅度和能耗

【更新日志】

  1. 本次更新合并了40+个commit
  2. 新增:ssanalysis分析器,监测system_server过渡动画,减少页面切换掉帧和滞后感
  3. 新增:重构sfanalysis状态跟踪,即使app/sf的偏移量不同也能准确跟踪,减少卡顿
  4. 新增:hint状态机使用数据驱动,未来版本开放配置文件自定义
  5. 新增:UxAffinity=2在掉帧发生前动态迁移主线程到超大核,减少掉帧
  6. 新增:三星exynos982x定制频率范围knob,修复睡死问题,感谢Saumer7(github)的思路
  7. 新增:初始化过程日志存放在/sdcard/Android/log_uperf_initsvc.log,便于诊断
  8. 修复:由于loadmonitor渲染检测误报率上升,使得滑动等hint提前退出,导致卡顿
  9. 修复:原有perfhal配置文件内容错误使得服务报错,导致软重启
  10. 修复:移除高通HMP平台不存在的负载迁移knob
  11. 修复:系统界面主线程被错误固定到小核执行超时,导致ANR
  12. 修复:开心消消乐主线程被错误固定到小核,导致卡顿
  13. 修复:android.bg可能会阻塞binder,此线程被错误固定到小核,导致卡顿
  14. 修复:surfaceflinger/app错误固定到小核,MIUI过渡动画中此线程执行超时,导致卡顿
  15. 修复:由于不正确的mask设置使得cnss驱动启动网卡执行超时,导致偶见WiFi无法启用
  16. 改进:使用uperf限制foreground不上prime,同时排除pinned中例外的桌面,减少耗电
  17. 改进:heavyload动作任务放置能力,负载能够立即放置到超大核并按需调频
  18. 改进:白名单优先级设置不高于音频类线程,减少音频卡顿
  19. 改进:线程分类器使用表驱动,改进代码可读性
  20. 改进:默认使用busybox for android ndk或者magisk的busybox
  21. 改进:安装脚本机型信息提示,减少误解

下载:
方法一:点击下方"Assets"中的uperf-dev-21.02.14.zip开始下载
方法二:蓝奏云镜像

DEV 21.01.31

31 Jan 08:48
Compare
Choose a tag to compare
DEV 21.01.31 Pre-release
Pre-release

【此版本用于收集反馈】

HMP平台(15份配置文件):

  • sdm615/616/650/652/625/626/660/636/82x/835
  • exynos7420/8890/8895

EAS平台(29份配置文件):

  • sdm625/626/660/636/82x/835
  • sdm665/675/710/712/730/730g/750g/765/765g/775
  • sdm845/855/855+/865/865+/870/888
  • exynos8895/9810/9820/9825
  • dimensity720/800u/800/820/1000/1000l/1000+
  • Helio G90T

【测试重点】

  1. 检查本模块是否能够正常安装/运行
  2. 检查使用时的频率选择,体验流畅度和能耗

【更新日志】

  1. 本次更新合并了20+个commit
  2. 增加:开放HMP平台支持
  3. 增加:支持骁龙750g/775/870、天玑720/800u
  4. 增加:与Qualcomm和MTK的perfhal共存,保持运行但是精简配置,避免一些离奇问题
  5. 修复:由于禁用perfhal后重负载下服务管理进程被阻塞后composer也被阻塞导致的卡顿
  6. 修复:由于重负载下perfhal被阻塞后composer也被阻塞导致的卡顿
  7. 修复:部分安卓虚拟机更改background中任务只能够使用cpu0导致严重卡顿
  8. 修复:小核过于拥挤导致音频卡顿
  9. 改进:关闭需求不强的stune低延迟设置,调度器任务放置更整齐
  10. 改进:system_server任务放置采用黑名单方式,减少未知线程限制在小核被阻塞导致卡顿
  11. 改进:不再限制Java内存回收线程运行在小核阻塞渲染管线,减少卡顿
  12. 改进:关闭强制负载均衡,避免亲和性设置失效
  13. 改进:下调unity游戏主线程性能余量的激进程度,降低一些耗电
  14. 改进:降低top-app中常规线程放置到大核的难度,减少卡顿
  15. 改进:MTK平台SOC的配置文件的命名可读性

下载:
方法一:点击下方"Assets"中的uperf-dev-21.01.31.zip开始下载
方法二:蓝奏云镜像

DEV 21.01.24

24 Jan 09:43
Compare
Choose a tag to compare
DEV 21.01.24 Pre-release
Pre-release

此版本用于收集反馈,支持的SOC有:

  • sdm730/730g/765/765g/768g
  • sdm845/855/855+/865/865+/888
  • dimensity800/820/1000/1000l/1000+
  • Helio G90T

【测试重点】

  1. 检查使用时的频率选择,体验流畅度和能耗

【更新日志】

  1. 本次更新合并了40+个commit
  2. 新增:适配骁龙888和Linux 5.4引入的uclamp
  3. 新增:仅允许后台与UX相关的线程运行在大核,减少大核唤醒
  4. 新增:固定全面屏手势动画相关的线程到大核且不被抢占,减少掉帧
  5. 新增:动态控制UI渲染管线相关线程到大核,减少掉帧
  6. 新增:优化基于Unity游戏线程放置的合理性,减少迷之掉帧
  7. 新增:CPU频点模糊匹配
  8. 新增:识别zygote,修复偏慢的APP冷启动
  9. 新增:重构动态Affinity,改善线程调度参数设置生命周期完整性
  10. 改进:恢复WALT EAS负载预测,修复选频过于保守
  11. 改进:加快HeavyLoad检测频率到20hz
  12. 改进:卡顿和均衡模式小核最低频使用尽可能低的值
  13. 修复:goodix和屏幕指纹动画线程被固定到小核,修复MIUI屏幕指纹解锁停顿太久
  14. 修复:SfAnalysis在MIUI 12.5初始化失败
  15. 修复:关闭高通perfd时拉高的DDR频率没有恢复导致空载高耗电
  16. 修复:sigwait遗漏信号导致状态卡在Sflag
  17. 修复:一个罕见的崩溃bug

下载:
方法一:点击下方"Asserts"中的uperf-dev-21.01.24.zip开始下载
方法二:蓝奏云镜像

DEV 21.01.04

04 Jan 14:43
Compare
Choose a tag to compare
DEV 21.01.04 Pre-release
Pre-release

此版本用于收集反馈,支持的SOC有:

  • sdm730/730g/765/765g/768g
  • sdm845/855/855+/865/865+
  • dimensity800/820/1000/1000l/1000+
  • Helio G90T

【测试重点】

  1. 检查MTK平台uperf的动态频率范围限制是否正常工作

【更新日志】

  1. MTK平台改用ppm接口动态控制频率范围

下载:
方法一:点击下方"Asserts"中的uperf-dev-21.01.04.zip开始下载
方法二:蓝奏云镜像

DEV 21.01.03

03 Jan 07:32
Compare
Choose a tag to compare
DEV 21.01.03 Pre-release
Pre-release

此版本用于收集反馈,支持的SOC有:

  • sdm730/730g/765/765g
  • sdm845/855/855+/865(lpddr4x/5)/865+(lpddr4x/5)
  • dimensity800/820/1000/1000l/1000+
  • Helio G90T

【测试重点】

  1. 检查MTK平台uperf的动态频率范围限制是否正常工作
  2. 测试流畅度与耗电的平衡效果如何

【更新日志】

  1. 修复MTK平台机型识别错误
  2. 修复Binder任务放置引起的动画掉帧

下载:
方法一:点击下方"Asserts"中的uperf-dev-21.01.03.zip开始下载
方法二:蓝奏云镜像

DEV 20210102

02 Jan 10:21
Compare
Choose a tag to compare
DEV 20210102 Pre-release
Pre-release

此版本用于收集反馈,支持的SOC有:

  • sdm845/855/855+/865(lpddr4x/5)/865+(lpddr4x/5)
  • dimensity800/820/1000/1000l/1000+

【测试重点】

  1. 检查MTK天玑平台上uperf是否可以如期工作
  2. 测试流畅度与耗电的平衡效果如何

【更新日志】
太多了,150+次commit,详细的介绍以后再写。

下载:
方法一:点击下方"Asserts"中的uperf-dev-20210102.zip开始下载
方法二:蓝奏云镜像

v1 (20200516)

16 May 09:15
Compare
Choose a tag to compare

支持如下平台:

  • sdm615/616
  • sdm650/652
  • sdm625(HMP/EAS)
  • sdm626(HMP/EAS)
  • sdm660(HMP/EAS)
  • sdm636(HMP/EAS)
  • sdm82x(HMP/EAS)
  • sdm835(HMP/EAS)
  • sdm665
  • sdm675
  • sdm710/712
  • sdm730/730g
  • sdm765/765g
  • sdm768g
  • sdm845
  • sdm855/855+
  • sdm865/865+ lpddr4x/5
  • exynos 7420
  • exynos 8890
  • exynos 8895(HMP/EAS)
  • exynos 9810
  • exynos 9820/9825

项目介绍、使用帮助、自定义配置文件教程:README

下载:
方法一:点击下方"Asserts"中的uperf-v1-20200516.zip开始下载
方法二:蓝奏云镜像

DEV 20200513

13 May 03:53
Compare
Choose a tag to compare
DEV 20200513 Pre-release
Pre-release

此版本用于收集反馈,支持的SOC有:

  • sdm835(HMP)
  • sdm865/865+ lpddr4x/5

更新日志:

  • uperf:ProcGetUid采用busybox中采用的方法,可能与AffinityHelper死循环有关
  • uperf:下调滑动距离阈值,减少滑动误认为是点击
  • uperf:延迟UI响应的Hint恢复时间范围增加到700ms
  • SfAnalysis:有些时候刚开始滑动就遇到卡顿,误报交给uperf压制非交互时的boost解决
  • wipe-v2:配置文件:评分函数权重和参数范围回调一些
  • 配置文件生成器:降低卡顿模式的sfLag的频率拉升
  • 配置文件生成器:骁龙712最大主频2.3g
  • 安装脚本:设置enable_sfanalysis标志位,如果遇到与她相关的卡屏可删除此标志位禁用SfAnalysis
  • 自启动脚本:关闭sleep 60有助于解决小米10 MIUI12启动器不响应触摸的情况
  • 自启动脚本:wait_until_login测试目录可写权限
  • once:补充关闭一些热插拔

下载:
方法一:点击下方"Asserts"中的uperf-dev-20200513.1.zip开始下载
方法二:蓝奏云镜像

DEV 20200507

07 May 10:12
Compare
Choose a tag to compare
DEV 20200507 Pre-release
Pre-release

此版本用于收集反馈,支持的SOC有:

  • sdm82x(HMP/EAS)
  • sdm835(HMP/EAS)
  • sdm665
  • sdm710/712
  • sdm730/730g
  • sdm765/765g
  • sdm865/865+ lpddr4x/5
  • exynos 7420

更新日志:

  • uperf:增加提示Surfaceflinger analysis connected
  • sfanalysis:禁用android log,或许能解决一些玄学问题
  • 配置文件生成器:下调sdm835最高频率,2.2g->2.1g,2.0g->1.9g
  • makefile:使用静态链接或许能解决一些玄学问题
  • 回退:"powerhint.json默认不覆盖,避免post-fs-data没执行还是卡开机"

下载:
方法一:点击下方"Asserts"中的uperf-dev-20200507.zip开始下载
方法二:蓝奏云镜像