simpleperf 火焰图
发布网友
发布时间:2023-03-22 16:42
我来回答
共1个回答
热心网友
时间:2023-10-11 11:00
1. 获取simpleperf的可执行文件
android\system\extras\simpleperf\scripts\bin\android
2 利用simpleperf抓取perf.data数据
adb shell simpleperf record -p 1791 -g --ration 30 -o /sdcard/perf.data
3 pull数据到指定的目录
simpleperf-master$ adb pull /sdcard/perf.data
4 . 在该目录下执行如下指令
python report_sample.py --symfs android/out/target/proct/sdm710/symbols/vendor/lib/hw/ > out.perf
注:示例中的 " --symfs " 指定符号表
5. 从github中获取如下工具
git clone https://github.com/brendangregg/FlameGraph.git
6. 生成火焰图
在 simpleperf-master$ 运行 python report_sample.py > ./FlameGraph-master/out.perf
进入 /FlameGraph-master 下运行
./stackcollapse-perf.pl out.perf >out.folded
./flamegraph.pl out.folded >p.svg
注:上面的2个工具存在于FlameGraph的git仓库中 ,最后生成的p.svg需要用Google Chrome打开