Pourquoi la transition vers des Mac ARM est inévitable

Christophe Laporte |

Plus de dix ans sans transition. Quand on connait l’histoire du Mac, on sait qu’Apple fait de temps en temps des choix radicaux pour ses ordinateurs : des Mac 68k au PowerPC, du PowerPC aux puces Intel…

Sommes-nous à l’aube d’une nouvelle transition ? La documentation d’Apple mise à disposition des développeurs peut le laisser penser. La firme de Cupertino a pour habitude de lister toutes les différences en ce qui concerne ses API d’une version à l’autre (un procédé courant). Dans celle relative au Kernel de Sierra, Apple a ainsi retiré plusieurs références à d’anciens processeurs Intel qui ne sont plus gérés par macOS comme les puces Merom. Jusque-là, rien de bien surprenant. La vraie surprise est de constater que tout en dessous, on voit qu’elle a ajouté la prise en charge de la famille de processeurs ARM Hurricane. Ce n’est pas une puce connue, sans doute un nom de code. Hurricane signifie en anglais, rappelons-le, ouragan. Voilà qui a le mérite d’être clair.

En tout cas, comme le note iDownloadblog, ce nom de code colle bien avec les noms de code des anciennes puces d'Apple. Le petit nom de l'A7 était Cyclone, A8 Typhoon et A9 Tornade. Hurricane serait le nom de code de l'A10, d'après Hardware.fr, qui s'appuie sur les découvertes de Chipworks qui a l'habitude d'autopsier les composants des nouvelles puces d'Apple.

Qu’Apple étudie la possibilité de produire des Mac ARM, cela n’a rien d’étonnant. Cela fait maintenant quelques années qu’elle explore cette possibilité comme elle l’a fait en d’autres temps pour d’autres architectures. Mais va-t-elle passer à l’acte ?

Le très réputé Ming-Chi Kuo tablait sur de tels ordinateurs pour 2016 ou 2017 (lire : Mac ARM : dans les deux ans avec un processeur A10X ?). A l’époque, il estimait que l’A10X pourrait être le futur moteur d'un Mac ARM. Avec le recul, ses propos sont très intéressants. Les tests effectués il y a quelques jours avec Geekbench montraient que le processeur A10 Fusion de l’iPhone 7 n’avait plus grand-chose à envier en termes de puissance brute à un MacBook Air. Alors certes, Geekbench ne reflète pas forcément la réalité, mais la dynamique et la montée en puissance penchent clairement pour le camp ARM.

Pour Apple, la difficulté est avant tout matérielle contrairement aux autres transitions. D’un point de vue logiciel, elle pourrait être plus indolore pour les développeurs. La compatibilité ne devrait pas être un problème. Apple maitrise les outils de développement (du langage de programmation aux API en passant par les compilateurs), elle contrôle la distribution avec le Mac App Store et a plus qu’un pied dans le monde ARM depuis maintenant une décennie ou presque.

Pourquoi le modèle d'Intel est dépassé

La difficulté pour Apple est d’être en mesure d’avoir dans ses cartons un processeur vraiment compétitif par rapport à ce que propose la concurrence. Sachant que la complémentarité logicielle / matérielle joue à plein et au vu des scores affichés par le processeur A10, cela n’a rien d’insurmontable. Dans un tel scénario, la grande force d’Apple serait de pouvoir concevoir un processeur vraiment taillé pour faire tourner au mieux la partie logicielle.

La fin de la loi de Moore offre des perspectives intéressantes comme l’explique le chercheur Mark Pesce sur The Register. Pour lui, l’actualité des processeurs ces dernières semaines se résume à trois points :

D’après Mark Pecse, la formule qui a fait le succès d’Intel ne fonctionne plus. La seule chose dont le monde a besoin, c’est : "toujours plus de transistors, et des transistors toujours plus petits". Cette formule a fait le succès de la plateforme Wintel, mais elle n’est plus pertinente à l’heure actuelle.

Ces cinq dernières années, Apple n’a eu de cesse d’avoir toujours plus de contrôle sur le matériel dans ses terminaux, et a amélioré de manière spectaculaire le niveau de performance de ses processeurs : un facteur de 12 sur ces cinq dernières années. Mais contrairement à Intel, cette progression ne vient pas du fait (ou pas seulement) de l'utilisation d'un nombre toujours plus élevé de transistors, lesquels sont toujours plus petits. Si ces puces progressent en efficacité, c’est parce qu’Apple utilise uniquement les transistors dont elle a besoin dans ses tablettes. Et c’est là où tout commence pour Apple.

Nous sommes entrés dans une ère où logiciel et matériel se confondent de plus en plus. La puce A10 est optimisée à fond d’un point de vue matériel pour travailler efficacement avec le noyau d’iOS sur la gestion d’énergie.

Pour le co-inventeur du VRML qui écrit de temps à autre pour The Register, le matériel va dans les prochaines années happer le logiciel. La frontière entre les deux sera de plus en plus ténue. Et cette maitrise du logiciel et du matériel, cette fusion même, est sans doute l’un des gros points forts d’Apple actuellement.

Pour le dire autrement et plus simplement, on entre dans l’ère du sur-mesure en matière de système-sur-puce, alors que jusqu’à présent, on faisait du prêt-à-porter.

Si Apple est sans doute en pointe dans le domaine, c’est loin d’être un cas isolé. De plus en plus d’acteurs s’y sont mis, notamment Microsoft et Google (lire : Comme Apple, Google voudrait son propre processeur).

Cette évolution explique sans doute le retournement d’Intel cet été. Le géant des semi-conducteurs a annoncé son intention de fabriquer à nouveau des processeurs ARM pour les produits mobiles (lire : Intel va fabriquer des processeurs ARM pour les constructeurs de produits mobiles). Mais n’est-ce pas déjà trop tard ? Le risque pour Intel n’est pas de disparaitre, mais de devenir un vulgaire sous-traitant se pliant au cahier des charges de ses partenaires.

Enfin, si en 2017 on voit vraiment des Mac ARM apparaitre sur le marché, on comprendra rétrospectivement pourquoi 2016 a été si calme sur ce front chez Cupertino.

Tags
#ARM
avatar Pieromanu | 

@bonnepoire :
Je pense plutôt qu'un Mac ARM débuterait sur les portables d'entrée de gamme, le MacBook, le MacBook Air si il survit et peut-être le premier modèle de MacBook Pro. Le Mac mini souffre moins du manque de place et de refroidissement, alors il pourrait rester sur Intel. Mais il est vrai que le Mac mini partage souvent les configurations des portables...

avatar awk | 

@Pieromanu

"Le Mac mini souffre moins du manque de place et de refroidissement, alors il pourrait rester sur Intel. Mais il est vrai que le Mac mini partage souvent les configurations des portables..."

Tu imagines que cette transition si elle a lieu aurait pour moteur ce type de considération thermique ?

Tu passes à côté de l'essentiel.

avatar NORMAN49 | 

J'imagine que quitte à faire le saut, c'est l'ensemble de la gamme qui sera concerné.
La gestion d'un parc morcelé Intel ARM n'est absolument pas envisageable.

D'autre part, j'ai quand même du mal à croire que les ARM actuels soient de taille à lutter avec architecture Intel... spécialement sur les Mac de bureau.

Et on en revient au premier point ;-)

avatar awk | 

@NORMAN49

"La gestion d'un parc morcelé Intel ARM n'est absolument pas envisageable."

Je ne partage pas ton point de vue.

Les réalités de notre époques rendent bien moins complexe la gestion de cette hétérogénéité, de nombreux outils, les modes de distribution des logiciels, l'état de l'art du dev ... rende une cohabitation bien moins problématique qu'elle ne le fût dans le passé.

avatar bonnepoire | 

On aurait jamais du passer aux processeurs 64 bits d'ailleurs!

avatar awk | 

@bonnepoire

Ni au GUI, ni à quoi que ce soit ! Le changement c'est mal :-)

Depuis 40 ans je ne vois dans le secteur que des aversions au changement porté par quelques gardiens du temple très bruyants.

Mais au final, les chiens abois et la caravane passe :-)

avatar Karamazow | 

@blopi4 :
Ça me rappelle là fois où j'ai acheté mon premier Mac : un super PowerBook HD 15" (PowerPC G4 1,67 GHz) à 2100€ en octobre 2005... en janvier 2006 sortait le premier MacBook Pro (avec processeur Intel)

avatar pocketalex | 

@blopi4 : j'ai beaucoup, mais alors beaucoup de mal à envisager une transition x86 vers Arm

Certes, les benchs des CPU mobiles chatouillent les benchs des CPU des modèles entrée de gamme et ultra-portables. Mais est-ce comparable ? Rien n'est moins sur, en tout cas c'est à confirmer plutôt qu'a affirmer

Mais si le meilleur des ARM "s'approche" de moins bon des x86, il faut garder en tête que sur les gammes supérieures, je ne vois pas trop d'ARM concurrencer un i7 mobile, et encore moins un i7 desktop, et je ne parle même pas des Xeon des stations de travail

Or OS X est transversal à toute la gamme, du plus petit laptop taillé pour entrer dans un sac à main en toute discretion et légèreté, à la station de travail taillée pour monter en 4K, faire de la 3D, de la post-production, des traitements lourds, etc

Changer d'architecture matérielle implique de recoder les logiciels... ou de faire de l'émulation. Si Apple passait à l'ARM, ils feraient comment ? Sur toute la gamme comme auparavant ? Alors quid des machines pro, semi pro et des stations de travail ?

Sur une partie de ses gammes ? Les entrées de gammes, les machines "familiales" et les ultra-portables, par exemple. Il faudrait alors des apps compilées en fonction des machines ? Un Photoshop pour Arm et un pour x86 ? Houla...

Tout cela me semble bien compliqué, et il est important de rappeler que les G3 étalaient les 68xxx, et les x86 étalaient les G4/5, ce qui autorisait un changement d'architecture rapide et confortable (plus ou moins) sur toutes les machines, notamment grace à une émulation qui permettait cette transition en douceur.
A contrario, aucun ARM n'étale aucun modèles x86. Tout au mieux le meilleur ARM talonne l'entrée de gamme x86.

Pas gagné votre histoire, en tout cas pas dans un avenir proche. Peut-être dans un avenir pas trop lointain ?

avatar macinoe | 

Il n'y a pas trop de risques.

Tout ce dossier est basé sur une information mal interprétée ( et sur quelques fantasmes aussi )

"[MàJ] Visiblement, il n'y a rien de nouveau. Apple mettrait ainsi (dans un fichier complet non tronqué) toutes ses architectures ARM supportées en plus de celles d'Intel, les développements du noyau semblant être communs à iOS et macOS"

http://macbidouille.com/news/2016/10/04/il-y-a-un-peu-darm-dans-sierra

avatar CNNN | 

Question bête, le fait d'avoir un processeur ARM empêche l'utilisation des logiciels actuels ?

avatar awk | 

@CNNN

Evidement sauf émulation.

avatar IceWizard | 

@CNNN
"Question bête, le fait d'avoir un processeur ARM empêche l'utilisation des logiciels actuels ?"
Théoriquement, si le logiciel a été réalisé proprement avec Xcode, le développeur peut le recompiler d'un simple clic pour générer une version ARM. Reste à voir ce que cela donne en pratique .. Et si la version ARM d'un soft sera gratuite pour les clients l'ayant acheté en Intel.

avatar C1rc3@0rc | 

@IceWizard

C'est pas si theorique que cela, puisque aujourd'hui il y a une convergence entre les API de MacOS et iOS et que la base est a 95% la meme. Avec l'arrivée de Metal, il ne reste plus de grosse difference et les soft sont majortiairement independant de la plateforme.
Donc, oui en principe pour l'ecrasante majorité des soft une simple recompilation devrait suffire. Meme sur des gros truc comme Adobe, le fait est que les parties specifiques ont deja ete portée en bonne partie pour iOS...

Par contre il serait ettonant qu'Apple se relance dans l'emulation du code x86 sur ARM. Pas que ce soit impossible, puisque un processeur x86 c'est deja en gros une machine virtuelle qui tourne sur un processeur RISC, mais comme le microcode x86 est totalement proprietaire on aurait donc un etage redondant RISC ARM -> CISC x86 -> microcode RISC -> CISC x86 -> RISC ARM... Deja que l'architecture x86 est un gouffre energetique...

Donc la reponse a la question de CNNN c'est: non les softs actuels ne tourneront pas, mais la mise a jour devrait etre gratuite et tres rapide.
L'autre question qu'on pourait poser, c'est de savoir si les soft iOS tourneront sur MacOS. En principe non, puisque la grosse difference c'est l'interface. Mais dans les faits, il suffira que le developpeur fasse une interface MacOS et iOS et le reste tournera sans plus.
Donc au final, on devrait se retrouver avec une bibliotheque de soft assez impressionnante sur Mac.

Reste le probleme des "vieux" soft qui ne sont pas mis a jour depuis des lustres et des softs "exotiques" comme ceux en Java ou les "portages" directs de trucs Linux, la en clair c'est mort. Apres, il reste la virtualisation...

avatar awk | 

@C1rc3@0rc

Plus que d'accord avec toi sur le fais que la couche d'émulation ne devrait pas être à l'ordre du jour même si ce n'est pas pour les mêmes raisons : Portage aujourd'hui"hui plus facile, Distribution dématérialisée, Offre via le store ou par abonnement.

Les conditions me semblent remplis pour une transition n'impliquant pas une couche d'émulation qui ne fait au final que retarder l'adoption.

avatar IceWizard | 

@l'Orc
"C'est pas si theorique que cela, puisque aujourd'hui il y a une convergence entre les API de MacOS et iOS et que la base est a 95% la meme. Avec l'arrivée de Metal, il ne reste plus de grosse difference et les soft sont majortiairement independant de la plateforme."

Convergence c'est vite dis. Cela fait 3 ans qu'on attend la sortie de UXKit pour unifier les interfaces iOS et MacOS.

avatar protos | 

@C1rc3@0rc

"Deja que l'architecture x86 est un gouffre energetique..."

Ah bon, alors c'est pas bon pour le réchauffement climatique ! Il faut dire illico presto à Intel d'arrêter tous les ordinateurs à base de x86 !

lol...

avatar Ginger bread | 

@CNNN :
Souviens toi de la surface arm

avatar awk | 

@Yoskiz

C'est quoi un CPU parfait ?

Jamais vu ce truc !

avatar oomu | 

y en a dans Star Trek Next Gen.

avatar awk | 

@oomu

that's illogical

  ?

avatar ovea | 

@Yoskiz :
« … CPU pour Mac parfait … »
Pourquoi ne le serait-il pas déjà quand on capitalise sur la parfaite adéquation entre consommation et système (système de réécriture de surcroît, largement hérité de la programmation fonctionnelle)

avatar awk | 

Bon papier, j'adhère à cette opinion de ce caractère inévitable de la transition reste à en connaitre l'horizon.

La capacité d'Apple à proposer des offres se différentiant encore et toujours de celle de la concurrence, se heurte depuis maintenant quelques années aux entraves des limites de la vison d'Intel.

Cela libérerait la créativité, décuplerait la capacité de proposer une expérience utilisateur différentiante et accessoirement permettrait de retrouver un positionnement tarifaire un rien agressif.

Trop d'éléments sont en faveur de la transition au regard de ceux en sa défaveur, ce n'est qu'une question de temps.

avatar marc_os | 

Euh... C'est pas comme si le kernel faisait aussi partie de ... iOS qui tourne avec ... des processeurs ARM.
Rien d'étonnant donc à retrouver des références aux puces ARM dans le kernel de macOS aussi, pas besoin de tirer des plans sur la comète pour autant.

De plus, quid de bootcamp ?
Avec des Macs ARM, plus de Windows.
Pas sûr qu'Apple veuille y renoncer.

avatar awk | 

@marc_os

"Avec des Macs ARM, plus de Windows.
Pas sûr qu'Apple veuille y renoncer."

Si transition il y a, il serait assez étonnant qu'elle concerne l'ensemble de la gamme d'un coup.

Quant à BootCamp sa nécessité commerciale d'existé n'est plus aujourd'hui celle qui conduisit à sa création, il y'a dix ans, loin s'en faut.

avatar oomu | 

en milieu éducation, bootcamp aide énormément les étudiants à continuer d'acheter des macs.

Selon les programmes et lubies d'enseignant, un étudiant ne peut pas forcément éviter un logiciel windows. Bootcamp lui donne la flexibilité pour parer à tout.

avatar awk | 

@oomu

Attention je n'ai pas dit que cela ne servait plus à rien, mais que c'était moins fondamental qu'il y a dix ans, nuance ;-)

Après si transition il y a je serais fort étonné qu'elle concerne toute la gamme d'un coup, donc ceux ayant besoin d'un x86 trouveront encore leur bonheur.

avatar occam | 

@awk :

« Après si transition il y a je serais fort étonné qu'elle concerne toute la gamme d'un coup, donc ceux ayant besoin d'un x86 trouveront encore leur bonheur. »

Reste à savoir l'évolution que prendra macOS.
iOS-ification, convergence, fusion avec iOS à la clé ?
Connaissant Apple, je doute que sa clientèle historique (vieux briscard, j'en suis) nécessitant encore du x86 pur jus compte finalement pour grand-chose, le jour où la masse critique des apps prêtes pour une transition Intel —> ARM sera atteinte.

Je me demande même dans cette perspective si la « co-existence pacifique » qui s'est esquissée entre Microsoft et Apple depuis l'ère Nadella ne va pas évoluer vers un Yalta informatique tout court : trucks et poids-lourds servis par Microsoft ; Minis et scooters made and powered by Apple. Et le monde en partage.

avatar awk | 

@occam

Visions intéressante.

Aussi bien sur le mouvement de fusion des OS qui est déjà sur les rails que sur la répartition des rôles avec MS dont les emphases stratégiques marchent bien moins que beaucoup l'imagine sur les plate bande d'Apple

avatar JLG47_old | 

@oomu :
Ou la virtualisation, compte tenu de la puissance des machines.
Et pour le coup, le processeur importe peu.
Qui se souvient de Rosetta qui a permis une transition en douceur vers Intel?

avatar Lapin85 | 

Il existe déjà une version ARM de Windows 10

avatar awk | 

@Lapin85

Il y a eu W8 RT mais pas de W10 RT commercialisé

L'offre a été arrêtée en 2015

Porter un OS moderne sur une plateforme particulière n'est pas un grande défi.

Il est clair qu'Apple a dans ces labo un OS X sur ARM depuis bien longtemps

avatar protos | 

@awk

Oui, il existe déjà iOS 10 qui tourne sous ARM. On dit macOS X et non plus OS X

avatar awk | 

@protos

j'ai fait le chois de la dénomination OS X car elle accompagnait bien mieux le "pour longtemps" au passage c'est macOS tout court le X a disparu

avatar protos | 

@awk

Oui, c'est bien ce que je dis, c'est macOS et pas OS X. C'est même macOS Sierra en ce moment. Leopard il est mort et enterré de sa belle mort

avatar awk | 

@protos

S'il s'agit d'un culte religieux on ne peut que s'incliner religieusement et faire le silence ...

avatar cv21 | 

@Lapin85
Il me semble même que la version spécifique pour architecture Arm portait le nom de Windows RT.

Il me semble également qu'elle a été arrêtée, en partie en raison de l'incompatibilité des logiciels avec cette architecture (ce qui à mon avis ne dérangerait pas Apple !).

avatar awk | 

@cv21

Je faisais référence plus haut à l'arrêt de RT.

Une des forces d'Apple sur ce type d'enjeux est paradoxalement la relative faiblesse de l'offre logicielle sur Mac et sa relative homogénéité.

Il y a bien moins de trucs étranges en héritage que sur windows.

avatar occam | 

@cv21 :

Windows RT en pâture, il y a deux précédents :
• Windows NT pour PPC, lancé avec tambours et trompettes, puis arrêté subitement ;
• Windows NT pour DEC Alpha, lancé en fanfare sur emulation layer 32-bits (Alpha étant un processeur 64 bits) avec la promesse d'un transition path, abandonné après NT 4.0 SP6 (ce qui mit le bordel dans le centre IT où je travaillais, où tout était DEC).

avatar awk | 

@occam

C'était une époque amusante on s'émerveillé d'un rien :-)

Dans le genre tu oublis NT sur EPIC IA 64 Itanium)

J'ai même vue NextStep sur RS/6000 :-)

Et l'arrivée de Solaris sur x86, ou celle de BeOS ...

C'était une époque sympa avec ce foisonnement de projets plus ou moins foireux : l'OSF, Taligent ...

avatar Mrleblanc101 | 

@Lapin85

Oui mais incompatible avec la version Intel...

avatar awk | 

@marc_os

Par contre je partage avec toi la relativisation de la portée de cette définition dans un include qui me semble franchement sur-interpétée

avatar Moebius13 | 

Oui enfin c'est oublier que les processeur X86 gèrent des jeux d'instructions que ne gèrent pas les processeurs ARM et le jour où on pourra faire de la virtualisation sur un soc A XX n'est pas arrivé. Pour faire tourner un MacBook Retina, de l'Internet, des mails et de la bureautique de base ok ça peut le faire mais au delà j'ai encore des doutes (si l'enveloppe thermique d'un i7 est plus élevé qu'un A9X ou un A10 ça n'est pas pour des prunes).
Le problème de l'informatique sur mesure c'est qu'il réduit le champ des possibles sur une machine alors que sur X86 même si on ne l'exploite pas tous on peut faire infiniment plus. Mais c'est mon avis personnel hein

avatar awk | 

@Moebius13

"Pour faire tourner un MacBook Retina, de l'Internet, des mails et de la bureautique de base ok ça peut le faire"

Tu viens de décrire les usages de la plus grande part de la base installée ;-)

avatar Benitochoco | 

Pour les particuliers le passage à ARM est transparent. Néanmoins pour les entreprise ça peut piquer un peu, surtout que Apple fait tout pour percer à nouveau dans ce monde. Ma théorie, il y aura deux solutions (hardware), ultra mobile ARM pour rester connecté et une gamme pour le travail inchangée Intel.

Certes en mono l'ARM est excellent, voir aussi bien que beaucoup de Xeon en mono. Mais pour d'autres tâches plus intensives, les processeurs que ce soit chez Intel, ou chez ARM sont exactement au même point (consommation, charleur, etc.) Les deux ont des avantages, et des inconvénients.

avatar awk | 

@Benitochoco

"Néanmoins pour les entreprise ça peut piquer un peu"

Sachant que les entreprises basculent de plus en plus vite sur le modèle d'abonnement au logiciels ce sera transparent.

Sur les applications spécifiques d'entreprise cela basculé de plus en plus sur un modèle basé sur le web.

Ne reste pas beaucoup de freins.

avatar Alim | 

@benitochoco

Je suis d'accord avec ton analyse.

avatar Biking Dutch Man | 

@Moebius13 :
Assez d'accord, oui pour un arm sans un mac book air amélioré mais je suis très très content de mon quadcore i7 dans mon Mac mini!

avatar ovea | 

@Moebius13 :
« on peut faire infiniment plus »
Justement, non car il s'agit de mieux anticiper chaque utilisation ! On a que peut besoin de l'infini …

On ne peut plus juste se reposer sur les bifurcations dans des programmes reposant sur les optimisations figées dans un processeur, à l'heure où les systèmes fonctionnels d'optimisation sont plus proche du temps réel que jamais (pour juste évoquer la maîtrise de l'évolution dans la compréhension de la complexité des machines virtuelles)

On peut même considérer que le chemin d'optimisation de l'ensemble du système conduise à des optimisations différentes pour des profils utilisateurs différents.

avatar Mrleblanc101 | 

@Moebius13

Qui a parler de mettre une simple puce de iPhone dans un Mac ?! Apple a bien les moyen de créer un processeur ARM pour portable surtout quand on sais la différence de TDP entre un A10 et les i5 28W des MacBook Pro... ou alors Apple pourrait mettre 2 ou 4 A10 optimiser pour fonctionner en tandem

Pages

CONNEXION UTILISATEUR