Architecture de processeur 64 bits

Les x86 visent traditionnellement les performances maximales avant tout, ce qui constitue une différence clé avec les processeurs Arm qui visent une meilleure efficacité énergétique. Dans le monde d’aujourd’hui, les architectures 64 bits sont courantes sur les smartphones et les PC. Ce changement n’a pas été si rapide, c’est vers 2012 que les téléphones ont également fait la transition, mais cela n’a pas changé la façon dont nous utilisons les appareils, cela leur a simplement permis de mieux gérer les choses. Aujourd’hui, les deux architectures supportent le 64 bits mais c’est plus pertinent dans les smartphones.

Les PC sont passés au 64 bits bien avant les smartphones, mais ce n’est pas Intel qui a inventé l’architecture moderne x86-64 (également connue sous le nom de x64). Cet honneur revient à l’annonce d’AMD de 1999, qui a rétrofité l’architecture x86 existante d’Intel.

ArchitectureARM

ARM est basé sur le RISC (Reduced Instruction Set Computing) alors qu’Intel (x86) est CISC (Complex Instruction Set Computing). Les instructions du CPU d’Arm sont raisonnablement atomiques, avec une corrélation très étroite entre le nombre d’instructions et les micro-ops. Le CISC, en comparaison, offre beaucoup plus d’instructions, dont beaucoup exécutent des opérations multiples (comme les mathématiques optimisées et les mouvements de données). Cela conduit à de meilleures performances, mais à une plus grande consommation d’énergie pour décoder ces instructions complexes.

Arm a introduit son architecture 64 bits ARMv8 en 2011. Plutôt que d’étendre son jeu d’instructions 32 bits, Arm propose une implémentation 64 bits propre. Pour ce faire, l’architecture ARMv8 utilise deux états d’exécution, AArch32 et AArch64. Comme leur nom l’indique, l’un sert à exécuter du code 32 bits et l’autre du code 64 bits. La beauté de la conception ARM est que le processeur peut passer d’un mode à l’autre de manière transparente pendant son exécution normale. Cela signifie que le décodeur pour les instructions 64 bits est une nouvelle conception qui n’a pas besoin de maintenir la compatibilité avec l’ère 32 bits, mais le processeur dans son ensemble reste rétrocompatible.

La victoire d’ARM sur l’écosystème mobile

Les différences architecturales discutées ci-dessus expliquent en partie les succès actuels et les problèmes rencontrés par les deux mastodontes de la puce. L’approche basse consommation d’Arm est parfaitement adaptée aux exigences de puissance de conception thermique (TDP) de 3,5 W du mobile, mais les performances augmentent pour égaler les puces pour ordinateurs portables d’Intel également. Pendant ce temps, le Core i7 typique de 100W TDP d’Intel gagne beaucoup dans les serveurs et les ordinateurs de bureau à haute performance, mais historiquement, il a du mal à passer en dessous de 5W.

Une caractéristique unique de l’architecture d’Arm a été particulièrement déterminante pour maintenir le TDP bas pour les applications mobiles, l’informatique hétérogène. L’idée est assez simple, construire une architecture qui permet à différentes parties du CPU (en termes de performance et de puissance) de travailler ensemble pour une meilleure efficacité. Le multiprocesseur hétérogène (HMP) est déjà grand dans l’espace Android, voir des puces comme le Snapdragon 810, Exynos 7420 ou Helio X20, mais le calcul hétérogène (HC) est la prochaine évolution.

Vous voyez, les processeurs peuvent être conçus pour exécuter certaines tâches plus efficacement, mais une conception unique a du mal à être excellente dans tous les domaines. Votre CPU typique peut être bon pour le traitement en série, alors qu’un GPU peut gérer des flux de données parallèles et qu’un DSP est mieux optimisé pour calculer des chiffres avec une grande précision en temps réel. Avec un plus large éventail d’options parmi lesquelles choisir, la théorie est que choisir le meilleur processeur pour toute tâche spécifique se traduira par de meilleures performances et une meilleure efficacité énergétique.

L’ordinateur le plus rapide du monde au moment de la rédaction de cet article est basé sur ARM !

Fugaku est maintenant le superordinateur le plus rapide du monde. Dans le cadre du projet TOP500, l’ordinateur japonais Fugaku a été classé comme le plus rapide du monde et est alimenté par le processeur A64FX. Fugaku est situé au centre RIKEN pour la science computationnelle à Wakō, au Japon.

Compatibilité logicielle

Les applications et les logiciels doivent être compilés pour l’architecture CPU sur laquelle ils fonctionnent, historiquement les écosystèmes tels qu’Android sur Arm ou Windows sur x86 n’ont pas de problème à fonctionner sur plusieurs plateformes ou architectures. Les Macs basés sur Arm d’Apple, Chrome OS de Google et Windows on Arm de Microsoft sont tous des exemples modernes où le logiciel doit fonctionner à la fois sur les architectures Arm et Intel. La compilation de logiciels natifs pour les deux est une option pour les nouvelles applications et les développeurs prêts à investir dans la recompilation. Pour combler les lacunes, ces plateformes s’appuient également sur l’émulation de code. En d’autres termes, il s’agit de traduire le code compilé pour une architecture CPU afin de l’exécuter sur une autre. Cela est moins efficace et dégrade les performances par rapport aux applications natives, mais une bonne émulation est actuellement possible pour garantir que les applications fonctionnent.

Après des années de développement, l’émulation de Windows sur Arm est dans un état plutôt bon pour la plupart des applications. Les applications Android fonctionnent sur les Chromebooks Intel de manière décente pour la plupart aussi. Nous devrons attendre et voir si les Macbooks Arm fonctionnent aussi bien.

J’espère que vous avez apprécié l’article et que vous avez obtenu les informations que vous vouliez de celui-ci si oui suivez-moi pour plus de postes comme celui-ci à l’avenir. Je fais de mon mieux pour fournir des informations précieuses pour tous ceux qui le cherchent.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.