Le passage de la machine virtuelle Dalvik vers ART dès Android 5.0 figure parmi les principales annonces de la Google I/O.
Compilation AOT
Google devrait opter pour le moteur d’exécution ART, Android RunTime, au sein de la prochaine version d’Android. Disponible sur Android KitKat (4.4) en version expérimentale pour les développeurs, ART n’a cessé d’être amélioré est devrait être le moteur d’exécution par défaut sur Android 5.0. Cette nouvelle machine virtuelle va donc ainsi remplacer Dalvik sur le système d’exploitation dans l’exécution des applications.
La principale nouveauté avec ART réside au niveau de la compilation de l’application, le nouveau système logiciel utilisant une compilation dite AOT (Ahead-of-Time) contre la compilation JIT (Just-in-Time).
Concrètement, les applications sont jusqu’ici compilées à la volée, c’est-à-dire que Dalvik produit un code intermédiaire entre la machine et l’application lors de son exécution.
C’est ce qui explique la lenteur au démarrage et des problèmes de performance sur certaines d’entre elles. Sur ART par contre, la compilation se fait dès l’installation de l’application. Le code intermédiaire est ainsi enregistré en code natif dans le mobile. De ce fait, il ne sera plus compilé à chaque exécution et le démarrage se fera plus rapidement.
Gain en performance
Android RunTime promet donc un gain de performance couplé à une interface plus réactive. De son côté, le CPU sera moins sollicité, ce qui va se traduire par davantage d’autonomie de la batterie. Néanmoins, il faudra s’attendre à une installation plus longue depuis Google Play. Par ailleurs, il devrait être plus facile de lancer plusieurs applications à la fois, car l’exécution d’un programme consommera moins de mémoire vive.
Google travaille depuis des années sur les problèmes de performance des applications Android dont les interfaces ont jusqu’ici été jugées moins fluides que sur les systèmes d’exploitation concurrents. C’est essentiellement pour cela que le moteur d’exécution ART a été proposé en test aux développeurs depuis l’année dernière.
Toutefois, de nombreux problèmes devront être résolus avant d’utiliser ART comme machine virtuelle par défaut. Premièrement, les fabricants de Smartphones devront apporter des réglages dans les ROM de leurs appareils tandis que les développeurs devront adapter leurs applications.