Apple Silicon, Rosetta, M1, M2, SoC : pourquoi ces termes sont importants pour tout acheteur d’ordinateur

Apple Silicon, Rosetta, M1, M2, SoC : pourquoi ces termes sont importants pour tout acheteur d'ordinateur

Si vous vous intéressez aux Mac, vous avez probablement entendu un ou plusieurs de ces termes. Mais à moins que vous n’ayez suivi de près les progrès techniques d’Apple, il se peut que leur signification et leur importance pour vos futures décisions d’achat ne soient pas claires.

Alors qu’Apple devrait faire une nouvelle série d’annonces concernant les Mac ce soir, je vais vous aider à comprendre tout ce que cela signifie.

publicité

Comprendre le processeur

Un ordinateur – qu’il s’agisse d’un Mac, d’un PC, d’une machine Linux, d’un Raspberry Pi ou même du cerveau intégré dans votre micro-ondes – est constitué d’un ensemble de composants. Certains gèrent l’entrée, en faisant entrer des données dans la machine. D’autres gèrent la sortie, en vous présentant ces informations ou en effectuant une tâche (comme faire éclater du pop-corn ou afficher des images réalistes dans votre jeu vidéo). Certains composants stockent des informations, de manière temporaire ou permanente. Certains gèrent la connexion à un ou plusieurs réseaux (Ethernet, Bluetooth, Wi-Fi).

Le processeur, l’unité centrale de traitement (ou CPU), orchestre l’ensemble de ces éléments. L’unité centrale traite des séquences d’instructions, effectue des calculs, prend des décisions et demande aux données de se déplacer. En pratique, les ordinateurs modernes possèdent de nombreux processeurs, mais certains sont utilisés pour des calculs spécifiques (comme votre GPU pour les graphismes). Mais fondamentalement, l’unité centrale est au centre de tout cela.

D’une manière générale, plus le CPU est rapide, plus la machine est rapide. Il s’agit d’une simplification excessive, car même si une unité centrale super rapide peut traiter les instructions et les calculs à une vitesse vertigineuse, si le bus système met une éternité à déplacer les données, cela ne sert à rien. C’est comme conduire une voiture de sport ultra-rapide en heure de pointe : elle peut être la plus rapide du monde, si la route est encombrée, elle n’ira nulle part.

En réalité, l’équilibre est le plus important. Si vous avez déjà construit un PC, vous savez probablement qu’il n’est pas judicieux d’associer un GPU haut de gamme à un CPU médiocre, car le CPU ralentira les graphismes. Il n’est pas non plus judicieux d’associer un processeur ultra-rapide à une mémoire générique moyenne, car le bus mémoire ne sera pas en mesure de gérer ce que le processeur lui envoie.

Ce problème d’équilibre est, en fait, une partie de ce qui a fait le succès des appareils Apple. Parce qu’Apple (à quelques rares exceptions près) a toujours contrôlé l’ensemble des composants de ses appareils et bien équilibré les performances. Pour les appareils rapides, cela signifie des composants haut de gamme. Mais aussi économiser de l’argent sur des pièces qui ne seront pas pleinement utilisées pour des appareils plus lents.

Dans presque toutes les machines, à l’exception des plus simples, chaque unité centrale est constituée d’un ou plusieurs cœurs. Les cœurs sont en fait les unités de traitement. Une unité centrale avec plusieurs cœurs possède un aspect de gestion du trafic qui gère le flux d’instructions vers chaque cœur.

Les cœurs multiples peuvent augmenter considérablement les performances pour les problèmes qui peuvent être divisés en processus parallèles. De nombreux processus modernes fonctionnent bien en parallèle, notamment les graphismes, le traitement des données, l’intelligence artificielle (IA), le machine learning (ML) et les tâches liées à la réalité augmentée (AR).

CPU et SoC

Rappelez-vous que j’ai expliqué qu’un ordinateur est constitué de nombreux composants, dont la plupart sont des circuits intégrés (également appelés puces). De nombreux ordinateurs possèdent également de nombreux processeurs. J’ai mentionné le CPU (l’unité centrale de traitement) et le GPU (le processeur graphique).

Certains Mac intègrent des processeurs supplémentaires à usage spécifique, tels que le moteur neuronal (pour l’IA et le ML) et un moteur multimédia (pour l’encodage et le décodage de vidéos hors jeu).

Pendant de nombreuses années, les ordinateurs les plus puissants étaient constitués des différentes puces système situées dans des boîtiers séparés, soudées sur une carte mère. Certains composants, comme la mémoire et les cartes d’extension, pouvaient être insérés via des connecteurs sur la carte. Cela permettait une certaine évolutivité et flexibilité, mais ces cartes d’extension posaient des problèmes de chaleur et de vitesse de propagation. De nombreuses personnes ayant construit leur propre PC connaissent cette architecture. Et ces problèmes.

L’architecture SoC (ou système sur puce) est différente. Bien que les premières implémentations de SoC aient été réalisées pour des montres à LED dans les années 1970, elles ne comportaient pas de processeurs. Les SoC modernes remontent plutôt aux années 1990. C’est à cette époque que les machines à fabriquer des puces ont évolué au point de pouvoir créer des composants suffisamment petits pour contenir un système entier sur une seule puce, dite aussi “die”, ou circuit intégré.

Note de glossaire : le “die” est le matériau semi-conducteur qui effectue le travail. La plupart des gens pensent qu’une puce est techniquement un boîtier qui contient un die (parfois plus d’un) et les fils pour connecter la puce au reste du système. La puce est, en fait, le die à l’intérieur.

Contrairement au modèle carte mère / CPU / mémoire commun à la plupart des PC, les iPhone et les derniers Mac sont basés sur des SoC (System-on-Chip). Il s’agit de puces qui contiennent non seulement le processeur (ou les processeurs), mais aussi la mémoire, les communications, voire le stockage flash, et plus encore, le tout dans un seul et même boîtier.

Les SoC présentent d’énormes avantages en termes de performances, car toutes les impulsions électriques doivent parcourir des distances beaucoup plus courtes. Comme la distance est plus courte, le courant utilisé peut être considérablement réduit. Et comme le courant est plus faible, la puissance utilisée est moindre. Moins de puissance utilisée signifie moins de chaleur et une plus longue durée de vie de la batterie.

Ce n’est que lorsque les SoC ont pu être fabriqués avec des dizaines de milliards de transistors qu’ils ont été adaptés aux ordinateurs personnels à haute performance. C’est désormais possible, et c’est donc le cas.

Apple Silicon

Apple est en train d’arrêter la fabrication de Mac basés sur les processeurs Intel pour les monter à partir de “l’Apple Silicon”. Ces puces sont fabriquées à partir de silicium (numéro 14 du tableau périodique, symbole Si). L’Apple Silicon, ce sont donc les puces en silicium d’Apple. Mais qu’est-ce que cela signifie réellement ?

Les processeurs d’Intel sont souvent appelés puces x86, car ils sont dérivés de l’architecture et du jeu d’instructions 8086. Les tout premiers PC ont été construits à l’aide des processeurs 8088 et 8086, à la fin des années 1970. Depuis lors, il y a eu de nombreuses générations (tant par Intel que par AMD), jusqu’à Alder Lake en 2021.

La gamme d’ordinateurs Mac d’Apple a changé de famille de puces quatre fois. Le Mac 128 original introduit en 1984 utilisait un processeur 68000. Apple est resté avec la famille 68K pendant 10 ans, puis est passé au processeur PowerPC en 1994. Apple a conservé les Mac basés sur PowerPC pendant 12 ans, puis est passé aux puces Intel standard pour PC en 2006. C’était l’aube de l’ère Hackintosh, car la plupart des Mac étaient généralement compatibles avec les composants d’architecture PC standard.

Puis, en 2020, Apple est passé à Apple Silicon, une architecture de puce basée sur Arm, le type de processeur utilisé dans la plupart des smartphones, y compris les iPhone. En fait, les puces de la série A, comme le A15 Bionic utilisé dans l’iPhone 13, ont la même architecture de puce que les Mac et iPad Pro actuels basés sur l’Apple Silicon M1.

Pour presque toutes les activités, les Mac basés sur Apple Silicon surclassent leurs équivalents basés sur Intel en termes de performances, d’autonomie et de chaleur. Ils sont une victoire incontestable pour Apple et ses utilisateurs.

Bien entendu, Apple n’a plus non plus à dépendre d’Intel pour ses puces. Pour être honnête, Apple ne fabrique toujours pas ses propres puces. Elle ne fabrique pas non plus ses propres iPhone. L’entreprise s’appuie sur une vaste chaîne d’approvisionnement pour produire dans les quantités qu’elle vend. Mais elle conçoit désormais ses propres puces pour le Mac. En ne dépendant plus des équipes d’innovation d’Intel, Apple peut concevoir ses produits en fonction de ses priorités spécifiques. Le résultat est éloquent.

Mais si la transition vers Apple Silicon est finalement une victoire, c’est surtout grâce à Rosetta 2.

Rosetta 2

Intel x86 et Apple Silicon basé sur Arm sont deux architectures très différentes. Cela signifie qu’elles traitent les données très différemment et qu’elles utilisent des instructions différentes pour ce faire.

Toutes les grandes applications sont construites à l’aide de code informatique. Les programmeurs écrivent le code dans un langage de niveau supérieur, c’est-à-dire un langage que les humains peuvent lire, déboguer et maintenir. Mais ce langage lisible par l’humain est très inefficace pour un processeur, et le code est donc converti en code machine.

Le code machine ne possède pas les subtilités des langages de niveau supérieur qui le rendent lisible et maintenable par les humains. Néanmoins, les puces des processeurs le comprennent et peuvent l’exécuter beaucoup plus rapidement que le code lisible par l’être humain. Lorsque vous installez un programme sur votre ordinateur, vous installez généralement du code compilé, c’est-à-dire du code qui a été traduit pour être lu par le processeur, et non par vous ou un programmeur.

Jusqu’en 2020, la plupart des applications Mac étaient distribuées avec un code compilé pour les processeurs Intel. Si ce code était transmis à un Mac basé sur Apple Silicon, le processeur M1 ne pourrait rien en faire.

La différence d’architecture est profonde. Les langages et même la structure des langages compris par les processeurs Intel et les processeurs Apple Silicon sont très différents. C’était également le cas lors du passage du 68000 au PowerPC et du PowerPC à Intel.

En d’autres termes, Apple a déjà résolu un certain nombre de fois le problème des processeurs qui ne parlent pas la langue de l’autre. Pour ce faire, elle utilise une combinaison de traduction et d’émulation.

Sur les nouvelles machines Apple Silicon, c’est Rosetta 2 qui s’en charge. Lorsque vous essayez d’ouvrir un binaire Intel sur une machine basée sur M1, macOS le transmet à un programme appelé Rosetta 2. Rosetta 2 effectue une traduction à la volée du code x86 en code Apple Silicon, l’enregistre, puis exécute le code traduit. Certains éléments sont émulés tandis que d’autres sont complètement transcodés.

La première fois que vous exécutez un programme basé sur Intel, il se peut que le programme mette un peu de temps à s’exécuter. C’est parce que Rosetta effectue d’abord un passage de traduction. Les exécutions suivantes seront alors plus rapides, car la traduction a déjà été effectuée.

La première fois que vous exécutez votre premier programme Intel sur un Mac basé sur M1, macOS peut vous demander si vous souhaitez installer Rosetta 2. C’est un oui définitif, car cela ouvre la porte à toutes les applications Intel que vous avez peut-être déjà. macOS récupérera le code de Rosetta 2 auprès d’Apple, l’installera sur votre ordinateur et sera en mesure d’exécuter des applications Intel. (Note historique : Rosetta a été utilisé à l’origine pour passer de PowerPC à Intel il y a plus de 10 ans. C’est pourquoi nous en sommes à Rosetta 2.)

Après avoir été traduites avec Rosetta, certaines applications Intel s’exécuteront plus rapidement sur Apple Silicon qu’elles ne le faisaient sur votre Mac Intel.

Les développeurs face à Apple Silicon

Prenons une minute pour parler des développeurs.

Les développeurs codent à l’aide de langages de haut niveau, mais ils doivent compiler leur projet pour chaque architecture. Depuis 2006, la plupart des développeurs compilent pour les machines à processeur Intel. Lorsqu’Apple a introduit le M1, la société a rendu le processus de compilation de ce même code pour Apple Silicon relativement facile. Mais la création de la nouvelle version représente toujours un investissement non négligeable en temps de développement.

Si la plupart des grands développeurs ont franchi le pas, d’autres (soit parce que l’investissement est trop important, soit parce qu’ils ont d’autres priorités, soit parce qu’ils n’y voient pas d’intérêt commercial) continuent de livrer des applications exclusivement Intel. Certaines applications sur lesquelles les utilisateurs comptent sont plus anciennes, ne sont pas maintenues et ne seront jamais mises à jour pour Apple Silicon.

C’est pourquoi la capacité de traduction/émulation de Rosetta 2 était si importante pour l’acceptation par les consommateurs de la nouvelle architecture Apple Silicon. Lorsque le M1 est sorti, les développeurs étaient naturellement sceptiques quant à ses performances par rapport à Intel. Ils pensaient que si les applications Intel ne fonctionnaient pas, ou très mal, les utilisateurs (qui sont très dépendants des logiciels auxquels ils sont habitués) n’achèteraient pas les nouveaux appareils basés sur Apple Silicon.

Mais maintenant qu’Apple Silicon est sorti il y a environ un an et qu’il a connu un succès retentissant, de plus en plus de développeurs investissent le temps nécessaire pour créer des applications natives sur Apple Silicon.

Les développeurs et les utilisateurs sont gagnants lorsque le code est compilé pour Apple Silicon. En général, les programmes natifs Apple Silicon s’exécutent plus rapidement que les programmes traduits par Rosetta. Ainsi, si un développeur recompile ses applications pour Apple Silicon, il bénéficie d’un gain de performance quasi automatique.

J’ai trouvé, par exemple, que Chrome traduit par Rosetta était correct, mais un peu lent. Lorsque je l’ai remplacé par la version Apple Silicon de Chrome, il était beaucoup plus rapide.

M1, M1 Pro, M1 Max et M2

M1, M1 Pro et M1 Max sont des modèles de processeurs qu’Apple utilise dans ses ordinateurs. Au moment où nous écrivons ces lignes, le M2 est le nom que les experts ont attribué à la prochaine génération de processeurs Apple Silicon, mais il n’existe pas encore.

Le M1 est le processeur Apple Silicon original pour les Mac, annoncé en 2020. Les M1 Pro et Max ont été annoncés à l’automne 2021. Tous les processeurs M1 ont quatre types de cœurs différents : les cœurs de performance (puissance de calcul), les cœurs d’efficacité (plus lents, pour un travail plus pédestre, mais qui prennent moins de puissance), le GPU (pour les performances graphiques) et le moteur neuronal (pour l’IA et le ML).

La différence entre les modèles réside dans le nombre de cœurs. Le M1 possède quatre cœurs de performance et quatre cœurs d’efficacité. Le M1 Pro et le M1 Max n’ont que deux cœurs d’efficacité, mais 8 ou 10 cœurs de performance (selon le montant que vous souhaitez dépenser). Tous les trois ont 16 cœurs neuronaux. La plus grande différence se situe au niveau des cœurs de GPU. Le M1 de base en a 7 ou 8. Le M1 Pro en a 14 ou 16. Et le M1 Max en a 24 ou 32. En additionnant le tout, le M1 Max dispose de 60 cœurs !

Mais comme il s’agit de SoC, la mémoire et le stockage sont directement intégrés à la puce. En fonction de la puce, vous pouvez passer de 8 Go de RAM à 64 Go de RAM et 256 Go de stockage flash jusqu’à un énorme 8 To sur le MacBook Pro 16 pouces avec M1 Max. Ce stockage supplémentaire vous coûtera quelques milliers de dollars de plus. Mais si vous en avez besoin, vous en avez besoin.

La taille des puces est considérablement différente. Le M1 est environ un quart de la taille du M1 Max. C’est logique, car le M1 Max fait entrer beaucoup plus de choses dans sa matrice. Elle deviendra plus petite lorsque le processus de production de la puce sera capable d’utiliser des composants plus petits – des technologies sur lesquelles les fabricants de puces travaillent activement. Mais pour l’instant, il est simplement intéressant de noter que le M1 possède 16 milliards de transistors, tandis que le M1 Max en possède 57 milliards, le tout dans un espace de la taille d’un ongle.

Le M1, le M1 Pro, le M1 Max et le futur M2 sont tous des processeurs Apple Silicon. Chacun d’entre eux a simplement un peu plus de puissance que le suivant. Lorsque vous envisagerez d’acheter votre prochain Mac, il vous faudra analyser le rapport prix/performances pour décider laquelle de ces puces SoC répond à vos besoins et à votre budget.

Source : ZDNet.com

Leave a Reply

Your email address will not be published. Required fields are marked *