Skip to content

Commit 7ad8d50

Browse files
author
Mohamed Elrakad
committed
standarize vsync slice names and asset loading
Bug:397391338 Change-Id: I9005b92f7b4cca53a5f6b5d44f34f61f0001fe6f
1 parent 1b53996 commit 7ad8d50

File tree

1 file changed

+99
-0
lines changed
  • src/trace_processor/perfetto_sql/stdlib/android

1 file changed

+99
-0
lines changed

src/trace_processor/perfetto_sql/stdlib/android/slices.sql

+99
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,75 @@ RETURNS STRING AS
2222
SELECT
2323
substr($name, 0, instr($name, "$")) AS end;
2424

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+
2594
-- Some slice names have params in them. This functions removes them to make it
2695
-- possible to aggregate by name.
2796
-- Some examples are:
@@ -51,14 +120,44 @@ SELECT
51120
THEN "Choreographer#doFrame"
52121
WHEN $name GLOB "DrawFrames*"
53122
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: <...>"
54145
WHEN $name GLOB "/data/app*.apk"
55146
THEN "APK load"
56147
WHEN $name GLOB "OpenDexFilesFromOat*"
57148
THEN "OpenDexFilesFromOat"
58149
WHEN $name GLOB "Open oat file*"
59150
THEN "Open oat file"
151+
WHEN $name GLOB "Open dex file*"
152+
THEN "Open dex file"
153+
WHEN $name GLOB "VdexFile*"
154+
THEN "VdexFile"
60155
WHEN $name GLOB "GC: Wait For*"
61156
THEN "Garbage Collector"
157+
WHEN $name GLOB "prepareDispatchCycleLocked*"
158+
THEN "prepareDispatchCycleLocked <...>"
159+
WHEN $name GLOB "enqueueDispatchEntryAndStartDispatchCycleLocked*"
160+
THEN "enqueueDispatchEntryAndStartDispatchCycleLocked <...>"
62161
-- E.g. Lock contention on thread list lock (owner tid: 1665)
63162
-- To: Lock contention on thread list lock <...>
64163
WHEN $name GLOB "Lock contention on* (*"

0 commit comments

Comments
 (0)