systrace是Android 4.1引入的一套用于做性能分析的工具,它基于Linux内核的ftrace机制(用于跟踪Linux内核的函数调用),可以输出各个线程当前的函数调用状态,并且可以跟当前CPU的线程运行状态,Display VSYNC间隔,SurfaceFlinger Window Composite间隔等系统信息在同一个时间轴上进行对比,让我们分析程序在某个时间点在当前系统上下文上的运行状态变的更简单方便,比如你可以很容易分析出你的程序在UI线程的哪些函数占用了过多的时间,从而错过了当前的Window Composite导致掉帧。

如何使用:
http://developer.android.com/tools/help/systrace.html
如何分析性能:
http://developer.android.com/tools/debugging/systrace.html
ftrace相关的一些资料:
http://www.kernel.org/doc/Documentation/trace/ftrace.txt
https://www.osadl.org/fileadmin/dam/presentations/RTLWS11/rostedt-ftrace.pdf
支持说明:
1,只在Android 4.1+支持
2,非原生的ROM如CM可能不支持,是否支持可以检查系统是否有这个目录 – /sys/kernel/debug/tracing
3,systrace.py脚本只能在Ubuntu下运行,Windows下面无法运行
本文介绍Systrace,Android4.1引入的性能分析工具,基于Linux内核的ftrace机制,帮助开发者追踪并分析程序运行状态。提供如何使用Systrace进行性能分析的详细指南,包括系统信息对比、UI线程分析等,以及其支持说明。
490

被折叠的 条评论
为什么被折叠?



