Google vient de publier son NDK 64 bits basé sur Android L Preview à destination des processeurs x86. L’objectif : permettre aux développeurs de tirer partie des processeurs 64 bits d’Intel sur leurs applications pour la future version du système d’exploitation de Google.

intel 64 bits

Avant de rentrer dans le vif du sujet, il convient de clarifier un peu la situation. Les développeurs qui codent en java – un langage utilisé par la majorité des applications – utilisent le SDK d’Android et les applications sont ensuite exécutées par la machine virtuelle (ART ou Dalvik) d’Android. Ils n’ont donc pas la nécessité d’adapter leur code aux différents processeurs, la machine virtuelle s’en chargeant pour eux. En revanche, les développeurs utilisant le NDK codent en langage natif et l’exécution de l’application ne passe pas par la machine virtuelle, obligeant alors les développeurs à tenir compte des spécificités des processeurs. Et Google vient justement d’annoncer que le NDK pour Android L a subi une mise à jour pour supporter les processeurs x86-64, c’est-à-dire ceux d’Intel puisqu’aucun autre constructeur ne produit de puce x86-64 pour Android (les puces ARM se basant sur le jeu d’instruction ARMv8).

En pratique qu’est-ce que cela signifie ? Que les développeurs vont pouvoir prendre de l’avance pour rendre compatibles leurs applications avec le fonctionnement 64 bits des processeurs Intel, et tirer partie des avancées apportées par ce nouveau jeu d’instruction sous Android : accès à davantage de mémoire, registres plus grands et quelques améliorations issues du jeu d’instruction. Si les développeurs ne prennent pas la peine de réaliser ce travail, l’application sera alors lancée en mode 32 bits et ne profitera pas de ces avancées.

Concernant les processeurs ARM (la grande majorité des smartphones et tablettes Android), pour le moment Google n’a pas encore mis en ligne le NDK correspondant. Mais cela ne devrait pas tarder, ce qui permettra aux développeurs codants en langage natif de bénéficier des avancées du jeu d’instruction 64 bits, que ce soit sur les processeurs Intel mais aussi ARM. Encore un indice qui prouve qu’Intel fait tout pour prendre une place importante dans l’écosystème Android.

Pour rappel, dans la majorité des cas, les processeurs ARM 64 bits délivreront des performances supérieures à leurs homologues 32 bits du fait d’une architecture revue et plus performante, même avec une application 32 bits. En présence d’une application 64 bits, on devrait avoir des performances en hausse sur certaines applications. Android L sera la première version du système d’exploitation mobile de Google à supporter les jeux d’instructions 64 bits (ARMv8 et x86-64).