Comment la «mémoire unifiée» accélère les Mac M1 ARM d’Apple
Apple repense la manière dont les composants doivent exister et fonctionner à l’intérieur d’un ordinateur portable. Avec les puces M1 dans les nouveaux Mac, Apple a une nouvelle «architecture de mémoire unifiée» (UMA) qui accélère considérablement les performances de la mémoire. Voici comment fonctionne la mémoire sur Apple Silicon.
Sommaire
Comment Apple Silicon gère la RAM
Au cas où vous n’auriez pas déjà entendu la nouvelle, Apple a annoncé une nouvelle liste de Mac en novembre 2020. Les nouveaux modèles MacBook Air, MacBook Pro et Mac Mini utilisent un processeur ARM conçu sur mesure par Apple, appelé M1. Ce changement était attendu depuis longtemps et est le point culminant de la décennie passée par Apple à concevoir des processeurs ARM pour iPhone et iPad.
Le M1 est un système sur puce (SoC), ce qui signifie qu’il n’y a pas seulement un processeur à l’intérieur du processeur, mais également d’autres composants clés, y compris le GPU, les contrôleurs d’E / S, le Neural Engine d’Apple pour les tâches d’IA et, surtout pour nos besoins, la RAM physique fait partie de ce même package. Pour être clair, la RAM n’est pas sur le même silicium que les parties fondamentales du SoC. Au lieu de cela, il se trouve sur le côté, comme illustré ci-dessus.
L’ajout de RAM au SoC n’est pas nouveau. Les SoC de smartphone peuvent inclure de la RAM, et la décision d’Apple de mettre les modules de RAM de côté est quelque chose que nous voyons de la part de la société depuis au moins 2018. Si vous regardez ce démontage iFixit pour l’iPad Pro 11, vous pouvez voir le RAM assis sur le côté avec le processeur A12X.
Ce qui est différent maintenant, c’est que cette approche arrive également sur le Mac, un ordinateur à part entière conçu pour les charges de travail plus lourdes.
Les bases: que sont la RAM et la mémoire?
RAM signifie Random Access Memory. C’est le principal composant de la mémoire système, qui est un espace de stockage temporaire pour les données que votre ordinateur utilise actuellement. Cela peut être n’importe quoi, des fichiers nécessaires pour exécuter le système d’exploitation à une feuille de calcul que vous modifiez actuellement, en passant par le contenu des onglets ouverts du navigateur.
Lorsque vous décidez d’ouvrir un fichier texte, votre CPU reçoit ces instructions ainsi que le programme à utiliser. La CPU prend alors toutes les données dont elle a besoin pour ces opérations et charge les informations nécessaires en mémoire. Ensuite, le processeur gère les modifications apportées au fichier en accédant et en manipulant ce qui est en mémoire.
En règle générale, la RAM existe sous la forme de ces bâtons longs et minces qui s’insèrent dans des emplacements spécialisés de votre ordinateur portable ou de votre carte mère de bureau, comme illustré ci-dessus. La RAM peut également être un simple module carré ou rectangulaire soudé sur la carte mère. Quoi qu’il en soit, la RAM pour PC et Mac a toujours été un composant discret avec son propre espace sur la carte mère.
M1 RAM: le colocataire discret
Ainsi, les modules de RAM physiques sont toujours des entités distinctes, mais ils sont assis sur le même substrat vert que le processeur. «Big whoop», je vous entends dire. «Quel est le problème?» Eh bien, tout d’abord, cela signifie un accès plus rapide à la mémoire, ce qui améliore inévitablement les performances. De plus, Apple peaufine la façon dont la mémoire est utilisée dans le système.
Apple appelle son approche une «architecture de mémoire unifiée» (UMA). L’idée de base est que la RAM du M1 est un pool unique de mémoire auquel toutes les parties du processeur peuvent accéder. Premièrement, cela signifie que si le GPU a besoin de plus de mémoire système, il peut augmenter l’utilisation tandis que d’autres parties du SoC diminuent. Mieux encore, il n’est pas nécessaire de découper des portions de mémoire pour chaque partie du SoC, puis de transférer les données entre les deux espaces pour différentes parties du processeur. Au lieu de cela, le GPU, le CPU et d’autres parties du processeur peuvent accéder aux mêmes données à la même adresse mémoire.
Pour voir pourquoi cela est important, imaginez les grandes lignes du fonctionnement d’un jeu vidéo. Le CPU reçoit d’abord toutes les instructions pour le jeu, puis décharge les données dont le GPU a besoin sur la carte graphique. La carte graphique prend alors toutes ces données et y travaille dans son propre processeur (le GPU) et la RAM intégrée.
Même si vous avez un processeur avec des graphiques intégrés, le GPU conserve généralement sa propre mémoire, tout comme le processeur. Ils travaillent tous les deux sur les mêmes données indépendamment, puis font la navette entre leurs fiefs de mémoire. Si vous supprimez l’obligation de déplacer les données d’avant en arrière, il est facile de voir comment le fait de tout conserver dans le même classeur virtuel pourrait améliorer les performances.
Par exemple, voici comment Apple décrit son architecture de mémoire unifiée sur le site officiel M1:
«M1 dispose également de notre architecture de mémoire unifiée, ou UMA. M1 unifie sa mémoire à bande passante élevée et à faible latence en un seul pool au sein d’un package personnalisé. Par conséquent, toutes les technologies du SoC peuvent accéder aux mêmes données sans les copier entre plusieurs pools de mémoire. Cela améliore considérablement les performances et l’efficacité énergétique. Les applications vidéo sont plus vives. Les jeux sont plus riches et plus détaillés. Le traitement des images est ultra-rapide. Et tout votre système est plus réactif. »
Et ce n’est pas seulement que chaque composant peut accéder à la même mémoire au même endroit. Comme Chris Mellor le souligne au Register, Apple utilise ici une mémoire à bande passante élevée. La mémoire est plus proche du CPU (et des autres composants), et il est juste plus rapide d’accéder qu’il ne le serait pour accéder à une puce RAM traditionnelle connectée à une carte mère via une interface de socket.
Apple n’est pas la première entreprise à essayer la mémoire unifiée
Apple n’est pas la première entreprise à aborder ce problème. Par exemple, NVIDIA a commencé à proposer aux développeurs une solution matérielle et logicielle appelée Unified Memory il y a environ six ans.
Pour NVIDIA, la mémoire unifiée fournit un emplacement mémoire unique qui est «accessible à partir de n’importe quel processeur d’un système». Dans le monde de NVIDIA, en ce qui concerne le CPU et le GPU, ils vont au même endroit pour les mêmes données. Cependant, dans les coulisses, le système pagine les données requises entre la mémoire CPU et GPU séparées.
Pour autant que nous le sachions, Apple n’adopte pas une approche utilisant des techniques en coulisse. Au lieu de cela, chaque partie du SoC est capable d’accéder exactement au même emplacement pour les données en mémoire.
L’essentiel avec l’UMA d’Apple est de meilleures performances grâce à un accès plus rapide à la RAM et à un pool de mémoire partagée qui supprime les pénalités de performances pour le déplacement de données vers différentes adresses.
De combien de RAM avez-vous besoin?
La solution d’Apple n’est pas que le soleil et le bonheur. Étant donné que le M1 a les modules de RAM si profondément intégrés, vous ne pouvez pas le mettre à niveau après l’achat. Si vous choisissez un MacBook Air de 8 Go, il n’est pas possible d’augmenter la RAM de cet appareil à une date ultérieure. Pour être honnête, la mise à niveau de la RAM n’est pas quelque chose que vous pouvez faire sur un MacBook depuis un certain temps maintenant. C’était quelque chose que les Mac Minis précédents pouvaient faire, mais pas les nouvelles versions M1.
Les premiers Mac M1 atteignent 16 Go – vous pouvez obtenir un Mac M1 avec 8 Go ou 16 Go de mémoire, mais vous ne pouvez pas obtenir plus que cela. Il ne s’agit plus seulement de coller un module RAM dans un slot.
Alors, de combien de RAM avez-vous besoin? Lorsque nous parlons de PC Windows, le conseil général est que 8 Go sont plus que suffisants pour les tâches informatiques de base. Les joueurs ont tout intérêt à augmenter jusqu’à 16 Go, et l’activité des «prosommateurs» doit probablement doubler à nouveau pour des tâches telles que l’édition de fichiers vidéo haute résolution volumineux.
De même, avec les Mac M1, le modèle de base avec 8 Go devrait être suffisant pour la plupart des gens. En fait, il peut couvrir même les utilisations quotidiennes les plus intenses. C’est difficile à dire, cependant, car la plupart des benchmarks que nous avons vus mettent le M1 à l’épreuve dans des benchmarks synthétiques qui poussent le CPU ou le GPU.
Ce qui compte vraiment, c’est la capacité d’un Mac M1 à garder plusieurs programmes et une multitude d’onglets de navigateur ouverts à la fois. Cela ne permet pas seulement de tester le matériel, mais les optimisations logicielles peuvent grandement contribuer à améliorer ce type de performances, c’est pourquoi l’accent a été mis sur les repères qui peuvent vraiment pousser le matériel. Cependant, en fin de compte, nous supposerons que la plupart des gens veulent juste voir comment les nouveaux Mac gèrent l’utilisation du «monde réel».
Stephen Hall chez 9to5 Mac a vu des résultats impressionnants avec un MacBook Air M1 avec 8 Go de RAM. Pour que l’ordinateur portable commence à faiblir, il devait ouvrir une fenêtre Safari avec 24 onglets de site Web, six autres fenêtres Safari lisant une vidéo 2160p et Spotify en arrière-plan. Il a également pris une capture d’écran. « Ce n’est qu’alors que l’ordinateur s’est finalement arrêté », a déclaré Hall.
Chez TechCrunch, Matthew Panazarino est allé encore plus loin avec un MacBook Pro M1 avec 16 Go de RAM. Il a ouvert 400 onglets dans Safari (en plus il avait quelques autres programmes ouverts), et il a très bien fonctionné, sans aucun problème. Fait intéressant, il a essayé la même expérience avec Chrome, mais Chrome s’est éteint. Mais, a-t-il dit, le reste du système a continué à bien fonctionner malgré les problèmes avec le navigateur de Google. En fait, lors de ses tests, il a même remarqué que l’ordinateur portable utilisait un espace de swap à un moment donné, sans baisse notable des performances.
Lorsque votre PC est à court de RAM, il utilise le stockage SSD ou disque dur disponible en tant que pool de mémoire temporaire. Cela peut trahir un ralentissement notable des performances, mais pas avec les Mac M1, semble-t-il.
Ce ne sont que des expériences quotidiennes occasionnelles, pas des tests formels. Néanmoins, ils sont probablement représentatifs de ce à quoi s’attendre pour une utilisation quotidienne intense, et compte tenu de l’approche modifiée de la mémoire, 8 Go de RAM devrait être très bien pour la plupart des gens qui n’ouvrent pas d’onglets de navigateur par centaines.
Cependant, si vous vous retrouvez à éditer des images ou des fichiers vidéo volumineux de plusieurs gigaoctets tout en parcourant quelques dizaines d’onglets et en diffusant un film en arrière-plan sur un moniteur externe, le choix du modèle 16 Go est peut-être le meilleur choix.
Ce n’est pas la première fois qu’Apple repense ses systèmes Mac et passe à une nouvelle architecture.