Seite 2: Die Intel Optane SSD 900P im Detail (1)

Damit ein Prozessor rechnen kann, benötigt er Daten – damit diese verfügbar sind, gibt es in einem Computer viele Stufen an Cache- bzw. Speichersystemen. Die Rechenoperationen führt der Prozessor auf Registern aus. Davon gibt es, je nach Architektur, nur eine sehr geringe Anzahl. Ein Register kann jeweils ein Datenwort fassen. Im Prozessor befindet sich außerdem der L1-, L2- und L3-Cache, der nur wenige Megabyte groß, dafür aber sehr schnell ist – wenngleich schon deutlich langsamer als die Register.

Sollten die Daten nicht in einem der Prozessor-Caches liegen, müssen sie aus dem Arbeitsspeicher geholt werden. Dabei handelt es sich um flüchtigen DRAM-Speicher, der wiederum deutlich langsamer als der Prozessorcache ist. Liegen die Daten nicht im Arbeitsspeicher, weil dieser voll ist oder das Programm noch gar nicht gestartet wurde, müssen sie aus dem nichtflüchtigen Massenspeicher geladen werden. Früher waren das Festplatten, inzwischen auch immer mehr NAND-basierte SSDs.

Obwohl NAND-SSDs unbestritten deutlich schneller als mechanische Festplatten sind, gibt es bei der Performance zwischen NAND und DRAM immer noch eine sehr große Lücke. Diese Lücke soll 3D XPoint schließen. Tatsächlich sieht Intel den Einsatz von 3D XPoint sogar als Ersatz für herkömmlichen DRAM-basierten Arbeitsspeicher vor, so könne man nun auch erstmals einen nichtflüchtigen Arbeitsspeicher mit hoher Kapazität realisieren.

In diesem Artikel geht es jedoch hauptsächlich um die Intel Optane SSD 900P, auf der ebenfalls der 3D-XPoint-Speicher zum Einsatz kommt. Doch was unterscheidet NAND und 3D XPoint nun voneinander?

Egal ob Charge-Trap, Floating Gate oder Vertical (3D) – das Grundprinzip ist bei NAND immer gleich: Elektronen werden in eine leitende oder nichtleitende Schicht eingebracht und verändern so die Eigenschaft eines Transistors. Je nachdem, wie der Transistor "programmiert" wurde, wird eine andere Bitwertigkeit repräsentiert. Bei SLC (Single Level Cell) entweder 0 der 1, mit MLC können entsprechend mehr Zustände kodiert werden.

Diese Technik hat jedoch einen großen Nachteil: Das Einbringen der Elektronen erfolgt durch Tunneln, einfach gesprochen werden die Elektronen mit einer hohen Spannung in die Schicht reingeschossen und sind dann dort gefangen. Bei jedem dieser Vorgänge wird das Material jedoch geschädigt, sodass die Elektronen irgendwann nicht mehr gefangen werden können: Die Speicherzelle ist defekt. Dies sorgt für die wohlbekannte Beschränkung der Lebensdauer bei allen flash-basierten Speichermedien.

Bei 3D XPoint, englisch ausgesprochen Cross Point und sinngemäß mit Knoten- oder Schnittpunkt übersetzt, kommt hingegen eine Technologie zum Einsatz, bei der der Widerstand eines Materials verändert wird – es werden keine Elektronen mehr getunnelt und gefangen.

An diesem Schaubild erklärt sich auch der Name des Speichers: Jede Speicherzelle ist mit zwei Leitern verbunden. 3D-XPoint-Speicher kann bitgenau adressiert werden, indem die entsprechende Zeile und Spalte (= Kreuzung) ausgewählt wird.

Abgesehen vom komplett unterschiedlichen Materialaufbau ergibt sich auch ein wesentlicher technischer Unterschied: NAND-Speicher kann nur seitenweise programmiert werden, je nach SSD ist eine Seite vier, acht oder sogar 16 KB groß. Möchte man nur ein einziges Bit ändern, muss trotzdem die komplette Seite neu programmiert werden – es muss ein Read-Modify-Write-Zyklus ausgeführt werden. Dieses Problem haben inzwischen zwar alle SSD-Hersteller in den Griff bekommen, jedoch erst mit jahrelanger Erfahrung und sehr komplexen Garbage-Collection-Algorithmen. Durch die bitgenaue Adressierung bei 3D XPoint entfällt die Read-Modify-Write-Mechanik dort vollständig.

Die Algorithmen, um die Unzulänglichkeiten von NAND-Speicher in den Griff zu bekommen, benötigen in der Regel eine große Menge Arbeitsspeicher, den fast alle SSDs in Form von DRAM-Cache besitzen. Zwar gibt es auch einige Modelle ohne externen Cache, es handelt sich dabei jedoch meistens um Laufwerke mit geringer Performance. Der DRAM-Cache wiederum macht SSDs anfällig für unerwartete Stromausfälle, im schlimmsten Fall gehen nicht nur die zuletzt geschriebenen, sondern noch wesentlich mehr Daten verloren. Die wohl berüchtigtste Manifestation dieses Problems war der Intel 8-MB-Bug.

Auch dieses Problem kann mit 3D XPoint weitestgehend umgangen werden, denn der Speicher erlaubt ein Design des Laufwerks ohne externen DRAM-Cache, womit auch die Stützkondensatoren entfallen. Intel spezifiziert die 900P dennoch ohne Enhanced Power Loss Data Protection, also erweitertem Schutz vor Datenverlust bei plötzlichem Stromausfall. Die Intel Optane SSD P4800X, von der die 900P abstammt, besitzt diesen Schutz.

Auch die Intel SSD 750, die ebenfalls die Consumer-Version eines Enterprise-Laufwerks war, hatte dieses Feature noch im Datenblatt stehen. Es gibt hier im Wesentlichen zwei Möglichkeiten: Die 900P ist genauso vor Stromausfall geschützt wie die P4800X, Intel schreibt es aber nicht ins Datenblatt, um die Differenzierung zur wesentlich teureren P4800X sicherzustellen. Es könnte sich allerdings auch um ein Feature handeln, das bei der 900P einfach in der Firmware deaktiviert wurde.