Android va devenir plus fluide : voici comment Google dope le noyau de votre smartphone avec AutoFDO

Android Digital World

AutoFDO est en cours de déploiement sur les branches android166.12 et android156.6, et prévu pour android176.18

Le cœur d’Android s’apprête à recevoir l’une de ses plus grosses mises à jour de performance depuis des années. Google va en effet déployer une série d’optimisations directement dans le noyau (kernel) du système, grâce à une technologie de compilation baptisée AutoFDO, déjà utilisée dans Linux, Chrome et les centres de données de la firme. L’objectif : rendre les smartphones plus réactifs, plus fluides et plus économes en ressources, sans que l’utilisateur n’ait rien à faire.

AutoFDO, l’optimisation qui s’adapte à l’usage réel

AutoFDO, pour Automatic Feedback‑Directed Optimization, n’est pas une nouvelle invention, mais c’est la première fois que Google l’implémente de façon massive dans le noyau Android. Jusqu’ici, le code était optimisé de manière « théorique », à partir d’indices statiques fournis au compilateur, qui ne reflètent pas toujours la manière dont les smartphones sont réellement utilisés.

Avec AutoFDO, Google change de philosophie :

  • le système observe comment le processeur exécute vraiment le code, quels chemins sont les plus fréquents, quelles fonctions sont les plus lourdes ;
  • ces données sont ensuite remontées au compilateur (LLVM/Clang) pour réorganiser le code afin de mieux tirer parti du cache processeur et de réduire les erreurs de prédiction de branche.
Les tests et mesures d’AutoFDO ont été effectués sur des smartphones Pixel, avec des noyaux 6.1, 6.6 et 6.12

Concrètement, le compilateur apprend des usages réels, puis ajuste le code pour que les parties les plus utilisées soient les plus rapides à exécuter. Dans le cas du noyau Android, Google précise que ces profils ne sont pas collectés au hasard, mais générés en laboratoire en faisant tourner des charges représentatives, notamment les 100 applications les plus populaires.

Google rappelle que le noyau représente environ 40% du temps CPU sur Android. En d’autres termes, chaque gain de performance à ce niveau se répercute sur l’ensemble de l’expérience : lancement des apps, navigation dans l’interface, gestion des entrées/sorties, communication entre les composants système, etc.

Plusieurs sources évoquent d’ores et déjà une expérience « plus fluide » et une impression générale de vitesse accrue, même si les gains de 2 à 4% peuvent sembler modestes sur le papier. C’est précisément le type d’optimisation qui se ressent au quotidien, dans la somme de micro‑latences supprimées plutôt que dans un grand effet « wahou » immédiat.

Quand pourrez-vous en profiter ?

AutoFDO pour le noyau est en cours de déploiement sur les branches android16‑6.12 et android15‑6.6, utilisées par les versions récentes d’Android, et sera également intégré à la future branche android17‑6.18. À mesure que les mises à jour seront adoptées par les fabricants, ces optimisations arriveront progressivement sur les nouveaux modèles, puis sur certains appareils existants via des mises à jour système.

Google ne compte pas s’arrêter là : la firme veut étendre l’usage d’AutoFDO à davantage de parties du noyau, ainsi qu’aux drivers matériels ajoutés par les constructeurs (appareil photo, modem, etc.). À terme, c’est l’ensemble de la pile Android qui pourrait bénéficier de ce pilotage fin, guidé par les usages réels.

Pierre Ouédraogo


En savoir plus sur Digital Magazine Burkina

Subscribe to get the latest posts sent to your email.

Laisser un commentaire