Intel Optane et les Mac (1)

Récemment, Intel a annoncé l’abandon d’Optane, ce qui m’a rappelé un truc : je me suis toujours demandé si ça marchait sur Mac. Et c’est un peu compliqué.

Optane, c’est quoi ? Le nom commercial de la mémoire 3D Xpoint d’Intel. Pour faire simple, il s’agit d’une mémoire qui se place entre la mémoire DRAM (la RAM) et la mémoire flash. Elle offre de très bonnes performances en lecture (bien meilleures que la flash NAND classique), correctes en écriture, et une latence très faible. Et contrairement à la RAM, elle n’est pas volatile : elle garde les données sans être alimentée. Le problème principal, comme souvent, c’est le prix : elle se plaçait entre la NAND et la mémoire vive.

La solution d’Intel, pendant les quelques années de commercialisation, a été un peu compliquée, avec trois voies. La première était simple : des SSD de capacité correcte (de l’ordre de 500 Go) avec d’excellentes performances mais un prix très élevé (600 $ en 2017 en 480 Go). Les SSD de ce type étaient disponibles essentiellement en format PCI-Express (rarement en barrettes) parce que la mémoire a un défaut : elle chauffe pas mal. La seconde voie, c’est celle de la mémoire cache : Intel a proposé des barrettes (M.2 NVMe) de 16, 32 ou 64 Go avec de la mémoire Optane. C’était tout de même assez cher à l’époque (45 $ la version 16 Go en 2017, 130 $ la version 64 Go en 2018) et l’ensemble nécessitait un logiciel Intel et une carte mère adaptée. Plus exactement, il y avait une limite artificielle pour la plateforme (Intel de 7e génération) et un logiciel Intel qui faisait en gros la même chose que le Fusion Drive chez Apple : mettre dans la mémoire rapide les données importantes. C’est intéressant avec un disque dur, pour essayer de cacher sa lenteur. Le problème d’Intel, c’est qu’un module Optane de 16 ou 32 Go ne valait pas tellement moins qu’un SSD de 128 ou 256 Go, donc à part pour les fabricants de PC portables bas de gamme et éventuellement pour ceux qui voulaient un truc (très) réactif, un SSD classique était probablement plus intéressant. Pour les fabricants de PC portables, c’était parfois plus vendeur de mettre un HDD de 1 ou 2 To avec de l’Optane, parce que la capacité fait vendre, mais c’est tout.

La dernière voie, celle que j’essaie aujourd’hui, c’est les SSD de la gamme H. Il en existe plusieurs (H10 et H20) mais le fonctionnement est le même dans tous les cas : coupler de la mémoire Optane (16 ou 32 Go) avec un SSD classique à base de mémoire QLC (la moins onéreuse des mémoire flash). J’ai acheté un H10 de 256 Go (16 Go d’Optane) pour tester, mais j’avais déjà essayé un H10 il y a quelques années pour Canard PC Hardware.

Un H10 de 256 + 16 Go

Quand ça marche (et spoiler, cette fois, ça n’a pas marché), c’est assez efficace : j’avais testé le H10 sur un PC portable adapté et on avait un appareil très réactif grâce à Optane. Les performances sur les accès aléatoires sont très élevées, ce qui amène des gains sur l’ouverture des applications, par exemple. Mais le fonctionnement même du truc amenait quand même des défauts bizarres : par défaut, on écrit d’abord dans la mémoire Optane (lente en écriture, de l’ordre de 300 Mo/s sur le H10 de 512 Go), puis dans le cache pseudo-SLC du SSD (~900 Mo/s) puis enfin directement sur la mémoire flash en mode QLC, à 60 Mo/s (c’est lent). Disons que dans les PC portables, le compromis était acceptable.

En Thunderbolt

Au départ, je comptais tester mon H10 en Thunderbolt pour tenter de faire un Fusion Drive, mais ça n’a pas marché. petit aparté, d’ailleurs, Apple a tenté un truc pour accélérer les Fusion Drive à une époque, en forçant le SSD utilisé en mode pseudo-SLC en permanence. Mais pour revenir au H10, ça ne fonctionne tout simplement pas en Thunderbolt, pour une bonne raison : le montage d’Intel est un bricolage. Pour arriver à placer 16 Go d’Optane et 256 Go de flash NAND sur la même barrette, Intel utilise en fait une méthode un peu bizarre : la bifurcation en PCI-Express. Au lieu d’utiliser les 4 lignes PCI-Express du connecteur M.2, Intel travaille en mode 2×2 : 2 lignes pour Optane (c’est-à-dire ~2 Go/s au maximum) et 2 lignes pour le SSD classique. Mais la bifurcation nécessite un support explicite et ça ne fonctionne pas en Thunderbolt. En pratique, j’ai testé le SSD dans deux boîtiers Thunderbolt sans succès : dans les deux cas, seule le SSD classique est visible. C’est d’ailleurs la même chose avec un adaptateur purement USB-C et dans un de mes PC, ce qui est plus étonnant. J’ai une plateforme à base de Core de 7e génération qui doit normalement supporter Optane… mais ça ne fonctionne pas. Je n’ai pas (encore) testé, mais le comportement peut différer dans certains cas : sur les cartes mères AMD, c’est souvent la partie Optane qui est visible (et pas le SSD classique), mais en gros, si la carte mère ne supporte pas explicitement la bifurcation sur le connecteur M.2, vous ne verrez qu’un des deux périphériques.

L’option n’est pas liée au H10


Oups


Deux lignes seulement

Dans le cas du H10 de 256 Go, qui plus est, les performances sont assez faibles. C’est en effet un Intel 660p à base de mémoire QLC et la petite capacité limite les performances, tout comme l’interface PCI-Express. Du coup, il lit à ~920 Mo/s et écrit à 480 Mo/s dans son cache, ce qui n’est pas spécialement élevé.

C’est assez bof pour du M.2/NVMe


Même physiquement, on pourrait le diviser en deux (d’un côté le SSD classique, de l’autre Optane)

Si tout se passe bien, je vous proposerais tout de même d’autres tests liés à Optane dans le futur, parce que les barrettes qui ne contiennent que de la mémoire Optane, ainsi que les SSD PCI-Express, fonctionnent normalement sur Mac. On trouve d’ailleurs de temps en temps des gens qui installent des SSD 900p (les plus rapides) dans des Mac Pro, par exemple.