第6讲 Android Camera性能分析 如何通过perfetto抓取trace

本讲是Android Camera性能分析专题的第6讲,我们介绍如何通过perfetto抓取trace,包括如下内容:

  1. 启动Tracing服务
  2. 通过命令行方式抓取perfetto trace
    1. 通过python脚本抓取perfetto trace
    2. 通过perfetto命令抓取perfetto trace
  3. 通过UI方式抓取perfetto trace

视频在线观看:

加入知识星球与更多Camera同学交流
– 星球名称:深入浅出Android Camera
– 星球ID: 17296815

启动Tracing服务

从Android P开始Android引入perfetto,在Android R才默认打开Tracing服务

打开方法

  • Android P和Android Q才需要手动先打开
# Needed only on Android 9 (P) and 10 (Q) on non-Pixel phones.
adb shell setprop persist.traced.enable 1
adb reboot

确认相关服务是否正常启动

HWPCT:/ $ ps -A |grep -iE "traced"
nobody        1016     1   46520   2444 0                   0 S traced
nobody        1017     1   46520   2624 0                   0 S traced_probes

通过命令行方式抓取perfetto trace

通过python脚本抓取perfetto trace

抓取perfetto的python脚本

执行抓取命令(与systrace类似)

python3 record_android_trace -o trace_file.perfetto-trace -t 10s -b 32mb -n sched freq idle am wm gfx view binder_driver hal dalvik camera input res memory

还可以指定configure文件

  • 如何产生perfetto configure文件
    • 见视频讲解
  • 命令
    python3 record_android_trace -o trace_file.perfetto-trace -t 10s -b 32mb -n -c record_camera.config

通过perfetto命令抓取perfetto trace

执行抓取命令

adb shell perfetto -o /data/misc/perfetto-traces/trace_file.perfetto-trace -t 10s sched freq idle am wm gfx view binder_driver hal dalvik camera input res memory

adb pull /data/misc/perfetto-traces/trace_file.perfetto-trace

还可以指定Configure文件

adb push record_camera.config /data/local/tmp/record_camera.config

adb shell “cat /data/local/tmp/record_camera.config | perfetto --txt -c - -o /data/misc/perfetto-traces/trace.perfetto-trace”

adb pull /data/misc/perfetto-traces/trace.perfetto-trace

通过UI方式抓取perfetto trace

在Settings中配置和打开trace

Developer options > System tracing
  • 选择Category
  • Show quick settings title

Pull 抓取到的trace

adb pull /data/local/traces
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

deepinout_camera

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值