Wrangling the CPU iOS Performance in the Facebook App
summary
Targets 60 fps so each frame has 16.6 ms budget, and Facebook settles on the metric seconds between drop events (about 12 s on iPhone, 20 s on iPad Air) and chases frames over 100 ms. A shipped CPU profiler samples the main thread on testers, captures backtraces (~1 µs on an iPhone 4s), aggregates and uploads regressions. Startup fixes include persisting likely feed requests, UDP priming to prewarm servers, streaming one story at a time and moving heavy services off the critical path, saving several hundred milliseconds.
AI-written summary · about
chapters (15)
- 0:00Intro
- 0:39Finding The Right Metric
- 4:36Finding The Regression
- 6:44How Does It Work?
- 8:12Findings
- 11:35Start of 2015
- 12:03What Does Startup Look Like?
- 13:22Optimizing BEFORE the request Request
- 15:40Optimizing BEFORE the Request Performance
- 17:32Organizing Post-Request Data
- 18:29Optimizing Network Request Performance
- 19:31UDP Priming
- 20:31Optimizing Response Performance
- 22:04Optimizing Post Response Performance
- 23:30Summary








