Zum Inhalt
Bytearium

Keine Werbung und keine Partnerlinks aktiv

Hardware

NVMe-SSDs verstehen

NVMe ist ein Protokoll für nichtflüchtigen Speicher über PCI Express; Formfaktor, Lane-Anzahl und Protokoll sind nicht dasselbe.

Zwei SSDs passen in denselben Steckplatz, sehen gleich aus und verhalten sich völlig verschieden. „M.2“ auf der Packung erklärt die Form, nicht das Verhalten.

Kurz gesagt

NVMe ist die Sprache, in der sich eine moderne SSD mit dem Rechner unterhält, meist über PCI Express, die schnelle Verbindung im Inneren eines PCs. M.2 ist nur ein Steckverbinder samt Größe. Wie sich ein Laufwerk verhält, hängt vom Protokoll ab, davon, wie viele PCI-Express-Lanes welcher Generation der Steckplatz wirklich liefert, von der Kühlung und von der Haltbarkeitsangabe. Das sind die Dinge, die du vergleichen solltest.

So funktioniert’s

  1. Drei Ebenen, drei Fragen. Der Formfaktor ist Form und Steckverbinder. M.2 ist eine von PCI-SIG definierte Familie von Formfaktoren, und die Module heißen nach Breite und Länge in Millimetern: Ein Modul vom Typ 2280 ist 22 mm breit und 80 mm lang. Die Anbindung ist die elektrische Verbindung, entweder SATA oder PCI Express. Das Protokoll regelt, wie Host und Laufwerk miteinander sprechen. NVMe legt fest, wie Software auf dem Rechner mit nichtflüchtigem Speicher kommuniziert. Es entstand für PCI Express, umfasst heute auch RDMA und TCP als Transportwege und ist der Industriestandard für SSDs in den Bauformen U.2, M.2, Steckkarte und EDSFF.
  2. Ein M.2-Steckplatz kann SATA oder PCI Express führen. M.2-SSDs gibt es in einer SATA- und in einer PCI-Express-Ausführung, und ein SATA-Laufwerk läuft unabhängig vom Formfaktor mit SATA-Geschwindigkeit. Das Kerbenmuster am Steckverbinder, die Kodierung (englisch Key), verrät, was Modul und Sockel unterstützen: SATA-Laufwerke nutzen tendenziell eine B-Kodierung, schnelle PCI-Express-x4-Laufwerke eine M-Kodierung, weil nur sie vier Lanes führt. Prüfe immer, was der Steckplatz in deinem Gerät kann.
  3. Warteschlangen statt einer Reihe. Bei NVMe über PCI Express legt der Host Befehle in eine Submission Queue im Arbeitsspeicher und gibt dem Laufwerk über ein Doorbell-Register Bescheid; das Laufwerk schreibt Ergebnisse in eine zugehörige Completion Queue, und Befehle dürfen in anderer Reihenfolge fertig werden. Solche Queues kann es viele parallel geben. NVM Express nennt als theoretisches Maximum rund 64.000 Queues mit je rund 64.000 Befehlen und hielt 2018 fest, dass SSDs tatsächlich 16 bis 256 Queues mit Tiefen von 32 bis 2.048 anboten. Dieser Aufbau passt zu vielen kleinen Anfragen gleichzeitig.
  4. Lanes und Generation setzen die Obergrenze. Ein Sockel mit M-Kodierung kann bis zu vier PCI-Express-Lanes führen. Wie viele Lanes welcher Generation ein bestimmter Steckplatz tatsächlich liefert, hängt vom Mainboard ab, und die Geschwindigkeiten auf der Verpackung sind „bis zu“-Werte. Mit welcher Anbindung ein Laufwerk wirklich läuft, zeigt das Betriebssystem.
  5. Wärme zählt. NVMe-Laufwerke melden im SMART-/Health-Log eine Composite Temperature und die Minuten oberhalb einer Warn- und einer kritischen Schwelle. Der Composite-Wert wird herstellerspezifisch berechnet und muss keinem realen Messpunkt am Laufwerk entsprechen. Hersteller der schnellsten Laufwerke verlangen Kühlung, so auch Corsair bei dem unten genannten PCIe-5.0-Laufwerk.
  6. Haltbarkeit ist eine Angabe, Verschleiß ein Messwert. Der JEDEC-Standard JESD218 definiert die Haltbarkeitsangabe TBW (Terabytes Written): die höchste Zahl an Terabyte, die ein Host auf das Laufwerk schreiben darf, gemessen mit dem Standard-Lastprofil seiner Klasse (Client oder Enterprise), sodass das Laufwerk Kapazität, Fehlerrate, Ausfallrate und Datenerhalt innerhalb der Grenzen hält. Dieselbe Angabe lässt sich als DWPD (Drive Writes per Day) ausdrücken: TBW ÷ (Kapazität in TB × Lebensdauer in Jahren × 365). Die Angaben hängen vom verwendeten Lastprofil ab. Das Laufwerk selbst meldet Percentage Used, eine herstellerspezifische Schätzung des verbrauchten Lebens (100 heißt: geschätzte Haltbarkeit aufgebraucht, was nicht zwingend einen Ausfall bedeutet, und der Wert darf über 100 liegen), Available Spare samt Schwelle und Critical Warning-Flags.

In der Praxis

Drei Befehle zeigen, was du wirklich hast (die Ausgabe ist hier nicht abgedruckt):

lsblk -d -o NAME,MODEL,SIZE,TRAN        # TRAN zeigt „nvme“ bei NVMe-Laufwerken
sudo nvme smart-log /dev/nvme0          # Temperatur, Percentage Used, Reserve (nvme-cli)
sudo lspci -vv -s 01:00.0               # LnkCap = was das Laufwerk kann, LnkSta = womit es läuft

(01:00.0 ist ein Platzhalter; lspci | grep -i "non-volatile" liefert die echte Adresse.) Ein Beispiel aus dem Bytearium-Inventar: Im G-PC steckt als Spiele-Laufwerk eine Corsair MP700 mit 2 TB. Corsair führt dieses Modell als PCIe 5.0 x4, NVMe 2.0, M.2 2280, nennt bis zu 10.000 MB/s sequenziell lesend und schreibend (eine Herstellerangabe, keine Messung von uns) und weist darauf hin, dass SSD-Kühlung nötig ist und die Leistung in PCIe-Gen4-M.2-Steckplätzen niedriger ausfällt. Welche Anbindung der Steckplatz im G-PC tatsächlich aushandelt und wie das Laufwerk gekühlt wird, ist im Inventar nicht erfasst. LnkSta aus dem Befehl oben beantwortet die erste Frage.

Wärme ist die stille Grenze

Eine NVMe-SSD unter dauerhaften Schreibzugriffen wird schnell warm, und die meisten Laufwerke drosseln ihre Geschwindigkeit, sobald der Controller eine Temperatur meldet, die er für zu hoch hält; das Laufwerk bleibt sicher, die Übertragung sinkt nur auf einen Bruchteil. In einem Servergehäuse mit Luftstrom spielt das selten eine Rolle, in einem Mini-PC oder einem Steckplatz hinter der Grafikkarte schon. Ein flacher Kühlkörper oder die M.2-Abdeckung des Boards reicht meist; der Punkt ist, während eines langen Kopiervorgangs das Temperaturfeld in der SMART-Ausgabe zu beobachten, bevor du dem Laufwerk oder dem Kabel die Schuld gibst.

Prüfliste

  • Prüfe vor dem Kauf im Mainboard-Handbuch, was der Steckplatz kann (SATA, PCI Express, Zahl der Lanes, Generation); „M.2“ allein reicht nicht.
  • Gleiche Kodierung und Länge ab: Ein M-Modul vom Typ 2280 braucht einen Sockel, der es aufnimmt.
  • Vergleiche zuerst Protokoll, PCI-Express-Generation und Lanes, danach Dauerleistung und Haltbarkeit, nicht die Spitzenzahl beim sequenziellen Lesen.
  • Lies die Haltbarkeitsangabe (TBW oder DWPD) zusammen mit Lastklasse, Garantiezeit und Kapazität, für die sie gilt.
  • Prüfe mit lspci -vv, mit welcher Anbindung das Laufwerk läuft, und mit nvme smart-log seine Temperatur unter echter Last.
  • Kühle das Laufwerk so, wie der Hersteller es verlangt, besonders bei schnellen PCIe-5.0-Modellen.
  • Lies Percentage Used, Available Spare und Critical Warning regelmäßig aus und halte trotzdem ein Backup bereit (siehe Guide zum 3-2-1-Backup).
  • Suche nach Firmware-Updates des Herstellers und sieh im Datenblatt nach einem Stromausfallschutz, wenn das Laufwerk Daten hält, die mitten im Schreiben nicht verloren gehen dürfen.

Primärquellen

Die Quellen belegen die technischen Kernaussagen. Einordnung und Prüfliste sind unsere eigene Arbeit.

  1. NVM Express, Inc.Specifications
  2. NVM Express, Inc.NVM Express over PCIe Transport Specification, Revision 1.0
  3. NVM Express, Inc.Base NVM Express – Part One
  4. PCI-SIGPCI Express M.2
  5. Dell TechnologiesDifferences between M.2 cards, slots, keys, sizes and types
  6. JEDECJESD218B, Solid-State Drive (SSD) Requirements and Endurance Test Method
  7. JEDECSolid State Drives
  8. libnvme project (via Debian Manpages)nvme_smart_log(2)
  9. CorsairMP700 2TB PCIe 5.0 (Gen 5) x4 NVMe M.2 SSD

Auf dieser Seite gibt es keine Werbung und keine Partnerlinks.