aboutsummaryrefslogtreecommitdiffstats
path: root/trebuchet/startup-analyzer/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'trebuchet/startup-analyzer/README.md')
-rw-r--r--trebuchet/startup-analyzer/README.md193
1 files changed, 193 insertions, 0 deletions
diff --git a/trebuchet/startup-analyzer/README.md b/trebuchet/startup-analyzer/README.md
new file mode 100644
index 0000000..7bab90d
--- /dev/null
+++ b/trebuchet/startup-analyzer/README.md
@@ -0,0 +1,193 @@
+# Android Application Startup Analyzer
+
+This is a tool for processing systraces and summarizing how applications spend
+their startup time. To run the tool, enter the root directory for the
+Trebuchet project and use the following command template: `./gradlew
+:trebuchet:startup-analyzer:run --args="<absolute path to trace file>"`.
+
+If you do not already have a trace file to analyze you can capture 10 seconds
+of tracing information using this command: `systrace.py -t 10 dalvik view am wm
+sched freq idle sync irq binder_driver workq hal freq`
+
+This tool is able to process either text traces from `atrace` or extract the
+trace from HTML files generated by `systrace.py`.
+
+Below is an example of its output:
+
+```
+Opening `/usr/local/google/home/chriswailes/projects/trebuchet/trace-facebook.html`
+Progress: 100.00%
+Took 428ms to import
+Parsing trace-facebook.html took 435ms
+
+App Startup summary for com.facebook.katana (29300):
+ Start offset: 1649.352 ms
+ Startup period end point: activityResume
+ Startup duration: 1033.827 ms
+ Top-level slice information:
+ activityResume
+ Event count: 1
+ Total duration: 50.860 ms
+ activityStart
+ Event count: 1
+ Total duration: 183.123 ms
+ ActivityThreadMain
+ Event count: 1
+ Total duration: 25.377 ms
+ bindApplication
+ Event count: 1
+ Total duration: 495.804 ms
+ inflate
+ Event count: 4
+ Total duration: 53.638 ms
+ Lock contention
+ Event count: 121
+ Total duration: 2.017 ms
+ PostFork
+ Event count: 1
+ Total duration: 4.041 ms
+ setCoreSettings
+ Event count: 1
+ Total duration: 0.036 ms
+ ZygoteInit
+ Event count: 1
+ Total duration: 1.895 ms
+
+ All slice information:
+ activityResume
+ Event count: 1
+ Total duration: 50.202 ms
+ activityStart
+ Event count: 1
+ Total duration: 176.956 ms
+ ActivityThreadMain
+ Event count: 1
+ Total duration: 25.377 ms
+ bindApplication
+ Event count: 1
+ Total duration: 271.592 ms
+ Collision check
+ Event count: 1
+ Total duration: 0.198 ms
+ createClassloaderNamespace
+ Event count: 1
+ Total duration: 2.119 ms
+ FrameLayout
+ Event count: 5
+ Total duration: 0.553 ms
+ FullSuspendCheck
+ Event count: 2
+ Total duration: 0.160 ms
+ inflate
+ Event count: 8
+ Total duration: 7.217 ms
+ initializeJavaContextClassLoader
+ Event count: 1
+ Total duration: 1.649 ms
+ LinearLayout
+ Event count: 3
+ Total duration: 0.501 ms
+ Load Dex files from classpath
+ Event count: 1
+ Total duration: 1.417 ms
+ Lock contention
+ Event count: 467
+ Total duration: 16.897 ms
+ makeApplication
+ Event count: 1
+ Total duration: 176.637 ms
+ monitor contention
+ Event count: 4
+ Total duration: 13.462 ms
+ NetworkSecurityConfigProvider.install
+ Event count: 1
+ Total duration: 0.253 ms
+ Obfuscated trace point
+ Event count: 20
+ Total duration: 45.005 ms
+ Open dex file
+ Event count: 16
+ Total duration: 0.880 ms
+ Event details:
+ /system/framework/org.apache.http.legacy.impl.jar @ 0.061 ms
+ /system/framework/com.google.android.maps.jar @ 0.057 ms
+ /system/framework/com.google.android.maps.jar @ 0.270 ms
+ /data/app/com.facebook.katana @ 0.040 ms
+ /data/app/com.facebook.katana @ 0.034 ms
+ /data/app/com.facebook.katana @ 0.033 ms
+ /data/app/com.facebook.katana @ 0.035 ms
+ /data/app/com.facebook.katana @ 0.034 ms
+ /data/app/com.facebook.katana @ 0.039 ms
+ /data/app/com.facebook.katana @ 0.033 ms
+ /data/app/com.facebook.katana @ 0.034 ms
+ /data/app/com.facebook.katana @ 0.033 ms
+ /data/app/com.facebook.katana @ 0.062 ms
+ /data/app/com.facebook.katana @ 0.033 ms
+ /data/app/com.facebook.katana @ 0.042 ms
+ /data/app/com.facebook.katana @ 0.040 ms
+ Open dex file function invocation
+ Event count: 16
+ Total duration: 0.153 ms
+ Open oat file
+ Event count: 8
+ Total duration: 7.566 ms
+ Event details:
+ /data/dalvik-cache/arm/system@framework@org.apache.http.legacy.impl.jar@classes.dex @ 0.028 ms
+ /system/framework/oat/arm/org.apache.http.legacy.impl.odex @ 4.073 ms
+ /data/dalvik-cache/arm/system@framework@com.google.android.maps.jar@classes.dex @ 0.026 ms
+ /system/framework/oat/arm/com.google.android.maps.odex @ 1.343 ms
+ /data/dalvik-cache/arm/data@app@com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==@base.apk@classes.dex @ 0.026 ms
+ /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/oat/arm/base.odex @ 2.038 ms
+ /data/dalvik-cache/arm/data@app@com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==@split_codegenerator.apk@classes.dex @ 0.017 ms
+ /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/oat/arm/split_codegenerator.odex @ 0.015 ms
+ OpenDexFilesFromOat
+ Event count: 4
+ Total duration: 4.261 ms
+ OpenImageFile
+ Event count: 3
+ Total duration: 0.098 ms
+ PostFork
+ Event count: 1
+ Total duration: 3.881 ms
+ RegisterDexFile
+ Event count: 4
+ Total duration: 0.660 ms
+ Event details:
+ /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/base.apk @ 0.482 ms
+ /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/base.apk!classes2.dex @ 0.061 ms
+ /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/base.apk!classes9.dex @ 0.054 ms
+ /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/base.apk!classes3.dex @ 0.063 ms
+ setCoreSettings
+ Event count: 1
+ Total duration: 0.036 ms
+ setLayerPaths
+ Event count: 1
+ Total duration: 0.035 ms
+ Setup proxies
+ Event count: 1
+ Total duration: 0.598 ms
+ setupGraphicsSupport
+ Event count: 1
+ Total duration: 1.131 ms
+ SuspendThreadByThreadId
+ Event count: 2
+ Total duration: 0.028 ms
+ Event details:
+ BgHandler id=15 @ 0.016 ms
+ P[0]_HPINeedInit2 id=21 @ 0.012 ms
+ VerifyClass
+ Event count: 2
+ Total duration: 2.405 ms
+ Event details:
+ com.facebook.common.dextricks.DexFileLoadOld @ 0.156 ms
+ com.facebook.common.dextricks.classid.ClassId @ 2.249 ms
+ View
+ Event count: 6
+ Total duration: 1.113 ms
+ ViewStub
+ Event count: 16
+ Total duration: 1.856 ms
+ ZygoteInit
+ Event count: 1
+ Total duration: 1.895 ms
+``` \ No newline at end of file