androidperformancesystraceandroid-traceview

Android: Difference between traceview and systrace tool


I''m learning to use those tools for performance profile. I have read Android document about both traceview and systrace but I don't see any main difference. They both have very same GUI: A timeline and all components on the left behave on this time line. Main purpose is detecting long running task in code.

So, my question is: What are real differences between traceview and systrace. And in which situation we use each tool?

Thanks :)


Solution

  • Traceview is a graphical viewer to see logs created by an Android application. Via Traceview you can measure the performance of your application to identify performance problems.

    Traceview is located as standalone tool in the tools folder of your Android SDK installation folder and it also integrated into Eclipse via the Android Developer Tools (ADT).

    Systrace allows to measure the performance directly at kernel level.The tool combines data from the Android kernel such as the CPU scheduler, disk activity, and application threads to generate an HTML report that shows an overall picture of an Android device’s system processes for a given period of time. To enable systrace, select the Developer options and select the Enable traces entry. In the next dialog you can define what type of events should be profiled, e.g. Graphics and View.

    You can profile this traceview and systrace here