M.2 är lite rörigt eftersom det är rätt mycket olika saker att hålla ordning på där allt samlas under ett namn. M.2 är en formfaktor och inte en databuss vilket ställer till det lite när man jämför den med SATA och PCIe. Jag ska göra ett försöka reda ut det lite.
M.2 finns i en massa olika versioner. Först har vi olika storlekar. Det finns fyra olika bredder (12, 16, 22 och 30 mm) samt åtta olika längder (16, 26, 30, 38, 42, 60, 80 och 110 mm). Som tur är har vi än så länge bara sett en bredd, nämligen 22 mm på PC sidan och den har blivit defactostandard. Längder finns några olika men 60 och 80 verkar vara de vanligaste. Moderkorten kan dessutom enkelt stödja flera olika längder. Ditt moderkort stödjer till exempel både 60 och 80 mm långa M.2. Modulerna är namngivna efter storleken och tittar vi i produktbladet på ditt moderkort står det att det finns stöd för M.2 2260 och 2280. De två första siffrorna är bredd och de två sista är längd. Tittar vi på Inet står det M.2 (2280) på 950 Pro så det är alltså inga problem. Det finns även lite olika tjocklekar som specificerar om det får finnas komponenter på båda sidorna och kortet men det verkar inte vara relevant för PC.
Nästa steg är kontakten. På moderkortet står det M key vilket är en av 12 möjliga designer på kontakten. Det är hacken i kontakten som skiljer sig åt. Nu är det bara 4 olika som faktiskt är specade än så länge. Resten är resarverade för framtida bruk. Idag finns A, B, E och M. Det som skiljer är vilka bussar som kontakten hanterar. M.2 är som sagt en formfaktor och man kan använda den till mycket. För SSD är det SATA och PCIe som gäller men M.2 stödjer även USB, I22, DisplayPort, UIM, HSIC, SSIC, SMBus, SDIO, UART och PCM. Fast eftersom antalet pinnar är begränsat så kan man inte använda alla samtidigt. Därför har man valt lite olika kontakter för att man inte ska kunna sätta in ett kort i en kontakt som inte har rätt stöd. Mest relevant för PC är B och M som båda har stöd för PCIe och SATA. M har stöd för x4 PCIe och SATA medan B har x2 PCIe SATA och USB. Det finns kontakter som tar både M och B. Ditt moderkort har M och 950 Pro vill inte avslöja vad de har men eftersom det är x4 PCIe så kan vi utgå från att det är Key M eftersom det är enda med stöd för det. Vidare står det Socket 3 på moderkortet vilket betyder att du har stöd för PCIe 3.0. Finns även Socket 2 som är PCIe 2.0. För det vore för enkelt att skriva ut det direkt.
Det här är en lite lurig grej med M.2 för många förknippar det med PCIe SSD men det finns även M.2 med SATA 3. Faktum är att det är relativt få SSD med M.2 som faktiskt kör PCIe än så länge. Det kommer komma väldigt många och SATA över M.2 kommer antagligen inte användas framöver men nu får man läsa på vad man köper för annars blir man besviken på prestandan. Nu är Samsung 950 Pro en PCIe 3.0 x4 så den har mer prestanda än normalanvändaren vet vad den ska göra av.
Tittar man i instruktionsboken framgår det att ditt moderkort enbart stödjer PCIe på M.2 så om du hade köpt till exempel den här: http://www.inet.se/produkt/4304846/samsung-850-series-evo-250... så hade det inte fungerat på ditt moderkort. Lite lurigt eftersom båda är en SSD från Samsung med M.2 2280.
Så storleken, kontakten och bussarna stämmer så det är bara att tuta och köra.
Angående NVMe så har det med hur datorn pratar med SSDn att göra. Du kan se det som en drivrutin som hanterar hur man läser och skriver data mellan SSD och RAM. Tidigare körde vi på något som heter AHCI som är en standard som spikades när i princip all lagring gjordes på hårddisk. Därför behövde de inte bry sig så mycket om latenser i systemet för att hårddiskar är såpass långsamma. De läser och skriver även sekventiellt i en dataström. En SSD fungerar fundamentalt annorlunda då det går extremt snabbt att hitta data då man inte behöver vänta på att ett skrivhuvud ska flytta sig och på att en skiva ska snurra till rätt ställe. Vidare så skriver och läser en SSD data parallellt. Man kan se det som en sorts intern RAID. En SSD läser och skriver till flera minneskapslar samtidigt och kan på så sätt öka hastigheten kraftigt. Vill minnas att konsumentenheter brukar köra 8 kanaler men det finns serverinriktade SSD med över 20. En SSD kan alltså av naturen hantera parallella operationer vilket AHCI inte kan hantera. AHCI har därför begränsat prestandan hos SSD ett tag. Först var det SATA 3 som var bromskloss och sedan när man gick över till PCIe så var det AHCI som tog stopp. Stöd för NVMe är inte ett måste men det ökar prestandan och framöver kommer det bli standard för SSD-lagring.
Stödet i lite äldre plattformar har varit sådär och det står inget om NVMe i manualen, däremot står det lite om AHCI så det är möjligt att moderkortet inte har stöd för det. Det ska finnas en BIOS (UEFI) uppdatering som lägger till stöd så se till att du har uppdaterat till senaste versionen.
Jag tror jag fick med allt nu.