Jak NVMe jest lepszy od SATA i dlaczego powinieneś przejść na te dyski SSD

Autor: Nickolay Polovinkin | 21.09.2021, 00:12
Jak NVMe jest lepszy od SATA i dlaczego powinieneś przejść na te dyski SSD

Pewnego dnia rynek zrobi to za Ciebie. Stare dyski SATA można znaleźć tylko na pchlich targach, w muzeach lub w bunkrach wojskowych, w których od dziesięcioleci nic nie było aktualizowane. Jeśli nie chcesz czekać na łaskę postępu i chcesz już teraz zobaczyć prawdziwy argument za NVMe, ten tekst jest dla Ciebie. Ostrzeżenie: Będzie dużo niejasnych słów i akronimów, więc bądźcie odważni.

O czym my w ogóle rozmawiamy?

Mówimy o różnicach między dyskami SSD SATA i NVMe, chociaż ściśle rzecz biorąc, nie są one bezpośrednio porównywalne. Chodzi o to, że NVMe to protokół komunikacyjny, który może być stosowany w dyskach o różnych obudowach, a SATA to interfejs o dość specyficznej charakterystyce i określonym złączu. Tak więc, aby uprościć rzeczy, oczywiście powiemy Ci, dlaczego NVMe jest lepszy niż SATA, ale pamiętamy o zrozumieniu tej konkretnej cechy.

NVMe to nowy standard, prawda?

Relatywnie. Grupa robocza pracowała nad pierwszą wersją normy w latach 2009-2011 i od tego czasu była ona kilkakrotnie aktualizowana. Najnowsza wersja nosi obecnie nazwę NVMe 1.3c. Jeśli chodzi o urządzenia wykorzystujące go w pracy, to pierwsze komercyjne produkty pojawiły się w 2013 roku. Patrząc na to, jak szybko rozwija się technologia, NVMe raczej nie będzie nowością w 2021 roku, a raczej już teraz będzie mainstreamem.

Co było przed nią? Jak działała komunikacja z dyskami SSD?

Opowiem Ci za chwilę, ale muszę zacząć od początku. 

Starożytność: Parallel ATA (IDE)

W latach 80. ubiegłego wieku z pewnością nie było mowy o masowo produkowanych dyskach SSD, ale inżynieria była wyzwaniem. Idea polegała na wymianie danych pomiędzy komputerami takimi jak PC a urządzeniami pamięci masowej, których rolę pełniły tradycyjne magnetyczne dyski twarde oraz nośniki wymienne. IBM wykorzystał 16-bitową magistralę ISA i pierwotnie opracował dla niej interfejs IDE (Integrated Drive Electronics). To przestarzałe już rozwiązanie miało kilka zabójczych cech w tamtych czasach: integracja z napędem, standaryzacja komend, obsługa dwóch urządzeń na każdym kanale. Starzy wyjadacze zapewne pamiętają zworki "master/slave" na dyskach twardych (do określania roli tych właśnie dwóch urządzeń), ale mogli zapomnieć, że dyski IDE były początkowo ograniczone do 528 megabajtów. Oczywiście, wraz z rozwojem standardu, ograniczenie to przeszło do historii, podobnie jak oddzielne interfejsy dla napędów optycznych. Wzrosła też szybkość działania: pojawił się bezpośredni dostęp do pamięci (DMA), a ludzie, którzy o tym wiedzieli, kręcili współczująco głowami, słysząc, że dysk znajomego "rozbił się na PIO" (tzn. w wyniku jakiejś awarii przeszedł w stary tryb programowanego wejścia/wyjścia, co czyniło go niezwykle powolnym i obciążało procesor podczas pracy). Aby jednak dokonać skoku jakościowego, potrzebna była zupełnie nowa technologia, a był nią praktyczniejszy i szybszy interfejs SATA.

Czasy współczesne: Serial ATA i AHCI

Charakterystyczne czerwone (zazwyczaj) kable z 7-pinowymi wtyczkami można znaleźć również w nowoczesnych skrzynkach systemowych. Pierwsza wersja tego interfejsu ma już 18 lat, od tego czasu dyski SATA zwiększyły swój maksymalny transfer z 1,5 Gb/s do 6 Gb/s. Z logicznego punktu widzenia SATA różni się również od IDE. Dyski SATA oparte są na mechanizmie AHCI (Advanced Host Controller Interface). Co ciekawe, jedna z jej najważniejszych innowacji, technologia NCQ (Native Command Queuing), została pierwotnie zaprojektowana do pracy z dyskami twardymi. Sortuje on polecenia w taki sposób, że głowica magnetyczna wykonuje mniej ruchów, aby uzyskać dostęp do różnych obszarów wirujących talerzy. Wyobraźmy sobie taką paleontologię: gdzie są talerze magnetyczne i gdzie są dzisiejsze szybkie dyski SSD? Jednak nie wszystkie dyski SSD są tak samo szybkie. Pierwsze wersje dysków SSD musiały wykorzystywać istniejący wówczas ekosystem. Pod względem architektury systemu wyglądało to mniej więcej tak: procesor i pamięć poprzez magistralę (oczywiście już nie ISA, a rzeczywistą PCIe) komunikowały się z kartą hosta AHCI, która współpracowała z urządzeniami SATA. Pamięć półprzewodnikowa może działać znacznie szybciej, więc konieczne było utrzymanie rzeczy w jak najprostszej formie poprzez wyeliminowanie wszystkich pośredników. W ten sposób narodził się NVMHCI (Non-Volatile Memory Host Controller Interface), lepiej znany jako NVMe, współpracujący bezpośrednio z magistralą PCI Express.

Czyli dysk NVMe można podłączyć bezpośrednio do złącza PCIe jak kartę graficzną?

Tak, ale w praktyce zależy to od konstrukcji poszczególnych napędów. Modele przeznaczone dla slotów PCI Express i budowane jako klasyczne karty rozszerzeń są stosunkowo rzadkie na rynku masowym. W zastosowaniach serwerowych stosuje się różne formaty, od klasycznego 2,5-calowego U.2 do bardziej specyficznego Intel EDSFF i kompaktowego Samsung NGSFF. W zwykłych komputerach nowoczesne dyski NVMe można zapakować do 2,5-calowej obudowy po staremu, ale coraz częściej stosuje się kompaktowe złącze M.2. I jest z tym związane pewne zamieszanie, którego należy unikać przy wyborze komponentów. Faktem jest, że fizycznie złącze M.2 służy do podłączenia zarówno dysków NVMe, jak i SATA. Tak, istnieją dyski SSD, które nadal korzystają z wolniejszego połączenia SATA. Wizualnie można je odróżnić dzięki dwóm charakterystycznym gniazdom na złączu, natomiast SATA ogranicza dysk do 600MB/s w zakresie prędkości.  


M.2 SSD z SATA

M.2 SSD z NVMe
Interface PCIe SATA III
Protocol NVMe AHCI
Bus PCIe x2 x4 PCIe x2 x4 SATA III
Form Factor M.2, U.2, PCIe M.2, PCIe M.2, 2,5"
Maksymalna prędkość odczytu >3000 MB/s >2000 MB/s >500 MB/s
Maksymalna prędkość zapisu >2000 MB/s >1500 MB/s >500 MB/s

Porozmawiajmy o prędkości. Jak szybkie jest NVMe?

Jak już wiemy, NVMe współpracuje bezpośrednio z magistralą PCI Express i teoretycznie jest ograniczone przez jej przepustowość. Przypomnijmy, że najnowsza specyfikacja PCI Express 4.0 określa pułap prędkości na poziomie 8 GB/s dla czterech pasów (w takim trybie zazwyczaj pracują dyski SSD). Nadchodząca wersja PCI Express 4.0 ponownie podwoi ten próg. To imponująca różnica, prawda?


Tak, ale czy rzeczywista prędkość nie jest niższa? Jak to się dzieje, że jest szybszy?

Są oczywiście pewne niuanse. Nie na darmo wprowadzili kolejkę instrukcji NCQ do AHCI w celu poprawy wydajności dysku. NVMe ma znacznie wyżej postawioną poprzeczkę niż SATA, więc ma też poważny arsenał do wykorzystania. Przede wszystkim radykalnie przeprojektowano kolejki instruktażowe. Tabela jest najlepszym sposobem na zobrazowanie zmian.

AHCI NVMe
Maksymalna głębokość komend Jedna kolejka komend, 32 komendy na kolejkę 65536 kolejek, 65536 komend na kolejkę
Nieskalowalne żądania rejestru (każde na 2K cykli) 6 na komendę bez kolejki, 9 na komendę w kolejce 2 na komendę
MSI-X i zarządzanie przerwaniami jedno przerwanie, bez kontroli 2048 przerwań MSI-X
Równoległość i wielowątkowość z blokadą synchronizacji bez blokady
Wydajność dla komend 4KB parametry komend wymagają dwóch próbek z hosta DRAM  parametry komend przesyłane w jednej 64-bajtowej próbce

Same komendy również zostały oczyszczone, stały się mniej liczne (tylko 13, nie licząc kontrolnych i rezerwowych) i łatwiejsze w obsłudze. Zwłaszcza, że kontroler NVMe jest częścią dysku i wymiana danych odbywa się bez dodatkowych pośredników.

Fajnie, ale jak wybrać odpowiedni dysk NVMe?

Po pierwsze, już teraz można pogratulować wyboru właściwej technologii. Dyski SATA w 2021 roku mają sens kupować tylko do konkretnych zastosowań, więc NVMe jest domyślną opcją.

Po drugie, przyjrzyjmy się konkretnym typom NVMe-urządzeń, które można polecić do wyboru oraz ich specyfikacjom.

Patrz współczynnik kształtu. W zdecydowanej większości przypadków wybór pada na kompaktowe M.2. Format dysku 2,5" jest zazwyczaj używany w modelach SATA, nas one nie interesują. Jeśli z jakiegoś powodu nie posiadasz złącza M.2, ale masz budżet na drogi i wydajny dysk, rozważ dysk SSD zaimplementowany jako karta PCI Express. Istnieją również inne, mniej popularne formaty, ale prawdopodobnie nie będą one potrzebne, ponieważ są one używane głównie w serwerach i systemach pamięci masowej, o których wspomnieliśmy powyżej.

Wymiary. Tak, zależy to od typu urządzenia, ale należy zwrócić szczególną uwagę na dyski do notebooków, nettopów lub domowych centrów multimedialnych o niewielkich rozmiarach. W niektórych przypadkach trzeba dosłownie zmierzyć dostępną przestrzeń za pomocą linijki, a następnie porównać ją ze specyfikacją wybranego urządzenia przed zakupem. Nie jest możliwe złożenie płyty napędu, która nie pasuje do obudowy, więc należy zachować ostrożność. 

Nie należy zapominać o wersji PCI Express. Obecnie można znaleźć dyski SSD pracujące z wersją 3 lub 4 standardu. PCI Express 4.0 jest szybszy, ale musi być zaimplementowany na poziomie płyty głównej.

Typ pamięci. To wykracza poza zakres dyskusji na temat NVMe i dotyczy samego dysku flash. Różnica między tymi typami polega na gęstości zapisu. Im gęstsze, tym lepiej wycenione, ale potencjalnie wolniejsze. Pamięć SLC można uznać za najszybszą, ale nie najbardziej powszechną, a następnie MLC, TLC i QLC. Błędem byłoby twierdzenie, że którykolwiek typ pamięci jest nieuchronnie lepszy od innych. Producenci stale optymalizują technologie swoich układów, więc rodzaj pamięci nie powinien być kluczowym czynnikiem. 


Dyski SSD firmy Samsung z NVMe

Redakcja gg dziękuje firmie Samsung za pomoc w przygotowaniu tej historii.

Model Typ dysku SSD Prędkość odczytu/zapisu
970 Evo Plus
 M.2 PCIe 3.0 x4 V-NAND MLC do 3500 MB/s
do 3000 MB/s
970 Pro
 M.2 PCIe 3.0 x4 V-NAND MLC do 3500 MB/s
do 2700 MB/s
980
 M.2 PCIe 3.0 x4 V-NAND MLC do 3500 MB/s
do 3000 MB/s
980 Pro
 M.2 PCIe 4.0 x4 V-NAND MLC do 7000 MB/s
do 5000 MB/s

Samsung SSD NVMe: kolejny poziom wydajności SSD

  • 6,2x szybciej niż dyski SSD SATA
  • prędkość odczytu do 7000 MB/s (2x szybciej niż PCIe 3.0 SSD i 12.
  • 7x szybszy niż dyski SSD SATA)
  • Wbudowany własny algorytm zarządzania termicznego zwiększa trwałość i stabilność
  • Aplikacja Samsung Magician do monitorowania stanu, optymalizacji wydajności i ochrony danych

Jakość i niezawodność światowego lidera w dziedzinie pamięci flash od 2003 r.