Chasing 60 FPS: Frame Time Profiling in Jetpack Compose
summary
Contains step‑by‑step use of JankStats, Layout Inspector, system tracing and macrobenchmark tooling; explains baseline profiles and how a production‑equivalent build plus baseline profiling yields a 60% improvement in a login flow at NordVPN; demonstrates tracing custom spans, reading frame timing and frame overrun metrics, sizing images with Coil to avoid 4K decoding, using graphicLayer to avoid relayout, reducing unnecessary recompositions, and failing CI on performance regressions.
AI-written summary · about
chapters (18)
- 0:0060 FPS goal
- 1:45Performance matters
- 3:55Frame drops and jank
- 5:45Android Studio profiling
- 7:49Android Profiler rules
- 9:15Custom tracing in Compose
- 10:18Baseline profiles
- 11:43Layout inspector
- 13:07Macrobenchmark overview
- 15:36Perfetto tracing
- 17:45Causes of jank
- 19:08Stable composables
- 20:56Benchmark tools
- 21:39JankStats analysis
- 22:22Real user monitoring
- 24:52Firebase Performance traces
- 25:56Monitoring workflow
- 27:10Q&A
related talks
35mEnhancing Jetpack Compose App Performance:Tools, Strategies and Optimizations
21mMore performance tips for Jetpack Compose
40mBoosting Compose UI from Sluggish to Snappy
32mFrom Debugging to Real-World Tuning: A Practical Guide to Compose Performance
21mPerformance best practices for Jetpack Compose
37mUsing Performance Management Tools: Firebase Performance Monitoring and Macrobenchm…
45mBoosting Compose UI from Sluggish to Snappy
33mUI profiling in examples. Where is my bottleneck?
