NVM Express® (NVMe®) ist eine Spezifikation, die definiert, wie Host-Software mit nichtflüchtigem Speicher über einen PCI Express® (PCIe®) Bus kommuniziert. Es ist der Industriestandard für PCIe-Solid-State-Laufwerke (SSDs) in allen Formfaktoren (U.2, M.2, AIC, EDSFF). NVM Express ist das gemeinnützige Konsortium von führenden Unternehmen der Technologiebranche, das die NVMe-Technologie definiert, verwaltet und vermarktet. Neben der NVMe-Basisspezifikation unterhält die Organisation weitere Spezifikationen: NVMe over Fabrics (NVMe-oF™) für die Verwendung von NVMe-Befehlen über eine vernetzte Struktur und NVMe Management Interface (NVMe-MI™) zur Verwaltung von NVMe/PCIe-SSDs in Servern und Speichersystemen.
Die NVMe-Spezifikation wurde von Grund auf für SSDs entwickelt. Es handelt sich um eine wesentlich effizientere Schnittstelle, die geringere Latenzzeiten bietet und für SSDs besser skalierbar ist als ältere Schnittstellen wie Serial ATA (SATA). Der erste Teil der Spezifikation ist die Host-Steuerungsschnittstelle. Die NVMe-Architektur bietet einen neuen Hochleistungs-Warteschlangenmechanismus, der 65.535 E/A-Warteschlangen mit jeweils 65.535 Befehlen unterstützt (als Warteschlangentiefe oder Anzahl der ausstehenden Befehle bezeichnet). Die Warteschlangen werden auf CPU-Kerne abgebildet, was eine skalierbare Leistung ermöglicht. Die NVMe-Schnittstelle reduziert die Anzahl der im Speicher abgebildeten Eingabe-/Ausgabebefehle erheblich und unterstützt Betriebssystem-Gerätetreiber, die im Interrupt- oder Polling-Modus laufen, um eine höhere Leistung und geringere Latenzzeiten zu erzielen. Die NVMe-Spezifikation enthält auch ein Host-to-Device-Protokoll für SSD-Befehle, die von einem Betriebssystem für folgende Zwecke verwendet werden: Lesen, Schreiben, Flush, TRIM, Firmware-Verwaltung, Temperatur, Fehler und andere.