Pendant des années, le compilateur du noyau Android prenait ses décisions dans le vide. Google vient de changer ça, en silence, avec une méthode qui aurait dû arriver bien plus tôt.

Depuis une décennie, chaque nouvelle génération de smartphones Android s'est accompagnée de puces toujours plus rapides et de mémoire vive toujours plus abondante. Pourtant, une part de ce gain était systématiquement gaspillée, non pas par le matériel, mais par la façon dont le système compilait son propre code. Comme le rapporte 9to5Google, l'équipe Android LLVM Toolchain a annoncé le déploiement d'une nouvelle technique dans le noyau Android. Pour saisir l'enjeu, il faut comprendre ce que fait un compilateur de noyau, et pourquoi son calibrage change tout.
Ce que Google a réellement modifié dans le noyau Android
L'AutoFDO (Automatic Feedback-Directed Optimization) repose sur un principe simple. Jusqu'ici, le compilateur du noyau prenait ses décisions à partir de règles fixes, écrites sans connaissance de l'usage réel. Google lui fournit désormais des profils d'exécution capturés en laboratoire : la méthode consiste à faire tourner les 100 applications les plus populaires sur Android et à enregistrer l'historique de branchement du processeur. Le compilateur peut ainsi distinguer les portions de code fréquemment exécutées des portions rarement sollicitées, et concentrer ses efforts sur les premières.
Les premiers résultats publiés sont modestes mais mesurables : 2,1% de gain sur le démarrage du système et 4,3% sur le lancement d'applications fermées. Ces améliorations concernent les versions android15-6.6 et android16-6.12 du noyau, ainsi que la future version android17-6.18. Hors des schémas connus, le compilateur revient automatiquement aux méthodes classiques, selon une approche prudente que Google a intégrée dès le départ.
Une stratégie de fond qui dépasse les annonces chiffrées
Ce déploiement ne sort pas de nulle part. En début d'année, nous relations comment Google avait discrètement mis à jour le noyau Linux des Pixel 6, 7 et 8, redonnant un second souffle à des appareils que l'entreprise aurait pu laisser vieillir sans effort. L'AutoFDO prolonge cette même logique, à une échelle autrement plus large. Il ne s'agit plus d'un correctif ciblé sur quelques modèles, mais d'une refonte de la façon dont Android compile son noyau pour l'ensemble de l'écosystème.
Ce qui mérite attention, c'est moins la technique en elle-même que l'aveu qu'elle contient. Pendant des années, les benchmarks CPU s'envolaient d'une génération à l'autre. Le compilateur, lui, prenait ses décisions sans jamais observer comment Android était vraiment utilisé. L'AutoFDO n'est pas une percée scientifique : la technique existe dans l'industrie depuis longtemps, et d'autres projets Linux la mettent déjà en oeuvre depuis plusieurs années. Google l'applique simplement là où elle aurait dû l'être bien plus tôt.
Il faut nuancer l'enthousiasme : 2,1% et 4,3% ne transformeront pas l'expérience utilisateur du jour au lendemain. Leur valeur est avant tout cumulative. Associés aux optimisations de mémoire, aux mises à jour ciblées du noyau et aux améliorations du gestionnaire d'énergie, ces gains s'accumulent progressivement. Android avait longtemps favorisé la course aux spécifications au détriment de ce type d'optimisation de bas niveau, et ce rééquilibrage discret mérite d'être suivi sur la durée.
Le vrai exploit n'est pas d'avoir trouvé comment optimiser Android : c'est d'avoir attendu aussi longtemps pour le faire.