前言
这里记录一下bootchart 的配置和使用,方便自己查阅。
正文
- 安装必要工具
- 在设备端使能bootchart,抓取数据
- 在服务器上解析bootchart数据,绘制成图
- 分析bootchart.png
安装必要工具
略,由于公司编译代码的服务器是可以使用bootchart 命令,这里就不介绍安装了,推荐看文末第一篇文章。
在设备端使能bootchart,抓取数据
C:\Users\water>adb root
C:\Users\water>adb remount
C:\Users\water>adb shell
mtk2712:/ # cd data/bootchart
mtk2712:/data/bootchart # touch enabled
断电重启设备,就会生成数据:
mtk2712:/data/bootchart # ls -la
total 1560
drwxr-xr-x 2 shell shell 4096 2021-01-01 09:40 .
drwxrwx--x 44 system system 4096 2022-08-18 09:34 ..
-rw-rw-rw- 1 root root 0 2021-01-01 09:38 enabled
-rw-rw-rw- 1 root root 942 2021-01-01 09:40 header
-rw-rw-rw- 1 root root 53724 2021-01-01 09:40 proc_diskstats.log
-rw-rw-rw- 1 root root 1459263 2021-01-01 09:40 proc_ps.log
-rw-rw-rw- 1 root root 33764 2021-01-01 09:40 proc_stat.log
在PC端解析bootchart数据,绘制成图
这里用工具手动解析,也就是先下载数据,然后PC断解析bootchart文件。
- 在设备端压缩bootchart文件
mtk2712:/data/bootchart # tar -czf bootchart.tgz *
- 拿出bootchart.tgzpull到桌面
C:\Users\water\Desktop>adb pull /data/bootchart/bootchart.tgz .
服务器上解析bootchart文件
需要把bootchart.tgz上传服务器,然执行
bootchart bootchart.tgz parsing 'bootchart.tgz'
编译情况如下:
android@R540:~/water/mtk2712$ bootchart bootchart.tgz parsing 'bootchart.tgz' /usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:57: GtkWarning: could not open display warnings.warn(str(e), _gtk.Warning) parsing 'bootchart.tgz' parsing 'enabled' parsing 'header' parsing 'proc_diskstats.log' parsing 'proc_ps.log' warning: no parent for pid '2' with ppid '0' parsing 'proc_stat.log' warning: path 'parsing' does not exist, ignoring. parsing 'bootchart.tgz' parsing 'enabled' parsing 'header' parsing 'proc_diskstats.log' parsing 'proc_ps.log' warning: no parent for pid '2' with ppid '0' parsing 'proc_stat.log' merged 0 logger processes pruned 125 process, 0 exploders, 2 threads, and 2 runs False bootchart written to 'bootchart.png'
上面就创建了bootchart.png
分析bootchart.png
对于图分析,这个由于我没有看懂,这里不附上。后续有空附上分析结果,
参考文章
© 版权声明