CPU:

Trace抓取(仅Ubuntu):

  1. 准备环境:

    1. 首先下载该工具到单独的文件夹中:

    2. 下面这个perfetto。已经进行了一些配置,会在trace中获取更多信息。下载后解压

    [附件: application/x-zip-compressed]

    1. 右键perfetto文件---权限---勾选允许执行文件

在文件夹内打开终端,输入以下命令:

右键perfetto文件---权限---勾选允许执行文件

  1. 抓取trace:

    1. 在工具所在目录下打开终端,输入命令./perfetto并回车,出现/后就开始抓取了,然后开始操作;
    2. 一般第1次执行手机会有弹窗影响结果,测试从第2次开始;
    3. 操作完成后,ctrl+c结束抓取,之后会自动打开网页显示trace信息(自动打开的无需关注)

prfetto UI(https://perfetto.pt.xiaomi.com/),trace拖入到网页(trace位置:trace/result/)

CPU负载分析:

负载量化工具使用操作文档

❤️ 格式可以参考之前的测试文档:一眼新 & 动效优化cpu/gpu负载 控制中心

GPU:gpu负载工具

✏️ 看上面最新的操作文档即可,下面老方法无需关注

定频:

📍 测试前是否需要GPU定频,要和研发沟通

定频方法(定中间挡)

高通平台

> [附件: text/x-sh] 执行该脚本(确保adb root)

有可能定频生效,使用命令后操作case步骤查看频率是否波动

🍞 验证定频是否成功:(高通) 查看当前GPU频率:

adb shell “while true; do date; cat /sys/class/kgsl/kgsl-3d0/devfreq/cur_freq; cat /sys/class/kgsl/kgsl-3d0/gpu_busy_percentage; sleep 0.5; done” adb shell查看GPU的档位:

cat sys/class/kgsl/kgsl-3d0/gpu_available_frequencies

定频命令:

echo 5 > /sys/class/kgsl/kgsl-3d0/min_pwrlevel && echo 5 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel (0 最高)-(12 最低) (使用中间挡位)

快速抓取方式1—trace

  1. 用稳定版的rom进行抓取测试,防止debug开关对负载干扰
  2. gpu锁频

高通平台

> [附件: text/x-sh] 执行该脚本(确保adb root)

💡 查看是否锁频成功 adb shell “while true; do date; cat /sys/class/kgsl/kgsl-3d0/devfreq/cur_freq; cat /sys/class/kgsl/kgsl-3d0/gpu_busy_percentage; sleep 0.5; done” 如果上述命令失败,使用 adb shell “while true; do date; cat /sys/class/kgsl/kgsl-3d0/gpuclk; cat /sys/class/kgsl/kgsl-3d0/gpu_busy_percentage; sleep 0.5; done”

  1. 打开prfetto UI(https://perfetto.pt.xiaomi.com/)
  2. 拖入trace,找到要分析的应用进程,对应的GPU completion

  1. 框选范围

  1. 最后计算方式:waitForever Wall duration总时长 / (doTraversals或traversal)总次数 = ‘gpu平均单帧耗时’

抓取方式2—SnapDragon Profiler

环境准备

安装Snapdragon Profiler

官网:https://developer.qualomm.com/software/snapdragon-profiler

安装压缩包:

名称:SnapdragonProfiler

地址:https://kpan.mioffice.cn/webfolder/ext/L4xUte%23ROaI%40?n=0.49817786767402805

密码:Ww7U

或:

  • Ubuntu:

    • > [附件: application/gzip]
  • Windows:解压缩如上文件后,在目录下执行./run_sdp.sh

    • > [附件: application/zip]

    ubuntu安装
    sudo apt-get install libc++1 libc++abi1 default-jre android-tools-adb libgtk-3-0
    sudo apt install mono-complete
    ./run_sdp.sh

测试标准

CPU/GPU 负载准入准出看护共识

参考文档

trace抓取工具:抓trace工具使用

GPU抓取:Snapdragon Profiler 使用入门

GPU分析:Snapdragon GPU性能指标分析脚本说明