Infobidouille

ART va bien remplacer Dalvik dans Android

Introduite dans Android 4.4 sous forme d’une option dans le menu développeurs, la nouvelle machine virtuelle Android RunTime (ART) devrait bien devenir la machine virtuelle par défaut du système dès la prochaine version, en remplacement de Dalvik.

Même s’il n’y a pas encore eu de communication officielle à ce sujet, c’est en tout cas ce que laisse entendre l’analyse des dernières modifications dans le code source d’AOSP : un développeur de chez Google a modifié la configuration par défaut dans le code source.

Présumée basée sur le travaux de Flexycore, une startup bretonne rachetée par Google en 2012, la machine virtuelle ART repose sur un nouveau mode d’optimisation du code : plutôt que de le convertir dynamiquement en code machine lors de l’exécution, comme le fait Dalvik, ART analyse le code de l’application dès son installation, effectue toutes les optimisations possibles en fonction de la configuration matérielle de l’appareil et enregistre le code machine ainsi obtenu pour l’utiliser lors de l’exécution de l’application.

Les gains ainsi obtenus peuvent être importants. Un test publié il y a quelques mois montrait par exemple des gains de l’ordre de 30% sur des opérations de tris sur des tableaux d’entiers :

ART 1 – 0 Dalvik

Malheureusement, dans d’autres tests, c’est plutôt Dalvik qui a l’avantage, même si c’est avec un écart largement moindre :

ART 1 – 1 Dalvik (Source : John Miller)

Certaines applications souffrent également de dysfonctionnements lorsqu’elles sont utilisées avec ART, tandis que certaines de fonctionnent carrément pas du tout… Espérons donc que Google officialise assez rapidement la bascule vers ART, pour que les développeurs se mettent au travail au plus vite pour s’assurer de la compatibilité de leurs applications avec cette nouvelle machine virtuelle.