NVM Express är en standard för kommunikation med lagringsenheter anslutna över PCI Express. Förkortningen NVMe står för Non-volatile Memory Express och som namnet antyder är det ett gränssnitt som är utformat för att jobba mot SSD-baserade lagringsenheter, där låg latens och parallell exekvering står i fokus. Nu presenteras NVMe 1.3 som är den första större förändringen på tre år.

Den nya versionen innehåller förbättringar inom 24 områden, där de flesta fokuserar antingen på virtualiserad lagring eller moln-anpassad SSD-lagring. I en intervju med EETimes berättar Jonmichael Hands, representant för NVMe-standarden, bland annat att det blir möjligt att tilldela lagringsresurser till virtuella maskiner utan behov av emulering.

Right now, if you want to use an NVM Express device in a virtualized environment, the hypervisor's NVMe driver has to emulate an NVMe SSD to the guest OS," Hands said. "They do this pretty well, but there's a latency hit.

I NVMe 1.2 eller tidigare måste värdsystemet (hypervisor) som hanterar de virtuella maskinerna skapa en emulerad version av SSD-enheten som visas för den virtuella maskinen. Med NVMe 1.3 kommer specifika resurser på de faktiska SSD-enheterna kunna tilldelas den virtuella maskinen, vilket ska minska latenstider signifikant.

Detta ska även vara till stor fördel för molnbaserade lagringstjänster vars arbetsflöden nyttjar en stor mängd samtidigt anslutna SSD-enheter. I dagsläget används i regel en stor mängd SSD-enheter för att olika arbetsuppgifter inte ska inkräkta på samma lagringsenhet.

Med funktionen Stream Separation i NVMe 1.3 blir det möjligt att skilja på olika typer av arbetsuppgifter via metadata, och därmed kan dessa fördelas mer effektivt mellan de olika lagringsenheterna. När likartade arbetsuppgifter utförs på samma SSD-enhet blir slitaget mindre över tid jämfört med när sekventiella och slumpade uppgifter blandas på samma enhet.

En nyhet som kan gagna konsumentmarknaden är stöd för bootstrapping i billigare mobila enheter. Bootstrapping innebär att NVMe-ansluten flashlagring kan användas för att starta operativsystem och firmware-mjukvara utan att behöva initieras från andra system först, vilket innebär att även relativt billiga och kompakta mobila enheter kan få högpresterande NVMe-flashlagring framöver.

NVMe används med både fullstora PCI Express-baserade lagringsenheter och 2,5 tumsenheter anslutna över U.2-grässnittet, men kan användas som gränssnitt även för SATA Express och M.2-ansluten lagring. NVMe 1.3 är tillgängligt nu, men då version 1.2 började användas på bred front först i slutet av 2016 lär det dröja innan den nya versionen letar sig in i SSD-enheter.