archy13 - stock.adobe.com

Everspin décline ses mémoires MRAM en cache pour le stockage

Aussi rapide que la DRAM mais persistante en cas de coupure de courant, la MRAM n’adressait jusque-là que des marchés confidentiels. Elle prend tout son intérêt dans les baies de stockage grâce à la démocratisation des bus CXL compatibles avec sa vitesse.

La société américaine Everspin, héritière actuelle des mémoires MRAM inventées par son ancêtre FreeScale en 2006, vient de présenter un module de mémoire externe pour serveurs, via une connectique CXL. L’enjeu est de doter les baies de stockage d’une zone de cache à laquelle les serveurs accèdent aussi rapidement que s’il s’agissait d’une mémoire qui leur était interne. Soit 100 fois plus vite que lorsqu’ils lisent ou écrivent des données sur ces baies de stockage par des moyens conventionnels.

« CXL est un standard qui nous apporte la possibilité d’utiliser la mémoire MRAM dans une catégorie informatique bien plus répandue que celles d’origine », se félicite Sanjeev Aggarwal, le PDG d’Everspin, dans un communiqué. Everspin vend habituellement ses composants de MRAM comme de la mémoire résistante aux coupures de courant dans des équipements spécialisés.

Une mémoire idéale en guise de cache pour le stockage

Aussi rapide, voire plus rapide, que de la DRAM conventionnelle, la MRAM ne stocke pas de charge électrique dans des microcondensateurs, mais oriente le spin des électrons d’un bout de matériau magnétique dans une direction ou l’autre selon la valeur du bit à stocker. Ainsi, alors que les charges électriques d’une DRAM doivent régulièrement être réamplifiées par une alimentation en courant, les spins des électrons n’ont besoin d’aucune énergie extérieure pour rester orientés.

Le contenu d’une MRAM n’est pas aussi persistant que celui d’une mémoire NAND (le composant principal des SSD), car la température extérieure finit par influencer l’orientation des spins. Toutefois, la non-volatilité dure suffisamment longtemps pour permettre le redémarrage d’une machine avec toutes ses données de travail encore intactes malgré un arrêt brutal.

La MRAM est ainsi idéale en guise de cache rapide pour des baies de stockage, car, en cas de coupure inopinée du courant, elle conservera les données qui étaient en cours d’écriture. Et elle les déversera comme si rien ne s’était passé sur les SSD ou les disques durs lorsque ceux-ci seront à nouveau alimentés.

Notons que, malgré cet avantage, la MRAM n’a jamais réussi à remplacer la DRAM dans les serveurs. Et, ce, pour deux raisons : elle coûte bien plus cher à fabriquer et elle est bien moins dense. À taille physique égale, un composant contient 4 Go quand il s’agit de DRAM DDR5 (plus exactement 32 Gbits), contre seulement 256 Mo (2 Gbits) quand il s’agit de MRAM. Accessoirement, écrire sur une MRAM consomme dix fois plus d’électricité qu’écrire sur une DRAM. Dans un système qui stocke en permanence des données en mémoire, l’intérêt énergétique d’une MRAM qui ne consomme rien au repos est nul.

Toutefois, la MRAM autorise des compromis intéressants. IBM s’en sert par exemple comme mémoire cache embarquée dans ses FCM, soit ses SSD prioritaires. Ils qui ont le même format physique et la même capacité de stockage brute que des SSD ordinaires, mais ils intègrent un processeur en plus pour compresser et chiffrer eux-mêmes leurs contenus. Ce ne serait pas possible avec de la DRAM, car celle-ci, pour rester alimentée, a besoin de tout un rail d’accumulateurs qui occupent à eux seuls le quart de la surface du SSD. Avec la MRAM, nul besoin de ces dispositifs et la place gagnée peut être utilisée pour placer le processeur.

Le CXL pour accéder au stockage externe à la vitesse d’une carte PCIe

En ce qui la concerne, la connectique CXL, un standard émergeant, revient à transporter sur un câble les signaux d’un connecteur PCie, soit environ 16 Go/s d’accès mémoire direct par câble SFF-TA-1002. Cela équivaut à la bande passante d’un SSD NVMe interne en PCIe 5.0 sur quatre voies. Un serveur de 128 voies PCIe 5.0 peut ainsi communiquer en direct avec 32 SSD NVMe situés sur une baie externe, reliée par autant de câbles, avec une bande passante cumulée de 512 Go/s.

Habituellement, un serveur est plutôt relié en réseau à une baie de SSD via deux cartes Ethernet de 25 Gbit/s qui, ensemble, offrent une bande passante cumulée d’environ 5 Go/s. Mais quand bien même une entreprise se doterait de la dernière génération de cartes réseau hors de prix en 800 Gbit/s, la bande passante stagnerait à 160 Go/s.

Le problème est cependant moins la vitesse autorisée par le contrôleur Ethernet des cartes réseau, que le fait d’utiliser un protocole réseau qui passe son temps à encoder et décoder les données dans des paquets. Une action elle-même consommatrice de bande passante, de cycles de calcul. Et, concernant le stockage, fortement génératrice de temps de latence, ce qui impacte la quantité d’IOPS possible, soit la rapidité de passer d’un fichier à l’autre.  

En CXL, le serveur n’encode ni ne décode rien. Il accède aux unités distantes comme il le fait avec sa mémoire : en lisant ou en écrivant des bits à des adresses, à la vitesse la plus rapide dont sont capables ses processeurs. Mais encore faut-il qu’une mémoire adressable se trouve à l’autre bout des câbles. C’est le cas des SSD NVMe, de préférence les modèles certifiés CXL.

Pour autant, la mémoire NAND qui compose leur capacité est jusqu’à 1000 fois plus lente en écriture qu’une DRAM ou qu’une MRAM. D’où l’intérêt de positionner ces dernières en guise de cache, pour ne pas ralentir le serveur lorsqu’il sauvegarde des données, puis les transférer à vitesse réduite vers la NAND quand le serveur fait autre chose. Si Everspin évoque plutôt un rapport de vitesse de x100, il s’agit sans doute de prendre en compte le fonctionnement de la baie de stockage. Dans un datacenter, même connectée en CXL, celle-ci est partagée entre plusieurs serveurs et doit router les accès des uns et des autres vers tel ou tel SSD.

Lors de la démonstration de son produit, qui s’est déroulée à l’occasion de la SNIA Developper Conference 2026, un événement dédié au stockage, Everspin avait installé 1 Go de mémoire MRAM, de génération DDR4, dans une machine de stockage pilotée par un FPGA Alveo U250 d’AMD et par un contrôleur CXL de la startup californienne Wolley. Cette machine était reliée à un serveur Supermicro AS-1116CS-TN doté d’un processeur Epyc 9005 à 32 cœurs.

Pour approfondir sur Processeurs et composants