Invité récemment à la conférence Linaro Connect à Las Vegas, Linus Torvalds n’a pas mâché ses mots sur l’architecture ARM. Il lui préfère le x86, qu’il met en avant pour l’infrastructure qui l’entoure, faisant du PC un espace ouvert. Explications.
On parle beaucoup de l’architecture ARM comme d’une solution de plus en plus concurrente des classiques processeurs x86 fournis par Intel et AMD. C’est particulièrement le cas chez Apple, où les analystes rêvent d’un Mac équipé d’un SoC ARM. Techniquement, cette réalisation est loin d’être impossible : les SoC gagnent constamment en puissance, via la montée en fréquence et le nombre de cœurs.
Une question de plateforme disponible et ouverte
Mais ce choc n’est pas encore là, et si l’on en croit Linus Torvalds, ce n’est clairement pas pour demain. Le père de Linux, invité dans le cadre de la conférence Linaro Connect, a été invité à parler de l’architecture qu’il préférait. La réponse a été très franche (un style habituel chez Torvalds) : « le x86 ». Et les raisons données sont multiples.
« x86 est toujours l’architecture que je préfère, et la raison en est le PC. Pas à cause de l’architecture elle-même, mais grâce à l’infrastructure » explique-t-il ainsi. Par infrastructure, il entend que la plateforme PC est « ouverte d’une manière qu’aucune autre architecture ne peut revendiquer ». Pour lui, le « jeu d’instruction et le cœur du CPU ne sont pas très importants », en dépit du fait que « les gens font une fixette sur ce point ». « Ce qui compte, c’est l’infrastructure autour du jeu d’instructions, et le x86 a actuellement tout ça ».
Une fragmentation inhérente au modèle
Pour bien marquer la différence, il explique que les jeux d’instructions côté PC sont standardisés : les technologies se retrouvent à peu près partout de la même manière. Côté ARM, le cœur de l’architecture est conçu par la société ARM, qui accorde ensuite des licences aux constructeurs. Chacun est alors libre d’ajouter ce qu’il souhaite.
Torvalds indique que cette spécificité rend la tâche des développeurs complexe. Google, par exemple, ne peut pas simplement présenter une base unique d’Android que les utilisateurs pourraient installer sur n’importe quel appareil mobile. Il faut notamment que les pilotes suivent, aboutissant à une fragmentation par le matériel (sans parler de la politique de support qui renforce le phénomène). La conséquence la plus directe, toujours pour Torvalds, est qu’il est impossible de pousser une mise à jour vers tous les utilisateurs en un seul mouvement.
Torvalds se dit « déçu »
Le père de Linux n’apprécie donc pas le développement sur ARM, parce qu’il faut prendre en compte les spécificités de chaque constructeur : « J’ai été personnellement assez déçu par ARM en tant que plateforme matérielle, pas en tant que jeu d’instructions, même si j’ai eu mon lot de problèmes avec ça aussi ». Il note pourtant une amélioration : « Du plus pénible pour moi à gérer dans le noyau, ARM est devenu quelque chose dont je n’ai plus besoin de m’occuper, et je veux que ça reste comme ça. »
Ces réponses en auront sans doute étonné plus d’un, les premières amours de Torvalds ayant été pour l’architecture RISC, sur laquelle est basée ARM. Il est connu notamment pour s’être perfectionné par la suite avec les processeurs 68000 de Motorola, cette fois d'architecture CISC. Mais comme nous l’indiquions pour les 25 ans de Linux fin août, c’est bien le processeur 80386 d’Intel qui a provoqué une rupture, en proposant un jeu d’instruction 32 bits à un tarif accessible. La disponibilité du matériel et la compatibilité ont fait le reste.