Zrozumienie wymagań dotyczących pamięci i sprzętu NVMe

16

Jestem trochę zdezorientowany w związku z najnowszymi osiągnięciami pamięci opartej na PCIe, szczególnie, że dotyczy to specyfikacji NVMe i jej kompatybilności sprzętowej.

Chociaż intensywnie pracowałem z dyskami SSD w kształcie dysku i niektórymi urządzeniami PCIe wyższej klasy, takimi jak Fusion-io , jestem w sytuacji, w której nie rozumiem podstaw NVMe i szukam wyjaśnienia na temat rodzaju serwera sprzęt jest obsługiwany.

Na przykład taki tekst reklamy z Supermicro jest mylący.

... wysokowydajny procesor PCI-E Gen3 bezpośrednie połączenie z urządzeniami NVMe.

Mam do czynienia z opartym na systemie Linux rozwiązaniem pamięci masowej zdefiniowanym programowo i chciałem użyć zapasowych urządzeń Fusion-io, które używają zastrzeżonego sterownika ( prezentując nazwy urządzeń / dev / fioX w systemie operacyjnym ).

Gdy poprosiłem o pomoc ze strony sprzedawcy, odpowiedź brzmiała:

Nazwy urządzeń „fioX” są przestarzałe z powodu nowego interfejsu urządzenia NVMe. Oznacza to, że kupujemy przestarzałe adaptery, aby dodać obsługę, o którą nikt inny nie prosił.

To wydaje się trochę trudne. Nie sądziłem, że adaptery Fusion-io były przestarzałe.

Skąpe informacje, które znajduję w Internecie, wydają się sugerować, że NVMe jest obsługiwany tylko w absolutnie najnowszych generacjach sprzętu serwerowego ( procesory Intel E5-2600v3 i chipsety PCI 3.0? ). Ale nie mogę tego zweryfikować.

Czy to prawda?

Jaki jest współczynnik adopcji? Czy jest to coś, co inżynierowie biorą pod uwagę przy podejmowaniu decyzji projektowych, czy też mówimy o „standardzie”, który nie jest w pełni ukształtowany?

Jeśli NVMe jest czymś, co dotyczy tylko najnowszych systemów na rynku, czy uzasadnione jest sugerowanie (dostawcy), że moja baza instalacyjna starszych systemów nie może być kompatybilna z NVMe, więc warto dodać wsparcie, o które prosiłem?

ewwhite
źródło

Odpowiedzi:

4

NVMe jest oparty na PCIe i wykorzystuje do tego celu różne sterowniki. Zasadniczo możesz wziąć formfactor NVM M2, włożyć go do odpowiedniego adaptera i uruchomić na dowolnym systemie Linux, Windows lub BSD z odpowiednimi sterownikami.

Zasadniczo wszystko, co robi NVMe, jest standaryzuje dyski SSD oparte na PCIe do jednego zestawu sterowników, zaprojektowanych w celu ich pełnego wykorzystania.

Są szanse, że możesz uruchomić z niestandardowego pci ssd, możesz uruchomić z tego, z odpowiednimi sterownikami w systemie operacyjnym. Jeśli używasz tego do buforowania i innych celów, nie ma powodu, dla którego NVMe nie powinno działać.

Twoje starsze systemy prawdopodobnie kompatybilne, zakładając, że możesz uzyskać wystarczająco nowy system operacyjny z wystarczająco nowoczesnym jądrem.

Journeyman Geek
źródło
2

Moje dwa centy...

NVMe sprawiło, że różne mfg SSD skupiły się i przyjęły podstawowy standard ... Zasadniczo możesz uzyskać wydajność Nand Flash z dysku SSD podłączonego do serwerów NVMe za mniej NET. Ich funkcje są bardziej NVMe niż tkaninowe (których jeszcze nie znam)

Zobacz https://www.brighttalk.com/webcast/663/132761

Treść „Wpływ wydajności NVMe i NVMe na tkaniny” • Omówienie inicjatywy NVMe nad tkaninami • Obsługa NVMe dla wielu sieci, w tym Ethernet z RDMA (iWARP) • W jaki sposób NVM Express kompleksowo eliminuje opóźnienie translacji SCSI • Osiąganie wydajności korzyści porównywalne z setkami dysków SSD - lokalnymi i zdalnymi

William Moore NetDirect CA
źródło
Co z wymaganiami sprzętowymi / platformowymi / mikroukładowymi potrzebnymi do tego?
ewwhite
2

Musiałem to sprawdzić na własne oczy ...

Kupiłem cztery dyski SSD Intel 750 PCIe NVMe do zainstalowania na serwerach HP ProLiant DL380p Gen8 . Serwery nie są procesorami najnowszej generacji serii Intel 2600v3, ale raczej procesorami 2600v2.

Na wynos:

NVMe to specyfikacja interfejsu. Pod Linuksem, urządzenia są wyliczone jak /dev/nvmeXnYnp /dev/nvme0n1i /dev/nvme1n1.

Współczynnik kształtu używanych przeze mnie urządzeń to PCIe 3.0 x4. Serwery Gen8 ProLiant mają dwa gniazda PCIe 3.0 w domyślnej klatce pionowej. Te karty PCIe NVMe będą działać w wolniejszych gniazdach PCIe (lub PCIe 2.0), ale w tym momencie będą ograniczone przez magistralę.

Tak więc w moim przypadku NVMe jest w pewnym stopniu oparte na systemie operacyjnym, ale zdecydowanie jest kompatybilne z moim nieco starszym sprzętem serwerowym.

ewwhite
źródło
ewwhite-- Jestem zainteresowany przejściem na te karty NVMe również na naszych serwerach HP gen8. Czy musiałeś dostarczyć zewnętrzne kable SATA lub inne kable zasilające, aby wszystko działało? Mamy kombinację dysków SSD OCZ i Mushkin PCIe, ale wszystkie używają kontrolerów SATA3 lub SCSI. Właśnie zaczynam słyszeć, że coraz więcej tych dysków NVMe staje się coraz bardziej powszechnych.
Użyłem kart NVMe PCIe. Wsuwają się od razu. Tylko 2 z 3 gniazd w pionie Gen8 PCIe to PCIe 3.0, więc uważaj na to.
ewwhite
2

Napisałem artykuł w Thinkmate który próbuje dać ładny przegląd NVMe i działa jako miły przewodnik po wyborze odpowiedniego napędu i systemu, czegoś, czego brakuje mi w Internecie. W większości sprzedajemy serwery Supermicro i zgadzam się - sprawy mogą być trochę mylące ... Dlatego napisałem ten artykuł!

Jeśli chodzi o adopcję, nie mogę mówić w imieniu całej branży, ale w Thinkmate zainteresowanie NVMe było znaczące, a opinie, które otrzymujemy od naszych klientów, są bardzo zadowoleni z ich zakupu, głównie ze względu na korzyści z wydajności .

Dużo mówię o cenie, ale myślę, że najważniejszą rzeczą do rozważenia jest wartość, a nie cena. Wybór pamięci flash powinien w dużym stopniu zależeć od wartości, jaką każde rozwiązanie wniesie do Twojej aplikacji przez cały okres eksploatacji dysku i systemu.

Eli Domingues
źródło
1

Dodałem kartę Intel 750 400GB nvme do DL 380p gen 8 bez żadnych problemów. Bios rozpoznał to jako urządzenie pamięci masowej.

Używam FreeBSD 9.3 i natychmiast rozpoznał napęd nvme, działa idealnie dobrze i jest bardzo szybki. Nie mogę komentować uruchamiania z dysku, ponieważ używam go jako drugiego dysku.

Phil
źródło
Należy pamiętać, że tylko gniazda 1,2,4,5 i 6 PCIe są w stanie obsługiwać prędkości PCIe 3.0. Slot nr 3 to złe miejsce na kartę NVMe.
ewwhite
1

W tym artykule jest jeden szczegół, który moim zdaniem jest znaczący i wykracza poza „po prostu pcie”.

Jest to 32k jednoczesnych żądań w kolejce, które mogą przekształcić niektóre aplikacje. Jeśli dobrze to przeczytałem, nie jest to możliwe dzięki rozwiązaniu „zmieść w gnieździe, które bierze”. Potrzebuje odpowiedniej płyty NVMe.

Tylko dla informacji. Ja też się uczę!

http://www.pcworld.com/article/2899351/everything-you-need-to-know-about-nvme.html

Andrew Mather
źródło