Wann brauchen Sie NVMe?

Vielleicht haben Sie gehört, dass Non-Volatile Memory Express oder NVM Express (NVMe) die nächste Must-Have-Storage-Technologie ist. Schauen wir uns an, was NVMe liefert. NVMe ist ein Kommunikationsprotokoll für Hochgeschwindigkeitsspeichersysteme, das auf der physischen Schicht von PCIe läuft und ermöglicht es Hosthardware und Software, die Leistung von High-End-SSDs voll auszuschöpfen. Jeder muss es jetzt schaffen, richtig? Nun, nicht ganz so schnell.

NVMe Hintergrund

Erstens, einige Begriffen. Die physikalische PCIe-Schicht besteht aus dem Silizium-Treiber und dem Empfänger an jedem Ende einer Leitung, der die Spannung und Signalisierungsrate des PCIe-Standards erfüllt. NVMe ist das Protokoll oder die Sprache, die über diese Drähte kommuniziert wird. Diese Leitungen könnten auch das PCIe-Protokoll tragen, aber NVMe ist eine viel besser geeignete Möglichkeit, Informationen zu Speichersysteme zu kommunizieren. Es ist keine Überraschung, dass die Entwicklung von PCIe und NVMe aus der gleichen Gruppe von Sponsoring-Unternehmen kam.

NVMe wurde entwickelt, um die Einschränkungen bestehender Speicherschnittstellen und Protokolle wie PATA, SATA, SCSI und SAS zu beheben. Die Ursprünge dieser Protokolle sind über 30 Jahre alt und haben sich auf der Grundlage der begrenzten Fähigkeiten der traditionellen mechanischen Festplatten entwickelt. Diese Legacy-Schnittstellen haben sich lange gehalten aufgrund der Notwendigkeit für Vorwärts-und Rückwärts-Kompatibilität in Hardware und Treiber. NVMe wurde entworfen, um erweiterbar zu sein, so dass NVMe so lange wie diese traditionellen Schnittstellen verfügbar ist, die es ersetzen wird. Das volle Leistungspotential, das NVMe zu bieten hat, ist genau das, was noch nicht realisiert ist. Intel hat vor kurzem ihre neuen Optane SSD-Laufwerke auf Basis der revolutionären 3D-XP-Speichertechnologie veröffentlicht. 3D-XP ist Größenordnungen schneller als NAND-Flash und NVMe verfügt über umfangreiches Leistugnssteigerungspotential nicht nur für die aktuelle Generation von Optane, sondern für viele Generationen von neueren, schnelleren Speichertechnologien.

NVMe ermöglicht es Systemen, die Vorteile der geringeren Datenlatenz und der internen Parallelität des zufälligen Zugriffs, der Speicher-basierten Speicherung, zu nutzen. Die NVMe-Reduzierung von I / O-Overhead- und Performance-Verbesserungen verleiht ihm die Möglichkeit, mehrere, lange Befehlswarteschlangen zu verarbeiten, im Vergleich zu der Möglichkeit, nur eine Warteschlange mit vorherigen logischen Geräte-Schnittstellen zu verarbeiten. NVMe ermöglichte es, nur eine einzige Nachricht für 4KB Transfers im Vergleich zu zwei verwenden. Dies erhöht die Geschwindigkeit für Server, die viele gleichzeitige Festplatten-E / A-Anfragen verarbeiten.

Die Systemleistung wurde historisch durch die Leistung des Speichers begrenzt - nicht die Speicherschnittstelle, sondern die Speichermedien. In einer mechanischen Festplatte ist die Medienleistung durch die Mechanik begrenzt. Kein HDD ist in der Lage, eine SATA-III-Schnittstelle auszureizen; Die besten sind bei etwa 25%, was die Leistungsgrenze von SATA-I ist. SATA-II und -III wurden ausgelegt, um einen Bruchteil der potentiellen Leistung von NAND Flash zu verwenden, aber das SATA-Protokoll ist der limitierende Faktor, sobald man bestimmte Durchsatzwerte erreicht hat. Hoher Durchsatz bedeutet, dass eine größere Anzahl von Transaktionen auftreten kann, aber das SATA-Protokoll erlaubt nicht genügend Pointergröße oder Warteschlangengröße, um die Leistung einer SSD zu behandeln. Da SATA eine Brücke zwischen PCIe ist (deren Protokoll auch ein Speicherengpass ist), warum nicht einfach sowohl SATA als auch PCIe eliminieren? Was natürlich genau das ist, was NVMe macht.