Hva betyr NVMe på en SSD, og ​​hvorfor er det viktig

Sikkert at du har lyttet og lest om NVMe SSD-er for ganske lang tid . Du vet at de er den nyeste teknologien, at de er veldig raske, og derfor er de veien å gå. Men vet du hva det betyr for en SSD å være NVMe ? I denne artikkelen forteller vi deg hva det er, hvordan det fungerer og hvorfor det er viktig for fremtiden for PC-lagring.

De første flash-minnebaserte SSD-ene brukte grensesnittene som var tilgjengelig den gangen, SATA og SAS, samt protokoller og formfaktorer som ville ha mindre innvirkning på eksisterende lagringssystemer. Imidlertid var ingen av disse designet for høyhastighets lagring, og det er grunnen til at SSD-er har endt opp med å bruke et PCI-Express-grensesnitt at selv om den ikke opprinnelig var designet for det, er mye raskere.

nvme ssd

Den store fordelen med å bruke PCI-Express-grensesnittet er at de kobles direkte til prosessoren, og gir tilgangstider som ligner på RAM, og de første PCI-Express SSD-ene har eksistert lenge. Imidlertid disse SSD-ene trengte spesifikk firmware for å være kompatibel med PC-er og ikke utnyttet alle skinnene som dette grensesnittet tilbød. Av denne grunn, NVMe-protokoll ble laget .

Hva er NVMe?

NVMe står for "Non-Volatile Memory Express", eller ikke-flyktig ekspressminne. Det er en høy ytelse, lagringsoptimalisert, svært skalerbar NUMA (Non Uniform Memory Access) lagringsprotokoll som kobles til minnesubsystem-verten. Denne protokollen ble designet fra bunnen av og spesielt for lagringssystemer , med sikte på tilbyr alltid den beste ytelsen .

NVMe-protokolldiagramNVMe-protokollen er opprettet på PCI-Express-skinnene til systemet , som ikke bare tilbyr en bred båndbredde som tillater svimmelhastigheter, mange ganger høyere enn med SATA-grensesnitt, men tilgangstiden er sterkt redusert fordi den er koblet direkte til prosessoren, og i tillegg er mulighetene for vekst og skalering enorme. Dette er med andre ord en protokoll designet for å brukes langsiktig .

Hvorfor er det så raskt? Forstå I / O-køer

For å forstå hvordan denne protokollen fungerer, og fremfor alt hvordan den klarer å nå disse fartsnivåene, er det nødvendig å fordype litt i arkitekturen og spesielt forstå hvordan I / O-køer (input and output) fungerer .

NVMe kan støtte flere innganger og utdata køer , opptil 64K køer og hver støtter 64K innganger (til sammenligning støtter SATA bare en kø, og hver kan bare ha 32 innganger). Vertsprogramvaren for denne protokollen kan opprette køer opp til maksimalt tillatt av kontrolleren, avhengig av systemkonfigurasjon og arbeidsmengde; I tillegg støtter den I / O-spredning / samling, noe som minimerer effekten dette har på prosessorbelastning for dataoverføring, og gir til og med muligheten til å endre prioritet basert på arbeidsbelastningskrav.

NVMe køstyringsdiagram

I diagrammet ovenfor har du en veldig forenklet måte å kommunisere mellom en vert og NVMe-kontrolleren. Denne arkitekturen lar applikasjoner starte, kjøre og avslutte flere inngangs- / utgangsforespørsler samtidig uten å påvirke prosessorens ytelse .

Kort sagt: NVMe-protokollen ble opprettet fra bunnen av spesielt for lagringssystemer med høy ytelse, slik at de oppnår hastigheter som drar full nytte av PCI-Express-grensesnittet uten å mette prosessoren. I tillegg er den forberedt på å kunne modifisere fastvaren enkelt, noe som betyr at vi vil fortsette å bruke den på mellomlang og lang sikt fordi den har evnen til å fortsette å utvikle seg uten problemer.