Linus Torvalds : ARM n'est pas prête à détrôner l'architecture x86
Tant qu'elle n'a pas fourni une plateforme que les développeurs voudront utiliser

Le , par Coriolan, Chroniqueur Actualités
Linus Torvalds n’est pas du genre à rester discret, il dit ce qu’il pense. Durant la conférence de Linaro Connect la semaine dernière, le créateur du noyau Linux n’a pas hésité à dire qu’il préfère l’architecture x86 à ARM. Selon lui, l’ouverture et l’étendue de l’écosystème matériel (PC) formé autour de x86 sont inégalées, alors que l’écosystème ARM reste fragmenté. « Le jeu d’instructions et le noyau du CPU ne sont pas très importants », a déclaré Torvalds. « C’est un facteur sur lequel les gens ont tendance à se fixer, mais […] ce qui importe c’est l’infrastructure disponible autour du jeu d’instructions. Et x86 fournit cette infrastructure, à plusieurs niveaux », a-t-il déclaré.

C’est bien connu, ARM domine la sphère du mobile et la majorité des appareils tournent sous Android, qui est basé sur le noyau de Linux. Mais le problème qui hante l’OS de Google est bel et bien la fragmentation du système, causant énormément de problèmes de compatibilité et de sécurité. En raison de l’existence de plusieurs configurations matérielles, il est impossible de déployer une seule version d’Android sur tout le parc des appareils mobiles. Pour cette raison, les constructeurs doivent personnaliser l’OS pour chaque configuration afin de le rendre compatible avec les différents chipsets. Contrairement à Windows, il est impossible de servir une seule mise à jour d’Android à tous les utilisateurs. « En tant que plateforme matérielle, ARM reste une plateforme matérielle peu agréable à utiliser ». a précisé Torvalds.

Intel a essayé de pousser les puces x86 dans les smartphones, l’objectif du fondeur a été de délivrer des mises à jour Android qui pourraient être téléchargées et installées sur des appareils dotés d’une architecture x86 ; malheureusement, Intel a mis fin à ces efforts. Les serveurs ont également eu droit à leur part de complications avec l’architecture ARM, pour la plupart des problèmes de développement logiciel. Chaque chipset a ses propres caractéristiques d’architecture, de réseau et d’I/O, ce qui fait que chaque configuration doit avoir sa propre partie software afin de tirer profit de ces caractéristiques. Cette contrainte a ralenti significativement l’adoption d’ARM dans les serveurs. Par opposition, l’architecture x86 ne souffre pas de ces limitations de compatibilité et continue à dominer le marché des serveurs.

Dans un écosystème où la compatibilité n’est pas une priorité, Torvalds pense que les constructeurs n’ont pas à créer des produits qui pourraient rendre la plateforme utile. Et la preuve, selon lui, est que le développement pour ARM se fait presque toujours sur des PC x86. Bien que Torvalds reconnait les mérites du nano-ordinateur à processeur ARM Raspberry Pi, il le qualifie de “jouet” et a dit qu’ARM ne peut tout simplement pas gagner tant que la firme n’a pas fourni une plateforme que les développeurs voudront utiliser comme leurs machines principales.

Torvalds a tenu des propos similaires sur l’Internet des objets (IoT), il a affirmé que la communauté de développement ne va pas porter Linux sur des appareils connectés qui tendent à être très verrouillés. « Je voudrais dire qu’il y a beaucoup d’objets connectés auxquels les gens seront intéressés, mais quand ils sont verrouillés, seuls les gens travaillant dans les firmes s’y intéressent. »

Torvalds s’est intéressé également au futur du développement de Linux. Il a précisé que même si Linux apparait comme étant en évolution au lieu de recevoir de nouvelles fonctionnalités, de grands changements sont faits sur le code base sans que personne n’y prête attention. Le dictateur bienveillant, comme il est surnommé, s’est félicité aussi du nombre des contributeurs au projet Linux qui reste élevé comparé aux autres projets open source de renom.



Source : YouTube

Et vous ?

Qu'en pensez-vous ?

Voir aussi :

Linux domine 87 % du marché des smartphones, Favorisé par l'excellente performance des constructeurs Android
Linux fête ses 25 ans : qu'est devenu le projet que Linus Torvalds avait annoncé, ne pas devenir « grand et professionnel comme le GNU » ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de RyzenOC RyzenOC - Membre émérite https://www.developpez.com
le 13/10/2016 à 16:24
il à raison.

Mais je pense qu'a terme ce probleme devrait disparaitre. Car je vois pas ce que google peut gagné à avoir un marché très fragmenté.
Leur intérêt serait plutôt dans l'uniformisation et donc de faire du forcing auprès d'ARM et des constructeurs de soc pour uniformiser leurs plateforme.
Avatar de Uther Uther - Expert éminent https://www.developpez.com
le 13/10/2016 à 17:36
Citation Envoyé par sazearte  Voir le message
Mais je pense qu'a terme ce probleme devrait disparaitre. Car je vois pas ce que google peut gagné à avoir un marché très fragmenté.

Le problème c'est que ARM c'est bien plus que juste le marché des smartphones.

Et même en se limitant à ce marché, Google ne traite pas avec vraiment directement avec ARM et les fabricant de SoC. C'est les constructeurs de téléphones qui font ça, il sont nombreux et n'ont pas particulièrement intérêt à ce que ça change. La capacité de Google de faire pression là dessus semble nulle. Il y a cas voir le peu d'effet qu'elle a sur quasiment tous les domaines dont la durée du support.
Avatar de micka132 micka132 - Membre émérite https://www.developpez.com
le 13/10/2016 à 17:39
Citation Envoyé par sazearte  Voir le message
Car je vois pas ce que google peut gagné à avoir un marché très fragmenté.

Rien à gagner, mais la fragmentation est rarement le fruit d'une volonté.
Si elle existe sur Android c'est que le systeme a explosé et Google n'a pas tenté de freiner le phenomene> En premier lieu il faut écraser toute la concurrence.
Apres c'est sur ils réfléchiront a stabiliser le bousin, mais est-ce que ca va être possible c'est moins certains !
Avatar de RyzenOC RyzenOC - Membre émérite https://www.developpez.com
le 13/10/2016 à 17:49
Bon après sa favorise l'innovation visiblement.

D'un coté on as le X86 avec l'architecture core qui n'évolue plus depuis 10ans...
De l'autre, regarder en 10ans ce qu'est devenue ARM, des machins monocœur qui pouvait à peine lancer la JVM à des monstres de puissance qui batte les atom et celeron d'intel pour une consommation de 5w seulement.

Mon choc à été le passage du raspberryB au rapsberry3, pour un même tarif j'ai eu 10 fois plus de puissance en seulement 3ans, avec une consommation similaire.
Sur pc j'aimerais bien que les prochains Zen ou Kaby Lake soit 10 fois plus puisant que mon I5 4690 pour un tarif similaire (230€ à l'époque)...

Et pour 2017 on nous annonce des ARM avec 10 core et des fréquence pouvant atteindre les 4Ghz quand même, avec une consommation et une chauffe maîtrisé.
En x86 on reste bloqué à 4Ghz depuis 15ans, on as vue le résultat des FX d'AMD à 5Ghz, des gouffre énergétique qui font office de radiateur.
Et Intel nous bride à 4core depuis 10ans, au delà les tarifs sont indécent, et épargné moi les 10% de perf qu'on as chaque année en améliorant la finesse de gravure et l'architecture.

Au passage, j'arrive à faire tourner Windows XP sous Qemu sur mon téléphone de manière fluide. Je pense qu'on arrivera bientôt a y faire tourner Windows 10 64bits, avec les débits des cartes SD et l’amélioration du cpu et les smartphones vendu avec 6Go de ram.
Avatar de Traroth2 Traroth2 - Expert éminent sénior https://www.developpez.com
le 13/10/2016 à 18:04
Il y a du progrès, quand même. Par exemple, j'ai l'impression que les concepteurs de processeurs et les fondeurs sont à peu près tous d'accord pour utiliser les coeurs d'exécution Cortex d'ARM. Je n'ai pas l'impression que Qualcomm ait l'intention de sortir encore des Krait...
Avatar de Iradrille Iradrille - Expert confirmé https://www.developpez.com
le 14/10/2016 à 4:19
Citation Envoyé par sazearte  Voir le message
Bon après sa favorise l'innovation visiblement.

D'un coté on as le X86 avec l'architecture core qui n'évolue plus depuis 10ans...
De l'autre, regarder en 10ans ce qu'est devenue ARM, des machins monocœur qui pouvait à peine lancer la JVM à des monstres de puissance qui batte les atom et celeron d'intel pour une consommation de 5w seulement.

ARM met l'accent sur l'efficaté énergénique (et depuis quelques années commence à regarder l'aspect performance pure); x86 fait le contraire : ils s’intéressent aux performances pures, et depuis quelques années ils s’intéressent à l'efficacité énergétique.

Ils ont tout deux un avantage assez énorme sur leur concurrent dans leur domaine.

-> Dans la catégorie <= 5 watts; x86 est très faible, et cher
-> Pas de CPU ARM capable de rivaliser avec un i5/i7 (sans même parler de Xeon).

Citation Envoyé par sazearte  Voir le message
Au passage, j'arrive à faire tourner Windows XP sous Qemu sur mon téléphone de manière fluide. Je pense qu'on arrivera bientôt a y faire tourner Windows 10 64bits, avec les débits des cartes SD et l’amélioration du cpu et les smartphones vendu avec 6Go de ram.

Quel est l'intérêt ?
Si tu choisis une archi ARM au lieu d'une archi x86 c'est pour l'efficacité énergétique. L'émulation est le meilleur moyen de perdre cet avantage.
Un autre intérêt pourrait être le coût, mais dans ce cas rajouter une licence Windows est contre productif.
Avatar de Bktero Bktero - Modérateur https://www.developpez.com
le 14/10/2016 à 7:51
Je ne suis pas du tout connaisseur en CPU x86, mais il me semble qu'il n'y a qu'un seul x86. Alors que ARM, c'est une flopée de coeurs différents, sous l'un étant un sur-ensemble de celui-ci en dessous de lui dans la gamme.

Uther l'a bien dit :
Le problème c'est que ARM c'est bien plus que juste le marché des smartphones.

On tape dans des MCU relativement petits avec les Cortex-M0 par exemple.

Au final, ça me parait être enfoncer une porte ouverte que de dire "x86 c'est quand même vachement mieux, c'est plus simple et plus puissant"... Même si ce n'est pas faux
Avatar de Cyäegha Cyäegha - Membre régulier https://www.developpez.com
le 14/10/2016 à 10:41
Citation Envoyé par Bktero  Voir le message
Je ne suis pas du tout connaisseur en CPU x86, mais il me semble qu'il n'y a qu'un seul x86. Alors que ARM, c'est une flopée de coeurs différents, sous l'un étant un sur-ensemble de celui-ci en dessous de lui dans la gamme.

Il y a deux jeux d'instructions x86 qui importent actuellement (x86, 32 bits, et x86_64, 64 bits) ainsi qu'une flopées d'extensions qui peuvent être présentes ou non suivant les CPUs (la page Wikipedia donne cette liste : x87, IA-32, MMX, SSE, SSE2, x86-64, SSE3, SSSE3, SSE4, SSE5, AVX). Et il y a bien sûr des tas d'implémentations différente de ces jeux d'instruction, puisque Intel sort une nouvelle architecture plus ou moins chaque année (avec des changements plus marqués tous les 2/3 ans), sans même compter AMD...

En ARM, comme en x86, il y aussi des standards bien définis pour les jeux d'instructions (sur une smartphone récent, ça sera soit ARMv7, soit ARMv8, ce dernier apportant le support du 64 bits) et les extensions optionnelles, donc je ne pense pas que ça pose beaucoup plus de problème que sur x86.

Quand Linus Torvalds parle des problème de l'architecture ARM (du point de vu du développement du noyau Linux), il ne parle pas du CPU, mais de l'architecture intégrant les différents composants (CPU, GPU, entrées/sorties, etc.) : c'est cet aspect là qui n'est pas standardisé dans le monde ARM... Alors que sur x86, quel que soit le fabricant (Intel vs. AMD) et le modèle du CPU et du chipset, le kernel est capable de découvrir les périphériques et de communiquer avec eux de la même façon.
Avatar de octal octal - Membre éclairé https://www.developpez.com
le 17/10/2016 à 11:02
Citation Envoyé par Coriolan  Voir le message
Chaque chipset a ses propres caractéristiques d’architecture, de réseau et d’I/O, ce qui fait que chaque configuration doit avoir sa propre partie software afin de tirer profit de ces caractéristiques. Cette contrainte a ralenti significativement l’adoption d’ARM dans les serveurs. Par opposition, l’architecture x86 ne souffre pas de ces limitations de compatibilité et continue à dominer le marché des serveurs.

ARM a faillit dans le marché des serveurs surtout à cause de la mauvaise performance des puces comparativement au X86 et puis aussi à cause du gros poids d'Intel et son lobying concernant x86 avec les grands du marché.

Avoir plusieurs chipsets avec des caractéristiques différentes est aussi l’apanage des machine X86, c'est simplement que les drivers pour les différents chipsets mis en jeux dans les X86 sont développés de manière assez sérieuses par les boites qui les font.
Je pense que l'ami Torvald s’emmêle les pinceaux et s'enflamme un peu trop. Il oublie que le X86 a un passé très important et qu'il n'est pas si simple dans l'industrie de changer les habitudes, les outils de développement (logiciels+matériels), et les outils de tests et de déploiement matériel. ARM n'est arrivé que récemment avec des puces suffisamment puissantes.
Avatar de Vincent PETIT Vincent PETIT - Expert confirmé https://www.developpez.com
le 17/10/2016 à 11:55
Citation Envoyé par Cyäegha  Voir le message
[...]Quand Linus Torvalds parle des problème de l'architecture ARM (du point de vu du développement du noyau Linux), il ne parle pas du CPU, mais de l'architecture intégrant les différents composants (CPU, GPU, entrées/sorties, etc.) [...]

Citation Envoyé par octal  Voir le message
[...]Je pense que l'ami Torvald s’emmêle les pinceaux et s'enflamme un peu trop. Il oublie que le X86 a un passé très important et [...] ARM n'est arrivé que récemment avec des puces suffisamment puissantes.

En effet, vous avez raison, il mélange tout.

ARMv8, par exemple, est une architecture connue elle n'est absolument pas fragmentée (toutes les architectures ARMv8 sont les mêmes car ARM est une Licence) par contre ce qui est différent c'est bien ce que les fabricants de SoC mettent autour d'elle (et il y en a beaucoup des fabricants de SoC )

Ensuite le portage d'un Linux sur un SoC n'est qu'une histoire des drivers pour prendre en charge les différents matériels mais ça n'empêche en rien une mise a jour de l'OS qui se trouve au dessus de cette couche de drivers ?

Sinon pour moi ARM n'a jamais eu la prétention de détrôner l'architecture x86 (pour moi ils occupent deux secteurs de marché bien différent) même si il vient s'y frotter un peu et ce qui créait de la réaction, c'est normal.
Offres d'emploi IT
Chef projet big data - pse flotte H/F
Safran - Ile de France - Évry (91090)
Ingénieur conception en électronique de puissance H/F
Safran - Ile de France - Moissy-Cramayel (77550)
Responsable transverse - engagement métiers H/F
Safran - Ile de France - Corbeil-Essonnes (91100)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil