[automerger skipped] Modified existing SliceQuery functions and added some new ones. am: 7cc06964ed am: 4c6780ccc7
am: 72920fd151 -s ours
am skip reason: change_id Ia6f58e62e77ae3625fcf6bc2724f529cc8c58d27 with SHA1 a1ca2a9b16 is in history

Change-Id: I1f12460326e55f74b7904c8c351ece370d5ee5f0
tree: 05675bf3facce3b0ae9ecde7f0640db799c1e198
  1. core/
  2. gradle/
  3. scripts/
  4. trebuchet/
  5. .gitignore
  6. Android.bp
  7. build.gradle
  8. CONTRIBUTING.md
  9. gradle.properties
  10. gradlew
  11. gradlew.bat
  12. LICENSE
  13. OWNERS
  14. README.md
  15. settings.gradle
  16. TEST_MAPPING
README.md

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.