Ouvrir le menu principal

WatchGeneration

Recherche

Series 4 : la transition vers le 64 bits facilitée par Bitcode ?

Nicolas Furno

mardi 02 octobre 2018 à 09:30 • 5

Apple Watch

Les Apple Watch Series 4 sont les premières à exploiter un processeur 64 bits, après plusieurs générations à 32 bits. En général, ce changement nécessite que les apps soient compilées à nouveau à partir de leur code source, pour que le fichier créé à cette occasion fonctionne correctement sur la nouvelle architecture. Les développeurs d’app watchOS n’ont rien eu à faire toutefois, leurs apps ont fonctionné dès le premier jour sur la nouvelle montre, et sans aucune intervention de leur part.

La transition a été totalement transparente pour les développeurs. Si Apple n’avait pas indiqué le passage au 64 bits dans la conférence de septembre, on ne l’aurait pas su avant les premières analyses et démontages. Cette transition transparente n’a pas été expliquée par le constructeur, mais elle trouve probablement son origine dans une fonction introduite en 2015 : le Bitcode.

Traditionnellement, les développeurs écrivent le code source de leur app sur un Mac, ils compilent ensuite une app prête à emploi sur cet ordinateur et envoient ce fichier à Apple. Charge ensuite à l’entreprise de distribuer cette même app aux utilisateurs, via les serveurs de l’App Store. Le BitCode ajoute une étape intermédiaire à ce processus : au lieu d’envoyer une app, les développeurs envoient un Bitcode. Ce fichier contient tout ce qu’il faut pour créer une app, mais ce n’est pas une app prête à installer. Les serveurs d’Apple se chargent alors de la compilation et distribuent les fichiers aux utilisateurs via l’App Store.

Le Principe du Bitcode : au lieu de soumettre une app prête à l’emploi à Apple (icône violette complète), les développeurs envoient un Bitcode (icône en partie violette) qui sera compilé par les serveurs de l’App Store (au milieu). Extrait du State of the Union 2015.

Ce fonctionnement apporte plusieurs avantages à Apple, qui peut optimiser les apps en fonction des architectures de ses processeurs. Dans une interview sur le podcast ATP, Chris Lattner, le créateur de Swift chez Apple, donnait quelques exemples de ce que l’on pouvait faire avec le Bitcode. Par exemple, le processeur de l’iPhone 5 avait ajouté une instruction spécifique qui permettait d’améliorer les performances et si Apple utilisait le Bitcode à l’époque, elle aurait pu optimiser les apps sans intervention des développeurs.

Dans cette même interview, il indiquait que cette fonction ne pouvait pas tout faire. Le Bitcode ne pourrait pas assurer une transition majeure, par exemple de x86 à ARM, ni même passer de 32 à 64 bits, puisque cela implique de modifier le code source de l’app, ce qui n’est plus possible à ce stade. Dès lors, comment expliquer qu’Apple ait pu l’utiliser pour l’Apple Watch Series 4 et son processeur 64 bits ?

On sait que le processeur dual-core intégré à la puce S4 reprend l’architecture de l’Apple A12 qui équipe les iPhone de 2018. Plus précisément, on sait qu’il s’agit de deux cœurs « Tempest », utilisés sur les iPhone en guise de cœurs économes. En revanche, watchOS reste un système 32 bits dans ses fondations, essentiellement pour limiter sa consommation énergétique. Pour être précis, les apps watchOS 5 sur la Series 4 utilisent l’architecture arm64_32 qui permet de faire tourner du code 32 bits sur un processeur 64 bits.

Si la consommation énergétique a certainement été un facteur dans la décision, on imagine que la possibilité d’utiliser Bitcode pour adapter toutes les apps sans intervention des développeurs a été une motivation importante pour Apple. Le jour où watchOS passera entièrement en 64 bits, il faudra compiler à nouveau toutes les apps, mais le constructeur a le temps de prévoir cette transition et de prévenir en avance, comme il l’avait fait pour iOS.

Le Bitcode est obligatoire depuis le premier jour pour watchOS, ce qui explique aussi la transition simplifiée. Pour les apps iOS, chaque développeur choisit pour le moment de l’utiliser ou d’en rester à la méthode traditionnelle, avec compilation en local d’une app. On imagine qu’un jour, Apple obligera tous les développeurs à utiliser cette solution…

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner

Apple Watch : quel type de cadran a votre préférence ?

14:40

• 22


Bragi s’associe à OpenAI pour caler une IA générative dans vos oreilles

09:21

• 2


Une déclinaison spéciale MacGeneration pour l'iPhone 17 Pro ?

06:52

• 50


Un nouveau firmware bêta pour les AirPods Pro 2 et AirPods 4

29/07/2025 à 22:45

• 11


Soirée mise à jour chez Apple : iOS 18.6, iPadOS 18.6, macOS 15.6, watchOS 11.6 et cie sont disponibles au téléchargement

29/07/2025 à 19:19

• 28


Meta n’aurait pas abandonné l’idée d’une montre connectée équipée d’une caméra

29/07/2025 à 11:49

• 10


Des clichés supposés de l’iPhone 17 Pro font surface

29/07/2025 à 07:20

• 50


AirPods : dites adieu au basculement automatique intempestif grâce à iOS 26

29/07/2025 à 06:50

• 14


watchOS 26 : quand Workout Buddy, le coach d'Apple, hallucine

28/07/2025 à 18:15

• 6


La montre Core 2 Duo devient officiellement la Pebble 2 Duo

28/07/2025 à 11:30

• 7


Recyclez votre processeur M1 Pro en barrette à cheveux

28/07/2025 à 09:35

• 9


iPhone 17 Pro : un indic’ évoque des nouveautés majeures côté caméra

28/07/2025 à 09:05

• 48


À contre-courant : pourquoi Stéphane ne porte pas d’Apple Watch

27/07/2025 à 21:26

• 76


La version Mac de Cyberpunk 2077 analysée par des spécialistes des jeux vidéo

26/07/2025 à 16:23

• 108


Mode difficile ? Un joueur remporte le dernier niveau de Genshin Impact sur une Apple Watch Ultra

25/07/2025 à 20:30

• 7


Promo : jusqu’à 41 % de remise sur d’élégants bracelets Fossil

25/07/2025 à 16:02

• 8