Fermer

novembre 20, 2023

x86 ou ARM64 : donner un sens aux variations architecturales

x86 ou ARM64 : donner un sens aux variations architecturales


Introduction

À mesure que nous progressons dans l’approche de la génération actuelle en matière de sélection d’un PC ou d’un ordinateur portable en fonction de ses besoins, le débat sur cette option s’intensifie. Une machine fonctionnant sous Windows standard ou le dernier Apple Macbook avec des puces de la série M mises à jour ? La réponse réside dans la compréhension de la différence entre l’architecture sur laquelle reposent ces puces : les processeurs x86 et arm64.

Dernièrement, avec Apple ayant choisi arm64 comme architecture de base pour le chipset de la série M, il y a eu un énorme buzz sur le marché quant à savoir si ces processeurs utilisés dans un téléphone mobile étaient fiables ou non.

La première question évidente ici est la suivante : que sont x86 et arm64 ? Comment ont-ils été créés ? Quelle est la technologie qui les différencie ? Et arm64 est-il une nouvelle architecture ? Et enfin, quel est le meilleur ?

Ici, nous allons répondre à ces questions de manière très simple en examinant ces points :

  • Histoire de l’architecture informatique
  • Différence entre les puces 8 bits, 16 bits, 32 bits et 64 bits
  • Arm64 est-il une nouvelle technologie
  • Comprendre RISC et CISC
  • Différences majeures et cas d’utilisation de x86 et arm64
  • Pourquoi Apple et d’autres entreprises s’y orientent maintenant

Pour comprendre la différence entre x86 et arm64, il est nécessaire d’avoir une connaissance de l’architecture informatique car elle constitue la base de ces processeurs. Mais nous allons essayer de comprendre ces termes de manière très simpliste.

Histoire

Tout d’abord, creusons un peu dans le passé pour comprendre d’où viennent ces termes x86 et arm64. Le x86 fait référence aux processeurs 32 bits et 64 bits créés par Intel. Ils ont commencé avec une puce 4 bits en 1970, qui a évolué vers une puce 8 bits avec plusieurs variantes, et un suffixe « 8080 » leur a été ajouté. Plus tard, la société a créé des puces 16 bits portant le suffixe « 8086 » et plusieurs variantes définies comme 80186, 80286, 80386, etc.

Plus tard, la version a été mise à niveau vers 32 bits puis 64 bits, mais AMD a pu développer une meilleure puce qui a permis son extension au jeu d’instructions x86, et c’était la solution la plus largement utilisée. Cette architecture est communément connue sous le nom d’architecture x86-64.

Pendant ce temps, Acron Computers construisait également une puce de silicium basée sur RISC et lança sa première puce en 1985, connue plus tard sous le nom d’ARM1. En 1994, ils lancèrent leur premier PC avec ARM, mais ne rencontrèrent pas beaucoup de succès sur le marché des PC. lequel Intel était clairement le dirigeant. Finalement, l’architecture ARM a fait son chemin vers les téléphones et les tablettes et a connu un grand succès en raison de son rôle dans la légèreté et la compatibilité des appareils. Aujourd’hui, presque tous les téléphones et tablettes fonctionnent sur l’architecture ARM.

Comment les puces varient de 8 à 64 bits

Le processeur d’un ordinateur fonctionne sur les instructions qui lui sont données pour effectuer une tâche. Les bits font ici référence à la taille de l’opérande qu’un processeur peut traiter en un seul processus arithmétique. C’est comme lors d’une musculation, pouvez-vous soulever un poids de 8 kg ou un poids de 16 kg, un poids de 32 kg ou un poids de 64 kg en une seule fois. De même, dans le cas du CPU, s’il s’agit d’un ensemble 32 bits, il pourra ajouter deux nombres 32 bits en une seule instruction, et le résultat sera une instruction 32 bits. Il en va de même pour les autres ensembles.

Chaque bit est une plage définie qui peut être calculée par « 2 élevé à la puissance du bit – 1 ». Le nombre de 8 bits va de 0 à 256, celui de 16 bits de 0 à 65535, celui de 32 bits de 0 à 4294967295 et celui de 64 bits de 0 à 18446744073709551615.. Un nombre de bits supérieur peut être traité par le bit inférieur, mais pour cela, il ne s’agira pas d’une seule instruction ; les nombres s’ajouteront, conserveront le résultat stocké et reporteront les bits. Cela augmente le temps nécessaire pour traiter et terminer l’instruction.

La vraie affaire, la différence d’architecture

Les processeurs x86 sont basés sur CISC, tandis que les processeurs ARM64 sont basés sur RISC. Les termes RISC (Reduced Instruction Set Computing architecture) et CISC (Complex Instruction Set Computing architecture) semblent très simples, mais lorsque nous approfondissons, cela montre à quel point ils sont différents et complexes à ce niveau micro. La différence entre les deux réside dans le nombre de ‘Instructions’ disponible dans chacun. Pour le CISC, ce nombre se situe autour de 981 tandis que pour le RISC, il se situe à près de 50.

Qu’est-ce que RISC et CISC ?

L’idée principale derrière l’architecture RISC et CISC est la manière dont les jeux d’instructions sont traités. Jeu d’instructions est un ensemble de codes qu’un processeur informatique comprend pour accomplir une tâche. Ces jeux d’instructions sont généralement une combinaison de 0 et de 1 ou d’un langage machine qui forme des instructions telles que ADD, JUMP ou LOAD.

Une architecture RISC (Reduced Instruction Set Computing) vise à simplifier le matériel en utilisant des jeux d’instructions simples avec quelques étapes de base. Par exemple, une commande LOAD chargera simplement les données et une commande STORE stockera simplement les données. À mesure que nous réduisons la complexité du jeu d’instructions exécuté par le matériel, la possibilité de fournir une intelligence flexible via le logiciel plutôt que le matériel est le concept clé du RISC. Augmentant ainsi la complexité au niveau de la compilation plutôt qu’au niveau du processeur.

D’autre part, l’architecture CISC (Complex Instruction Set Computing) vise à traiter des tâches complexes avec plusieurs étapes exécutées dans un seul jeu d’instructions. Par exemple, une commande MULTIPLICATION chargera, évaluera et stockera des instructions, rendant ce processus complexe. L’intention derrière l’architecture CISC est de réduire le coût de la mémoire, car un programme volumineux a besoin de plus d’espace de stockage, ce qui nécessite une mémoire plus grande. La combinaison du nombre d’instructions dans une seule instruction réduira le nombre d’instructions par programme et augmentera ainsi la complexité au niveau matériel.

Vous trouverez ci-dessous la liste des principales différences entre les architectures RISC et CISC.

RISQUEICSC
Conçu pour se concentrer sur les logicielsConçu pour se concentrer sur le matériel
Les jeux d’instructions sont simples et faciles à décoderLes jeux d’instructions sont complexes et difficiles à décoder
En raison d’une instruction, une méthode de tâche nécessite un code plus volumineux pour les tâchesEn raison de la méthode de tâches multiples à une instruction, la taille du code est petite
Une instruction peut être complétée en un cycle d’horlogeUne instruction nécessite plus d’un cycle d’horloge
Grâce à moins de travail pour chaque instruction, la consommation d’énergie est faibleEn raison du travail supplémentaire effectué par chaque instruction, la consommation d’énergie est élevée
Besoin de plus de registres pour traiter les instructionsBesoin de moins d’inscrits pour traiter les instructions
Besoin de plus de RAM pour traiterBesoin de moins de RAM pour traiter

Pourquoi ARM64 maintenant ?

Avec la différence d’architecture ci-dessus, il est assez clair que l’ARM64 est plus économe en énergie. En raison de la demande croissante d’économies d’énergie afin de réduire la charge sur nos ressources non renouvelables et de réduire les risques environnementaux, la popularité de l’ARM64 augmente. Les entreprises investissent dans la R&D de cette architecture pour en tirer le meilleur parti, et c’est l’une des principales raisons pour lesquelles Apple a choisi cette architecture pour ses nouvelles puces de la série M dans Macbook et progresse vers son objectif d’atteindre un fonctionnement « zéro émission de carbone ». .

ARM64, combiné à d’autres améliorations du GPU, améliore le processus global et les processus peuvent être mieux gérés. ARM64 contribue non seulement à l’efficacité énergétique, mais contribue également à améliorer la compatibilité logicielle pour accélérer le processus, contribuant ainsi à augmenter le temps d’exécution. Cela contribue à améliorer les capacités multitâches.

Récemment, avec le lancement de processeurs personnalisés basés sur ARM64 appelés Graviton, AWS a commencé à promouvoir de meilleures performances et des coûts jusqu’à 40 % inférieurs à ceux des processeurs généraux x86. Migrer la charge de travail existante et adopter Graviton avec un minimum d’effort est la clé sur laquelle AWS s’est principalement concentré. L’architecture basée sur ARM64 aide également AWS à réduire son empreinte carbone et à utiliser jusqu’à 60 % d’énergie en moins que les instances EC2 comparables.

Bien que l’ARM64 soit présent sur le marché depuis longtemps, il reste préféré pour les appareils mobiles et les tablettes. Cependant, la recherche et le développement d’ARM64 avec des processeurs pour ordinateurs portables ont montré un potentiel et des opportunités, et bientôt, nous pourrons voir des performances élevées incluses avec une consommation d’énergie réduite et des appareils compacts.

VOUS TROUVEZ CECI UTILE ? PARTAGEZ-LE






Source link

novembre 20, 2023