
Google’s Android LLVM toolchain team has announced the deployment of Automatic Feedback-Directed Optimization (AutoFDO) to the Android kernel which can give a big boost to system performance.
AutoFDO, first introduced in Android 12 (back in 2021), is a sampling-based optimization technique that uses real-world execution data obtained from hardware monitors to guide compiler decisions, thus replacing static analysis with profiles that reflect actual real-world usage. The feature is sort of similar to PGO or Profile Guided Optimization that is already used in Windows and Linux, as well as Google's own Chromium-based apps.
According to Google, this approach allows the compiler to better identify “hot” code paths, those which are most frequently executed, to optimize them accordingly. If you are wondering how this works, the tech giant adds that such profiles are synthesized in controlled lab environments by running representative workloads, including the top 100 most popular apps. In very simple terms, it is kind of like how caching in general works.
Google says that its research shows a geometric mean performance uplift of 10.5 per cent, with AutoFDO achieving 85 per cent of the gains of traditional feedback-directed optimization despite relying on sampled data.
On Android, where the kernel is said to account for roughly 40 percent of CPU time, Google reports measurable improvements of 4 percent reduction in cold app launch times and a 1 percent decrease in boot time. While these numbers don't seem to indicate massive speedups, Google claims these optimizations are excellent for the overall performance of the phone as they translate into faster app switching, smoother and snappier interfaces, and extended battery life for users.
The rollout currently targets the android16-6.12 and android15-6.6 kernel branches, with profiles collected on Pixel devices running kernels 6.1, 6.6, and 6.12. Google plans to expand support to newer Generic Kernel Image (GKI) versions and additional build targets beyond the current aarch64 architecture. Presently, optimization focuses on the main kernel binary (vmlinux), but extending AutoFDO to GKI modules is also something the company is looking at.
By adopting a “conservative by default” strategy, Google says it is trying to ensure that AutoFDO enhances speed without compromising in other areas like reliability.

10 Comments
Load the comments and join the conversation!
Read the comments, ask the editors questions, show respect and join the conversation.