tezvyn:

How would you use Perfetto and Trace.beginSection to find a non-obvious bottleneck?

Source: perfetto.devadvanced

Tests correlation beyond CPU sampling. Covers coarse Trace.beginSection to limit 1-10us overhead, recording app ATrace with CPU/scheduling tracks, and correlating slices against scheduler latency. Red flag: omitting overhead or ignoring Perfetto SQL queries.

Tests whether you can move beyond Android Studio CPU sampling to system-wide causal analysis. A great answer outlines four steps: instrument hot paths with Trace.beginSection but keep granularity coarse because each event costs 1-10us from JNI and a kernel roundtrip; record via Perfetto enabling ATRACE_TAG_APP plus system tracks like CPU scheduling and binder; visualize slice durations and scheduling gaps in the Perfetto UI; use SQL to quantify total time in specific slices across threads.

Read the original → perfetto.dev

Get five bites like this every day.

Tezvyn delivers a daily feed of 60-second tech bites with quizzes to lock in what you learn.

How would you use Perfetto and Trace.beginSection to find a non-obvious bottleneck? · Tezvyn