Le SSD NVMe des iMac avec Fusion Drive ne fait pas réellement 24 Go

Avec la dernière génération d’iMac, Apple a remplacé le SSD de 128 Go des Fusion Drive par un SSD de « 24 Go ». Un lecteur en a testé un (merci Gilles de Polysoft) et il réserve de petites surprises.

Côté format, rien de spécial : c’est le même format propriétaire en barrette utilisé dans les Mac Pro, les MacBook Pro Retina récents et les MacBook Air Air récents. Il est interfacé sur quatre lignes PCI-Express 2.0, soit une bande passante maximale de 2 Go/s.

Avant même de s’attaquer au côté physique, un point intéressant : comme le SSD du MacBook, il utilise la technologie NVMe. Il s’agit de la façon de passer les données entre le contrôleur et l’OS, et le NVMe est plus rapide que l’AHCI. Les autres SSD PCIe Apple utilisent tous l’AHCI sur PCI-Express.

NVMe

NVMe

Les performances, une fois dans un Mac Pro, sont élevées : 850 Mo/s en lecture et ~360 Mo/s en écriture. Pour se faire une idée, je monte régulièrement des SSD bas de gamme de 32 Go dans des machines, et ils dépassent rarement 50 Mo/s en écriture.

Rapide

Rapide

Le contrôleur ressemble à celui du MacBook, mais ce n’est pas le même. Tout du moins, le marquage n’est pas le même. On trouve les informations sur une puce de RAM intégrée (512 Mo de LPDDR3, a priori le cache) mais pas sur le SSD.

Le contrôleur

Le contrôleur

Le point intéressant vient de la capacité réelle, ce qui explique les guillemets au début. La capacité utile est de 24 Go, mais le nom du SSD (AP0032H) et l’étiquette indique explicitement une capacité de 32 Go. Vu l’usage du SSD, un cache pour le Fusion Drive, je suppose qu’Apple réserve une partie de la mémoire pour la gestion de l’usure. Réserver ~25 % de la capacité n’est pas rare, surtout sur de petites capacités.

La flash et le contrôleur

La flash et le contrôleur


La NAND (et le marquage Apple)

La NAND (et le marquage Apple)

Pour la suite, je vous préviens, je ne suis pas certain de ce que j’explique. Ce sont des suppositions, étayées par quelques points tout de même. Ce qui me chiffonne (et Gilles aussi) c’est que les débits sont élevés par rapport à la capacité, mais aussi que le marquage des puces indique une capacité de 16 Go.

Les quatre puces affichent la référence TH58TEG7DDKLAMF. Google ne référence pas cette chaîne, mais un (vieux) document sur la capacité permet de se donner une idée.

La NAND

La NAND

TH58 indique une puce multichip, T de la Toggle NAND (logique, c’est récent), E doit indiquer une tension faible (le document va jusqu’à D, E semble logique), G7 la capacité (2^7 gigabits, soit 16 Go), D qu’il s’agit de MLC. Je ne suis pas certain pour le D suivant, le K indique logiquement de la mémoire en 19 nm, le LA de la mémoire en LGA (c’est visible), le M de la mémoire sur deux canaux. Pour le dernier (F), aucune idée, mais c’est cohérent avec le document.

Plus simplement, il s’agit donc d’une mémoire de 16 Go sur deux canaux. Etant donné qu’il y a quatre puces, le SSD contient donc réellement 64 Go de données. La seule explication logique pour moi, c’est qu’Apple utilise la mémoire en mode SLC, avec un seul bit par cellule au lieu de deux. C’est une méthode souvent utilisée dans les SSD Toshiba, pour améliorer les performances en écriture, et c’est cohérent avec les débits élevés. Dans les SSD classique, la mémoire écrite en mode SLC doit être réécrite en mode MLC en arrière-plan, pour garder la capacité, mais ici ce n’est visiblement pas le cas.

Finalement, il semble surtout que dire « Apple met un SSD de 24 Go pour diminuer les coûts » est un raccourci assez facile et surtout faux. Je ne suis pas totalement certain de mon analyse, mais il y a visiblement un gros travail sur le SSD pour obtenir des performances et une endurance bien plus élevée que ce que l’on pourrait attendre d’un SSD de 24 Go. Est-ce vraiment plus intéressant que d’utiliser un SSD classique de 128 Go comme auparavant ? Aucune idée, mais – comme souvent – le manque de détails technique chez Apple cache quelque chose de bien plus compliqué que ce que est montré.