@@ -22,6 +22,75 @@ RETURNS STRING AS
22
22
SELECT
23
23
substr($name, 0 , instr($name, " $" )) AS end;
24
24
25
+ CREATE PERFETTO FUNCTION _standardize_vsync_slice_name(
26
+ -- Raw slice name containing a reference of "*vsync*"
27
+ name STRING
28
+ )
29
+ -- standardized name of vsync slices
30
+ RETURNS STRING AS
31
+ SELECT
32
+ CASE
33
+ WHEN $name GLOB " beginFrame*"
34
+ THEN " beginFrame <...>"
35
+ WHEN $name GLOB " frameIsEarly*"
36
+ THEN " frameIsEarly <...>"
37
+ WHEN $name GLOB " *vsync*in*"
38
+ THEN " vsync in <...>"
39
+ WHEN $name GLOB " present for*vsyncIn*"
40
+ THEN " present for vsync in <...>"
41
+ WHEN $name GLOB " wait for earliest present time*"
42
+ THEN " wait for earliest present time <vsync>"
43
+ WHEN $name GLOB " present for Common Panel*"
44
+ THEN " present for Common Panel"
45
+ WHEN $name GLOB " frameTimelineInfo*"
46
+ THEN " frameTimelineInfo <...>"
47
+ WHEN $name GLOB " *setFrameTimelineInfo*"
48
+ THEN " setFrameTimelineInfo <...>"
49
+ WHEN $name GLOB " *AChoreographer_vsyncCallback*"
50
+ THEN " AChoreographer_vsyncCallback <...>"
51
+ WHEN $name GLOB " unsync-vsync-id=* isSfChoreo=false"
52
+ THEN " unsync-vsync-id=<...> isSfChoreo=false"
53
+ WHEN $name GLOB " unsync-vsync-id=* isSfChoreo=true"
54
+ THEN " unsync-vsync-id=<...> isSfChoreo=true"
55
+ WHEN $name GLOB " Discarding old vsync*"
56
+ THEN " Discarding old vsync"
57
+ WHEN $name GLOB " setDisplayModePtr*"
58
+ THEN " setDisplayModePtr"
59
+ WHEN $name GLOB " adjusting vsync by*"
60
+ THEN " adjusting vsync by <...>"
61
+ WHEN $name GLOB " Not-Adjusting vsync by*"
62
+ THEN " Not-Adjusting vsync by <...>"
63
+ WHEN $name GLOB " dropping stale frameNumber*"
64
+ THEN " dropping stale frameNumber <...>"
65
+ WHEN $name GLOB " Sensor event from com.google.sensor.camera_vsync*"
66
+ THEN " Sensor event from com.google.sensor.camera_vsync <...>"
67
+ WHEN $name GLOB " *DisplayInfo*"
68
+ THEN " DisplayInfo <...>"
69
+ WHEN $name GLOB " Choreographer#onVsync*"
70
+ THEN " Choreographer#onVsync<...>"
71
+ WHEN $name GLOB " appSf alarm*;*VSYNC in*"
72
+ THEN " appSf alarm in <...>; vsync in <...>"
73
+ WHEN $name GLOB " sf alarm*;*VSYNC in*"
74
+ THEN " sf alarm in <...>; vsync in <...>"
75
+ WHEN $name GLOB " app alarm*;*VSYNC in*"
76
+ THEN " app alarm in <...>; vsync in <...>"
77
+ WHEN $name GLOB " FT#*"
78
+ THEN " FT#FrameTrackerEvent"
79
+ WHEN $name GLOB " *isVsyncValid*"
80
+ THEN " isVsyncValid <...>"
81
+ WHEN $name GLOB " onHardwareVsyncRequest*"
82
+ THEN " onHardwareVsyncRequest <...>"
83
+ WHEN $name GLOB " onComposerHalVsync*"
84
+ THEN " onComposerHalVsync <...>"
85
+ WHEN $name GLOB " ensureMinFrameDurationIsKept*mNumVsyncsForFrame=*mPastExpectedPresentTimes.size()=*"
86
+ THEN " ensureMinFrameDurationIsKept mNumVsyncsForFrame=<...> mPastExpectedPresentTimes.size()=<...>"
87
+ WHEN $name GLOB " *lastVsyncDelta*"
88
+ THEN " lastVsyncDelta=<...>"
89
+ WHEN $name GLOB " mLastCommittedVsync in*"
90
+ THEN " mLastCommittedVsync in <...>"
91
+ ELSE $name
92
+ END;
93
+
25
94
-- Some slice names have params in them. This functions removes them to make it
26
95
-- possible to aggregate by name.
27
96
-- Some examples are:
@@ -51,14 +120,44 @@ SELECT
51
120
THEN " Choreographer#doFrame"
52
121
WHEN $name GLOB " DrawFrames*"
53
122
THEN " DrawFrames"
123
+ WHEN lower ($name) GLOB lower (" *vsync*" )
124
+ THEN _standardize_vsync_slice_name($name)
125
+ WHEN $name GLOB " AssetManager::OpenNonAsset*"
126
+ THEN " AssetManager::OpenNonAsset <...>"
127
+ WHEN $name GLOB " AssetManager::OpenXmlAsset*"
128
+ THEN " AssetManager::OpenXmlAsset <...>"
129
+ WHEN $name GLOB " AssetManager::OpenAsset*"
130
+ THEN " AssetManager::OpenAsset <...>"
131
+ WHEN $name GLOB " *AssetInputStream*"
132
+ THEN " AssetInputStream"
133
+ WHEN $name GLOB " openTypedAssetFile*"
134
+ THEN " openTypedAssetFile <...>"
135
+ WHEN $name GLOB " LoadApkAssets*"
136
+ THEN " LoadApkAssets <...>"
137
+ WHEN $name GLOB " *AssetLoader:*"
138
+ THEN " AssetLoader: <...>"
139
+ WHEN $name GLOB " JIT compiling*"
140
+ THEN " JIT compiling"
141
+ WHEN $name GLOB " requested config :*"
142
+ THEN " requested config : <...>"
143
+ WHEN $name GLOB " Over the RR duration:*"
144
+ THEN " Over the RR duration: <...>"
54
145
WHEN $name GLOB " /data/app*.apk"
55
146
THEN " APK load"
56
147
WHEN $name GLOB " OpenDexFilesFromOat*"
57
148
THEN " OpenDexFilesFromOat"
58
149
WHEN $name GLOB " Open oat file*"
59
150
THEN " Open oat file"
151
+ WHEN $name GLOB " Open dex file*"
152
+ THEN " Open dex file"
153
+ WHEN $name GLOB " VdexFile*"
154
+ THEN " VdexFile"
60
155
WHEN $name GLOB " GC: Wait For*"
61
156
THEN " Garbage Collector"
157
+ WHEN $name GLOB " prepareDispatchCycleLocked*"
158
+ THEN " prepareDispatchCycleLocked <...>"
159
+ WHEN $name GLOB " enqueueDispatchEntryAndStartDispatchCycleLocked*"
160
+ THEN " enqueueDispatchEntryAndStartDispatchCycleLocked <...>"
62
161
-- E.g. Lock contention on thread list lock (owner tid: 1665)
63
162
-- To: Lock contention on thread list lock <...>
64
163
WHEN $name GLOB " Lock contention on* (*"
0 commit comments