• systrace/perfetto抓取方式分享


    背景

    近来有一些同学反馈性能分析,现在大部分都是其实已经开始使用perfetto了,连sdk上都已经找不到哦systrace相关工具,让马哥可以分享一些这个相关内容,其实以前企业里面那时候大部分都是使用老版本systrace的,相比新版本的perfetto确实功能上要差一些,今天就带大家来探索一下相关的perfetto抓取方法

    手机上离线抓取方式:

    离线perfetto抓取方式

    抓取命令:

    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

    抓取后导出相关trace到chrome上打开:

    adb pull /data/misc/perfetto-traces/trace_file.perfetto-trace
    网站打开trace:
    打开链接:
    https://ui.perfetto.dev/

    针对可能不支持perfetto版本可以,离线抓取atrace方式

    开始抓取

    adb shell "atrace -c  -t 10 sched freq idle am wm gfx view binder_driver hal dalvik camera input res gfx view wm am ss video camera hal res sync idle binder_driver binder_lock ss  --async_start"
    
    • 1

    停止抓取并把trace导出到sdcard

    adb shell atrace --async_stop -z -c -o /sdcard/atrace_normal.atrace
    
    • 1

    然后atrace手机上pull出来既可以

    adb pull /sdcard/atrace_normal.atrace
    
    • 1

    直接观看atrace:
    打开链接:
    https://ui.perfetto.dev/
    在这里插入图片描述

    手机连线电脑抓取perfetto(强烈推荐):

    这里没有采用chrome浏览器直接抓取方式,而是使用了的源码的中自带的record_android_trace工具
    具体的record_android_trace路径是在aosp源码的如下目录
    aosp/external/perfetto/tools

    具体抓取命令:

    test@test:~/aosp/external/perfetto/tools$ ./record_android_trace -o $(date +%Y%m%d_%H%M%S)_trace_file.perfetto-trace -t 5s -b 32mb sched freq idle am wm gfx view binder_driver hal dalvik camera input res memory gfx view wm am ss video camera hal res sync idle binder_driver binder_lock ss
    Running perfetto --background --txt -o /data/misc/perfetto-traces/2023-10-01_13-06-0d9a0e.pftrace -t 5s -b 32mb sched freq idle am wm gfx view binder_driver hal dalvik camera input res memory gfx view wm am ss video camera hal res sync idle binder_driver binder_lock ss
    
    • 1
    • 2

    以上抓取后直接自己会打开相关的chrome的浏览器

    在这里插入图片描述
    更多干货视频内容可以关注公众号或者b站up主(千里马学框架)

  • 相关阅读:
    游戏编程精粹2目录
    C#中的钩子是啥?
    接口测试 —— Jmeter 之测试片段的应用
    微机原理:逻辑运算指令、移位指令
    vue3双向绑定原理(对比vue2)
    2023年【高压电工】证考试及高压电工复审模拟考试
    python读取word详解【from docx import Document】
    网络整体框架介绍
    申请uniapp离线打包时的AppKey
    vuex是什么?如何使用?使用他的功能场景?
  • 原文地址:https://blog.csdn.net/learnframework/article/details/133358842