Introducing the Mobile PerfSDK
summary
Uber open sources a mobile PerfSDK that traces functions and gathers CPU, memory and frame‑rate metrics at scale (600 cities, hundreds of engineers) using auto bytecode injection for function spans plus manual start/stop spans and monitor plugins. Tracing is remotely toggled by backend, reports to pluggable outputs and produces Chrome traces via an IntelliJ plugin. Measured overhead is about 1 ms per method on older devices while light tracing ~hundreds of µs supports CI; it reveals 2s main‑thread freezes and frame‑drop patterns.
AI-written summary · about
chapters (15)
- 0:00Introduction
- 0:26What is mobile performance
- 1:26Responsiveness
- 3:16Tools
- 3:55Scale
- 4:38Requirements
- 5:38Architecture
- 9:27Function Injection
- 11:16Console Configuration
- 13:03Annotations
- 15:04Trace
- 17:06Monitor
- 17:53Metrics
- 19:21Visualization
- 21:22Example
related talks
34mClient Tracing At Scale
39mDeep-Diving Android Performance with Perfetto
13mPerfetto Your App for Perfect Performance
38mA Busy Android App Developers' Guide to Perfetto
35mIn Search of Performance: the Subtle Art of Android Profiling
40mDebugging Android Performance at Scale: Lessons from Building Datadog's Mobile Profiler
42mDebugging Application Performance
44mPAPA: Performance of Android Production Applications
