Depuis quelques jours, une actualité intéressante tourne : Apple pourrait passer aux processeurs ARM. Passons sur les problèmes de compatibilité et tout ce qui est lié pour nous concentrer sur un truc : le gain possible en autonomie. Comme ARM a une bonne réputation sur la consommation, on voit passer des fantasmes du genre « Un MacBook Air avec 30 heures d’autonomie ». Mais c’est un fantasme : passer sur une architecture ARM ne va pas faire exploser l’autonomie d’une machine…
L’idée reçue, c’est que les puces ARM consomme moins que les puces Intel. C’est globalement vrai, mais la différence pratique est assez ténue. Une puce basée sur un Cortex A7, l’entrée de gamme d’ARM, consomme peu, c’est évident, mais elle a les performances d’un Pentium III (et je suis gentil). A côté de ça, on a le processeur du Mac Pro et ses douze coeurs qui consomme 130 W.
Entre les deux, on a l’iPad Air (on va prendre un produit Apple), qui a deux coeurs à 1,4 GHz, un écran de 10 pouces et une batterie de 32 Wh. Autonomie annoncée ? 10 heures. Ca fait une consommation moyenne de 3,2 W environ, ce qui est correct. En usage lourd, l’iPad a tendance à ne plus charger (certains, comme l’iPad 3, vide même la batterie quand ils sont branchés) et donc la consommation doit être aux environs de 10 W (plus sur l’iPad 3).
Un MacBook Air 11 pouces de 2014 avec son processeur Intel (deux coeurs, Hyper-Threading, 1,3 GHz) et un écran de 11 pouces 16:9 (un peu plus de surface) a une batterie de 38 Wh pour une autonomie annoncée de 9 heures, soit une consommation moyenne de 4,2 W. En usage lourd, on monte nettement plus haut, ceci dit, avec environ 30 W en charge.
Globalement, la différence entre les deux est assez faible, et la part du processeur dans la consommation n’est pas énorme : on a l’écran (plus grand sur le MacBook Air, en surface), la mémoire de stockage, la mémoire vive (le MacBook Air a 4x plus de mémoire), etc. Pour les performances, c’est assez simple : sur GeekBench (ce n’est pas un exemple vraiment intéressant, mais il tourne sur les deux plateformes), le MacBook Air a pas loin de deux fois les performances de l’iPad Air sur un test sur un seul coeur. Le MacBook Air est aux alentours de 2 550, l’iPad vers 1 450. Sous Sunspider, un benchmark JavaScript, un MacBook Air a un score de 170 ms environ, un iPad Air aux environs de 390 ms. En gros, le meilleur processeur ARM actuel d’Apple est environ 2x moins rapide que le plus mauvais des processeurs Intel qu’Apple utilise, le Core i5 à 1,3 GHz (avec Turbo) des MacBook Air.
Là, c’est assez simple à comprendre : la différence de consommation est assez faible, la différence de puissance est très grande. Même en supposant qu’Apple arrive à concevoir un processeur ARM vraiment plus efficace que l’A7 actuel (je suis dubitatif, mais pourquoi pas), il va falloir augmenter la fréquence et multiplier les coeurs. La rumeur de MacBidouille est dans la même veine, avec quatre processeurs équipés de quatre coeurs, d’ailleurs. Et multiplier les coeurs, les processeurs et la fréquence, ça a un impact sur l’autonomie.
D’un point de vue technique, il me paraît donc assez compliqué d’augmenter l’autonomie d’un MacBook Air tout en gardant une puissance de calcul acceptable en passant sur une architecture ARM, en tout cas de façon significative. A la limite l’autonomie en charge (encore que les iPad consomment pas mal quand ils sont utilisés), mais ça reste assez tendu. Même en gardant la consommation d’un iPad Air pour un MacBook Air, ça donnerait une autonomie de moins de 12 heures sur un 11 pouces, et c’est assez irréaliste étant donné que l’écran consomme un peu plus.
De mon point de vue, toutes les architectures performantes vont de toute façon vers le même mur : une fois les optimisations classiques effectuées, le gain en performances se fait généralement au détriment de la consommation. Les coeurs ARM performants ont déjà le problème : le Cortex A15 est un gouffre à énergie face à un Cortex A7, mais ce dernier a des performances inférieures au Cortex A8 qu’on trouvait dans l’iPhone 4 il y a quatre ans. Apple, comme ARM, va devoir jouer entre les performances et la consommation, et quoi qu’on puisse en penser, les derniers processeurs basse consommation d’Intel sont plutôt bons dans cet exercice.
Une autre folie possible serait un hybride ARM et Intel. Après tout Apple pousse à l’abstraction matérielle (OpenCL est autant pour les GPU que les CPU, GCD est là pour que les Dev puisent toute la puissance sans se préoccuper de la machine etc). Il serait du coup possible de tourner en ARM sur les Apps « simples » où la puissance n’importe pas trop (en gros un iPad ++) et switcher sur Intel (voir même GPU AMD) quand il faut cravacher. L’OS aurait juste à gérer ça, pour les Dev c’est une case dans Xcode et pour l’utilisateur c’est Mac AppStore pour profiter des gains.
Du coup en usage simple on gagne en autonomie mais on perd en puissance, et en usage lourd ça reste un MBA classique.
Faut, ce qui n’est pas pris en compte dans « la part du processeur dans la consommation n’est pas énorme : on a l’écran (plus grand sur le MacBook Air, en surface » est tout d’abord que dans une puce A7 il y a la partie processeur ET la partie graphique. Une seconde chose un macbook air est oui plus grand en taille (11 pouce contre 9,7 pour l’ipad) en revanche la définition de l’écran est de 2 048 x 1 536 pixels pour l’ipad et 1 366 x 768 pixels pour le macbook pro 11″ OR le plus important dans la consommation d’un processeur par rapport à son écran c’est le nombre de pixels à gérer soit 1/3 de plus environ pour l’ipad. Donc la puce A7 consomme à vu de nez au moins moitié moins qu’un I5 1,3ghz pour une puissance égale si l’on tiens compte du nombre supérieur de pixels à gérer. Sinon je ne serez pas contre une puce Ax plus puissante sous OS X capable de remplacer le macbook air dans la catégorie petit bijoux pour les moins exigeant en puissance ou pour les (futur) étudiant ayant envie de simplement faire des opérations dites de base et qui aurait le mérite d’avoir une autonomie tout simplement magnifique.
Dans un MacBook Air, le processeur intègre aussi la partie graphique, et celle d’Intel reste largement supérieure à celle de l’iPad dans les faits.
Je vois pas en quoi l’autonomie pourrait être magnifique vu la démonstration : dans le meilleur des cas hypothétiques (consommation de l’iPad Air), on peut espérer 11h30 au lieu de 9 heures, c’est pas énorme.