• Home
Name Date Size #Lines LOC

..--

src/03-May-2024-11558

MANIFEST.mfD03-May-202452 32

README.mdD03-May-20249.3 KiB193186

build.gradleD03-May-2024985 3329

README.md

1# Android Application Startup Analyzer
2
3This is a tool for processing systraces and summarizing how applications spend
4their startup time.  To run the tool, enter the root directory for the
5Trebuchet project and use the following command template: `./gradlew
6:trebuchet:startup-analyzer:run --args="<absolute path to trace file>"`.
7
8If you do not already have a trace file to analyze you can capture 10 seconds
9of tracing information using this command: `systrace.py -t 10 dalvik view am wm
10sched freq idle sync irq binder_driver workq hal freq`
11
12This tool is able to process either text traces from `atrace` or extract the
13trace from HTML files generated by `systrace.py`.
14
15Below is an example of its output:
16
17```
18Opening `/usr/local/google/home/chriswailes/projects/trebuchet/trace-facebook.html`
19Progress: 100.00%
20Took 428ms to import
21Parsing trace-facebook.html took 435ms
22
23App Startup summary for com.facebook.katana (29300):
24        Start offset:              1649.352 ms
25        Startup period end point:  activityResume
26        Startup duration:          1033.827 ms
27        Top-level slice information:
28                activityResume
29                        Event count:    1
30                        Total duration: 50.860 ms
31                activityStart
32                        Event count:    1
33                        Total duration: 183.123 ms
34                ActivityThreadMain
35                        Event count:    1
36                        Total duration: 25.377 ms
37                bindApplication
38                        Event count:    1
39                        Total duration: 495.804 ms
40                inflate
41                        Event count:    4
42                        Total duration: 53.638 ms
43                Lock contention
44                        Event count:    121
45                        Total duration: 2.017 ms
46                PostFork
47                        Event count:    1
48                        Total duration: 4.041 ms
49                setCoreSettings
50                        Event count:    1
51                        Total duration: 0.036 ms
52                ZygoteInit
53                        Event count:    1
54                        Total duration: 1.895 ms
55
56        All slice information:
57                activityResume
58                        Event count:    1
59                        Total duration: 50.202 ms
60                activityStart
61                        Event count:    1
62                        Total duration: 176.956 ms
63                ActivityThreadMain
64                        Event count:    1
65                        Total duration: 25.377 ms
66                bindApplication
67                        Event count:    1
68                        Total duration: 271.592 ms
69                Collision check
70                        Event count:    1
71                        Total duration: 0.198 ms
72                createClassloaderNamespace
73                        Event count:    1
74                        Total duration: 2.119 ms
75                FrameLayout
76                        Event count:    5
77                        Total duration: 0.553 ms
78                FullSuspendCheck
79                        Event count:    2
80                        Total duration: 0.160 ms
81                inflate
82                        Event count:    8
83                        Total duration: 7.217 ms
84                initializeJavaContextClassLoader
85                        Event count:    1
86                        Total duration: 1.649 ms
87                LinearLayout
88                        Event count:    3
89                        Total duration: 0.501 ms
90                Load Dex files from classpath
91                        Event count:    1
92                        Total duration: 1.417 ms
93                Lock contention
94                        Event count:    467
95                        Total duration: 16.897 ms
96                makeApplication
97                        Event count:    1
98                        Total duration: 176.637 ms
99                monitor contention
100                        Event count:    4
101                        Total duration: 13.462 ms
102                NetworkSecurityConfigProvider.install
103                        Event count:    1
104                        Total duration: 0.253 ms
105                Obfuscated trace point
106                        Event count:    20
107                        Total duration: 45.005 ms
108                Open dex file
109                        Event count:    16
110                        Total duration: 0.880 ms
111                        Event details:
112                                /system/framework/org.apache.http.legacy.impl.jar @ 0.061 ms
113                                /system/framework/com.google.android.maps.jar @ 0.057 ms
114                                /system/framework/com.google.android.maps.jar @ 0.270 ms
115                                /data/app/com.facebook.katana @ 0.040 ms
116                                /data/app/com.facebook.katana @ 0.034 ms
117                                /data/app/com.facebook.katana @ 0.033 ms
118                                /data/app/com.facebook.katana @ 0.035 ms
119                                /data/app/com.facebook.katana @ 0.034 ms
120                                /data/app/com.facebook.katana @ 0.039 ms
121                                /data/app/com.facebook.katana @ 0.033 ms
122                                /data/app/com.facebook.katana @ 0.034 ms
123                                /data/app/com.facebook.katana @ 0.033 ms
124                                /data/app/com.facebook.katana @ 0.062 ms
125                                /data/app/com.facebook.katana @ 0.033 ms
126                                /data/app/com.facebook.katana @ 0.042 ms
127                                /data/app/com.facebook.katana @ 0.040 ms
128                Open dex file function invocation
129                        Event count:    16
130                        Total duration: 0.153 ms
131                Open oat file
132                        Event count:    8
133                        Total duration: 7.566 ms
134                        Event details:
135                                /data/dalvik-cache/arm/system@framework@org.apache.http.legacy.impl.jar@classes.dex @ 0.028 ms
136                                /system/framework/oat/arm/org.apache.http.legacy.impl.odex @ 4.073 ms
137                                /data/dalvik-cache/arm/system@framework@com.google.android.maps.jar@classes.dex @ 0.026 ms
138                                /system/framework/oat/arm/com.google.android.maps.odex @ 1.343 ms
139                                /data/dalvik-cache/arm/data@app@com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==@base.apk@classes.dex @ 0.026 ms
140                                /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/oat/arm/base.odex @ 2.038 ms
141                                /data/dalvik-cache/arm/data@app@com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==@split_codegenerator.apk@classes.dex @ 0.017 ms
142                                /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/oat/arm/split_codegenerator.odex @ 0.015 ms
143                OpenDexFilesFromOat
144                        Event count:    4
145                        Total duration: 4.261 ms
146                OpenImageFile
147                        Event count:    3
148                        Total duration: 0.098 ms
149                PostFork
150                        Event count:    1
151                        Total duration: 3.881 ms
152                RegisterDexFile
153                        Event count:    4
154                        Total duration: 0.660 ms
155                        Event details:
156                                /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/base.apk @ 0.482 ms
157                                /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/base.apk!classes2.dex @ 0.061 ms
158                                /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/base.apk!classes9.dex @ 0.054 ms
159                                /data/app/com.facebook.katana-Hu0CRasfgvX30RlV_mJxBA==/base.apk!classes3.dex @ 0.063 ms
160                setCoreSettings
161                        Event count:    1
162                        Total duration: 0.036 ms
163                setLayerPaths
164                        Event count:    1
165                        Total duration: 0.035 ms
166                Setup proxies
167                        Event count:    1
168                        Total duration: 0.598 ms
169                setupGraphicsSupport
170                        Event count:    1
171                        Total duration: 1.131 ms
172                SuspendThreadByThreadId
173                        Event count:    2
174                        Total duration: 0.028 ms
175                        Event details:
176                                BgHandler id=15 @ 0.016 ms
177                                P[0]_HPINeedInit2 id=21 @ 0.012 ms
178                VerifyClass
179                        Event count:    2
180                        Total duration: 2.405 ms
181                        Event details:
182                                com.facebook.common.dextricks.DexFileLoadOld @ 0.156 ms
183                                com.facebook.common.dextricks.classid.ClassId @ 2.249 ms
184                View
185                        Event count:    6
186                        Total duration: 1.113 ms
187                ViewStub
188                        Event count:    16
189                        Total duration: 1.856 ms
190                ZygoteInit
191                        Event count:    1
192                        Total duration: 1.895 ms
193```