Add trace metric to root cause jank in SysUI CUJs
Detects a few common jank root causes with the following caveats:
* We do not use VSYNC-app counter to determine the start
of the frame. Instead we assume the frame starts with
Choreographer#doFrame
* Thresholds for jank causes have to be adjusted
* SQL query runtime seems quite high so it has to be optimized
Bug: 161781469
Test: tools/diff_test_trace_processor.py + manual
Change-Id: I343b46e700babac95535244f797c0f7b04d9dd5c
diff --git a/BUILD b/BUILD
index 08a8fa1..b84be89 100644
--- a/BUILD
+++ b/BUILD
@@ -794,6 +794,7 @@
"src/trace_processor/metrics/android/android_startup.sql",
"src/trace_processor/metrics/android/android_startup_launches.sql",
"src/trace_processor/metrics/android/android_surfaceflinger.sql",
+ "src/trace_processor/metrics/android/android_sysui_cuj.sql",
"src/trace_processor/metrics/android/android_task_names.sql",
"src/trace_processor/metrics/android/android_task_state.sql",
"src/trace_processor/metrics/android/android_thread_time_in_state.sql",
@@ -2132,6 +2133,7 @@
"protos/perfetto/metrics/android/process_metadata.proto",
"protos/perfetto/metrics/android/startup_metric.proto",
"protos/perfetto/metrics/android/surfaceflinger.proto",
+ "protos/perfetto/metrics/android/sysui_cuj_metrics.proto",
"protos/perfetto/metrics/android/task_names.proto",
"protos/perfetto/metrics/android/thread_time_in_state_metric.proto",
"protos/perfetto/metrics/android/unsymbolized_frames.proto",