Bug: 113163668

Clone this repo:
  1. 07b1332 Revert^2 "Fix usage of minBy to unblock Kotlin 1.5 upgrade" am: 060dea15b0 am: ce196881e9 by Aurimas Liutikas · 8 months ago android-s-v2-preview-1 master android-s-v2-beta-2 android-s-v2-preview-2
  2. ce19688 Revert^2 "Fix usage of minBy to unblock Kotlin 1.5 upgrade" am: 060dea15b0 by Aurimas Liutikas · 8 months ago android-s-beta-4 android-s-beta-5 android-s-beta-3
  3. 060dea1 Revert^2 "Fix usage of minBy to unblock Kotlin 1.5 upgrade" by Aurimas Liutikas · 8 months ago
  4. e935209 Revert "Fix usage of minBy to unblock Kotlin 1.5 upgrade" am: 375f839d08 am: 096f1a5ab5 am: f4b3ef341e am: 6d2c711220 by Aurimas Liutikas · 8 months ago
  5. 6d2c711 Revert "Fix usage of minBy to unblock Kotlin 1.5 upgrade" am: 375f839d08 am: 096f1a5ab5 am: f4b3ef341e by Aurimas Liutikas · 8 months ago android12-dev android12-qpr1-d-release android12-qpr1-d-s1-release android12-qpr1-d-s2-release android12-qpr1-d-s3-release android12-qpr1-release android-12.0.0_r16 android-12.0.0_r18 android-12.0.0_r19 android-12.0.0_r20 android-12.0.0_r21 android-12.0.0_r26 android-12.0.0_r27

Trebuchet

Trebuchet is a Kotlin library for parsing and analyzing Android trace files generated by the atrace or systrace commands. This is not an officially supported Google product.

Library

The code for the Trebuchet library can be found in the core/ directory.

Bundled Programs

Trebuchet comes bundled with several programs for analyzing one or more trace files.

Startup Analyzer

The Startup Analyzer program takes a trace file, detects any startup events that occurred during the traced time period, and prints information about the events. If Trebuchet is built using the Android build system, there will be a StartupAnalyzerKt program placed into a directory that is a member of the PATH system variable. If you wish to use Gradle, you can use the startup-analyzer.sh script located in the scripts/ directory.

Startup Summarizer

The Startup Summarizer program takes a set of trace files, detects startup events in each file, and computes average and standard deviation for startup stats, broken down by program name, compiler filter, and cache status. If Trebuchet is built using the Android build system, there will be a StartupSummarizerKt program placed into a directory that is a member of the PATH system variable. If you wish to use Gradle, you can use the startup-summarizer.sh script located in the scripts/ directory.

Helper Scripts

The scripts/ directory contains a shell script called run-startup.sh, which will start a trace, launch an activity given a package name and an activity name, transfer the trace file to the host machine, and run the StartupAnalyzer.