Depuis quelques années, les rumeurs sur un passage des processeurs x86 (Intel, plus exactement) aux processeurs ARM – Apple, même – sortent régulièrement. Catalyst, les évolutions de macOS, celles de l’iPad et plus généralement l’écosystème Apple tendent vers ce point, mais sans rien de véritablement concret en 2019. Mais la sortie du Mac Pro n’amène pas franchement un signal fort pour un abandon rapide du x86 dans les Mac, surtout avec le support actuel d’Apple. Sortir un Mac de ce type en 2019 implique au moins une chose : même si les Mac ARM arrivent rapidement, les deux architectures risques de cohabiter pendant un moment.
Pourquoi passer sur du ARM ?
La question est intéressante. Actuellement, les Mac semblent dans une impasse technologique pour différentes raisons. Je mets semblent parce qu’il s’agit d’un point de vue subjectif, forcément : les fabricants de PC, avec les mêmes contraintes, choisissent d’autres voies. Premièrement, parce qu’Intel a de gros problèmes : l’architecture n’a pas évolué réellement depuis 2015 avec Skylake. Un MacBook Pro de 2019 (ou même un Mac Pro) a plus de coeurs et une fréquence plus élevée qu’un 2016, mais ce sont des paramètres d’ajustement, c’est le même processeur, avec juste une partie graphique un rien meilleure un peu moins nulle. C’est le cas de tous les CPU Intel actuels et c’est un problème : les performances n’évoluent pas à fréquence identique, donc il faut augmenter le nombre de coeurs ou la fréquence, dans les deux cas au détriment de la consommation. Apple peut jouer sur le fait que ce que la société met en avant pour les professionnels, notamment le traitement vidéo, tire bien parti de ces deux points, mais ça reste un problème. Typiquement, Apple ne peut pas proposer un MacBook vraiment compétitif parce qu’Intel n’a pas de CPU vraiment meilleur qu’en 2015.
Les Mac souffrent aussi d’un problème au niveau des GPU, mais c’est de la faute d’Apple. La société reste sur des GPU AMD qui évoluent peu et consomment beaucoup. nVidia fait des puces plus rapides et qui consomment moins, mais Apple reste avec AMD. Je ne connais pas la raison (on la découvrira sûrement un jour), on peut supposer que nVidia est une partie du problème, mais le fait est que rester sur de l’AMD limite pas mal de choses. Même avec le boulot qu’Apple fait sur les pilotes et avec les cartes custom qu’AMD fabrique pour Apple, ça reste un problème. De ce qu’on sait de Navi (RDNA, Radeon RX 5700, ça sort bientôt), la nouvelle architecture n’est pas la solution. AMD n’a rien montré pour les PC portables, et si ça remplace avantageusement le Polaris (RX 580) du Mac Pro (ou des iMac), ça reste reste a priori en retrait au niveau de la consommation.
Enfin, les Mac souffrent de certains choix d’Intel, notamment sur le support de la mémoire. Certains Mac utilisent encore de la LPDDR3 ou de la DDR4, alors qu’ils devraient utiliser de la LPDDR4. C’est de la faute d’Intel. Certaines évolutions qui semblent naturelles du côté des iPad n’arrivent pas sur les Mac parce qu’Intel ne peut pas (ou ne veut pas) le faire. On peut parler des écrans à rafraîchissement variables, des hautes définitions, du support natif de l’USB à 10 Gb/s, etc.
Le passage sur du ARM règlerait une partie des problèmes. Même en prenant en compte uniquement l’Apple A12 (la puce de 2018), Apple arrive à proposer un CPU plus rapide à fréquence identique que les Skylake (et dans certains cas, de façon très nette), avec une évolution par an qui apporte des gains significatifs et l’intégration de technologies modernes (LPDDR4, etc.). Le tout, sur des plateformes grand public, avec une consommation nettement plus faible que ce que propose Intel. Pour se donner une idée, avec une consommation maximale aux alentours de 10 W, Apple arrive à proposer une puce avec huit coeurs (dont quatre rapides) et un GPU plus rapide que ce que proposaient les MacBook Pro 15 pouces de 2013 ou 2014. En comparaison, un MacBook Pro 13 pouces actuels à un CPU qui consomme jusqu’à 28 W. La seule inconnue actuelle, c’est la montée en charge des puces. Un A12X consomme beaucoup moins qu’un CPU de MacBook Pro pour des performances au minimum équivalentes (et plus élevées dans pas mal de cas), mais c’est un CPU avec quatre coeurs (les coeurs basses consommation sont négligeables) et un GPU impressionnant pour la consommation, mais limité dans l’absolu. Je ne sais pas si la même puce avec huit coeurs et un GPU au moins doublé, pour arriver au niveau de la Radeon Polaris des MacBook Pro 15 pouces, garderait les mêmes avantages de consommation. Ni même si Apple peut proposer une version avec beaucoup plus de coeurs facilement. Parce qu’un A12X a le défaut d’être assez gros : 122 mm2 en 7 nm, pour quatre coeurs (huit en réalité, mais les coeurs basse consommation, ici aussi, sont négligeables sur ce point) et un GPU, quand un Core i7 moderne fait la même taille en 14 nm.
En tout cas, d’un point de vue grand public, on peut parfaitement remplacer les composants d’un MacBook Pro ou Air tout en gardant des performances du même ordre et en gagnant en autonomie de façon significative.
Pourquoi ne pas passer sur ARM ?
Maintenant, une transition de ce type va poser des problèmes. Enfin, surtout un problème. La compatibilité. Changer d’architecture implique de recompiler tous les programmes (Apple semble travailler sur ce point) et de pouvoir exécuter tous les anciens programmes de façon efficace. Très clairement, passer sur du ARM maintenant ne permettrait pas ce point. L’exemple des PC portables sous Windows ARM est éloquent : si c’est vaguement utilisable avec des logiciels ARM, c’est horrible à l’usage avec des logiciels x86. Même du temps du passage PowerPC vers x86, avec un gain important, les applications PowerPC restaient lentes. De plus, passer en ARM supprime de facto la virtualisation et la possibilité d’installer Windows, qui reste une chose qui rassure pas mal de gens et qui sert énormément à une partie des autres. Je sépare volontairement les deux car mon expérience me montre que la possibilité d’installer Windows et de virtualiser rassure vraiment au moment du passage sur Mac, mais que dans la pratique, ça reste assez rare de le faire.
Une cohabitation qui pourrait être longue
La sortie du Mac Pro 2019, je reviens au début, montre que la cohabitation devrait être longue. Apple supporte ses machines plusieurs années, et on peut considérer que sur un Mac de ce prix, on ne devrait pas descendre en dessous de 6 ou 7 ans. Ce qui implique – dans le meilleur des cas – que macOS tournera sur x86 au moins jusqu’en 2025. Ce n’est pas nécessairement une bonne nouvelle, d’ailleurs : développer pour deux architectures limite clairement les possibilités sur la prise en charge des nouveautés. Après, Apple peut faire la même chose que pour les PowerPC : l’annonce du passage au x86 date de juin 2005, les premières machines sont sorties en janvier 2006, le premier OS uniquement x86 en septembre 2009 (à peine quatre ans, donc) et le support PowerPC a été abandonné en juillet 2011 (6 ans). Le Mac Pro est peut-être une sorte de Power Mac G5 Quad : une machine surpuissante pour son époque et onéreuse (3 400 € en 2005), une sorte de baroud d’honneur. Mais bon, même en prenant le calendrier du PowerPC, ça laisse encore quelques années de cohabitation. Et Apple n’a de toute façon pas formellement annoncé l’abandon du x86.
La réponse viendra toute seule lorsque nous n’aurons plus que des terminaux connectés à des datacenters :)
Merci pour cette analyse très intéressante !
Je pense que Apple ne veut plus faire des affaires avec NVIDIA dû en partie aux déboires avec le fabriquant de puces de l’époque des MBP Santa Rosa. De plus, AMD a toujours fait preuve d’une grande flexibilité vis-à-vis de leurs pilotes et architectures. NVIDIA ne veut pas qu’on bidouille avec leur hardware, il suffit de regarder leur comportement à l’égard de l’open-source. AMD par contre va s’arranger avec Microsoft, Sony et Apple pour donner le hardware qu’ils veulent, comme ils le veulent. Polaris avec 40 CU? Bam, Xbox Scorpio. Deux MI60 sur un même PCB? Bam, Radeon Pro Vega II Duo.
NVIDIA ne sont pas les partenaires les plus commodes non plus. Il suffit de regarder leurs embrouilles avec Tesla ou avec Intel. C’est sûr, ils ont l’avantage d’avoir l’architecture la plus avantageuse au niveau de la performance par watt, encodeur vidéo (NVENC est génial) et fonction fixées (coeurs RT et Tenseur) mais ça ne fait pas tout quand c’est impossible de faire du business avec vous.
J’ai une carte NVIDIA (TITAN X) qui me sert à bidouiller avec CUDA, mais le plus vite ROCm (open-source) remplace le bazar à grande échelle, le mieux ce sera. Ne pas avoir la possibilité de faire tourner du code CUDA sur les cartes AMD est ennuyeux, et ROCm est agnostique (tourne sur les deux). Mais AMD est une petite entreprise, et ils n’ont plus fait grand chose niveau GPU vu qu’ils ont tout investi dans leur branche CPU (ce qui a l’air d’avoir bien valu le coup). Faut maintenant voir s’ils arriveront à suivre niveau développement logiciel pour leurs GPUs afin d’offrir un compétiteur réel à CUDA (car leur matos tient la route, il suffit de voir comment la Radeon VII dépasse la 2080Ti sur des charges de travail comme DaVinci Resolve).
Oui, enfin les 8600M c’est y a plus de 10 ans :o
Et depuis, AMD a eu aussi des soucis (cf. les MacBook Pro de 2011)
C’est vrai, je te l’accorde, mais je PENSE (prends avec des pincettes) que NVIDIA avait rejeté la faute sur Apple et pas voulu coopérer pour les réparations. Maintenant ils ont fait des iMac avec des 780M 5 ans plus tard donc je ne sais point trop, et je n’ai aucune idée sur comment Apple a géré l’histoire des MBP 2011 avec AMD non plus…
Pour avoir eu un iMac 24″ avec une carte NVIDIA intégré. Je ne suis pas comptant au niveau de la fiabilité de leur carte et je ne suis pas le seul. La réparation a tenu tous juste 6mois. Problème de soudure CMS sur le processeur. Même des PC portable on eu des problèmes de fiabilité avec les version mobile de NVIDIA. Le problème c’est que les Mac ont une durée de vie plus importantes que des PC Portable. Cela m’a obligé de changer de mac plus tôt que je voulait. Et j’ai délaissé les tous intégrés pour un Mac Mini avec des écrans externes.
Donc, je pense qu’il y a des différents financier avec NVIDIA et Apple depuis ces problèmes et que AMD est plus intéressant financièrement pour Apple.
Après quand on regarde on niveau technique, on se retrouve dans une situation similaire a Airbus et Boeing quand Airbus a lancé les commandes tous électrique et d’autres innovations. Nvidia est leader, mais AMD a introduit de nouvelle technologie qui a terme leur laisse plus de marge d’évolution alors que Nvidia se repose sur des technologie éprouvé mais qui risque de le laisser dans une situation difficile quand il ne pourra plus les faire évoluer.
@alphaLONE :
l’ouverture d’AMD a ses partenaires, c’est une chose, et c’est un bon moyen de survivre. Mais la Radeon VII, c’est pas un argument : c’est une carte Pro vendue dans le grand public, à un prix grand public (enfin, plus ou moins) mais pas bridée comme elle devrait. Elle vise les « prosumer » parce qu’en jeux, elle tient pas la route. Elle a par exemple 1/4 de ses perfs en double précision alors qu’au départ, elle devait être à 1/16 (comme les cartes grand public en général). Mais c’est juste un artifice pour intéresser les professionnels.
@hle
Le problème, c’est pas Nvidia. Le problème, c’est Apple. La majorité des Mac avec une carte dédiée (Nvidia ou AMD) a des soucis de GPU parce qu’Apple refroidit pas correctement pour garder du silence. Les quelques modèles qui n’ont pas ce souci, soit ils ont une carte franchement légère (les MacBook Pro actuels par exemple) soit un GPU bien ralenti. Le cas typique, c’est les 2012 : le Pro classique et le Retina ont le « même » GPU (GeForce 650M) mais y a que les Retina qui ont des soucis… parce que dans les autres la carte tourne moins vite.
L’analyse sur AMD et Nvidia est fausse, tout simplement. Ce qu’amène AMD permet pas vraiment plus de marge, et Nvidia ajoute plus de technologies innovantes (genre RTX ou les unités d’IA). Ils ont une avance technologique certaine. Le cas de Navi (Radeon RX 5700, ça arrive) montre bien le problème : AMD a des choix plus pragmatique (pas de nouvelles technologies) donc une puce plus petite. Et même comme ça, et avec une gravure nettement meilleure (7 nm vs. 12 nm), on se retrouve avec une puce qui consomme plus pour des performances équivalentes à la RTX 2070. Sans les nouvelles technos.
Dans les GPU, depuis quelques années, ils essayent de survivre (et c’est déjà pas mal), mais Nvidia a une avance certaine. Et l’arrivée d’Intel va pas aider.