Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.



12.05.2017

SAP Executive Forum 2017

Jak rozwijać firmę w dobie digitalizacji? To jedno z wielu zagadnień, o których będą...
28.04.2017

100 stron w minutę

Epson WorkForce Enterprise
25.04.2017

MegaNAS-y

Netgear ReadyNAS 4360X/S
21.04.2017

Nowe pamięci

Samsung Z-SSD
18.04.2017

Dozorowanie w 4K

Panasonic True 4K
14.04.2017

Kompleksowe zarządzanie

Quest Active Administrator 8.1
11.04.2017

EMM dla Androida i IoT

Sophos Mobile 7
07.04.2017

Kontrola dostępu i...

VMware Workspace ONE, VMware AirWatch 9.1
05.04.2017

HPE Reimagine IT 2017

27 kwietnia 2017 r. w Warszawie odbędzie się HPE Reimagine IT 2017, nowa odsłona Wyzwań...

Złącze SATA do lamusa? Pamięci flash z protokołem NVMe

Data publikacji: 01-12-2016 Autor: Jerzy Michalczyk

Nadchodzi moment, kiedy popularne interfejsy SATA, które towarzyszyły nam od ponad dekady, odejdą w niepamięć. Pojawia się coraz więcej urządzeń (laptopów, desktopów, stacji roboczych, serwerów, pamięci masowych), które umożliwiają podłączenie szybkich pamięci SSD bezpośrednio do magistrali PCIe. Powiększa się też oferta podzespołów tego typu – prezentujemy wybrane modele.

Już w ubiegłym roku informowaliśmy, że wydajność pamięci flash zaczęła wykraczać poza możliwości standardowych interfejsów (SATA i SAS) przewidzianych do współpracy głównie z dyskami magnetycznymi. Możliwości ostatniej generacji SATA (III) kończą się na poziomie 6 Gbit/s (w praktyce ok. 600 MB/s), SAS-3 – 12 Gbit/s (ok. 1,2 GB/s), a SAS-4, który ma zostać wprowadzony w przyszłym roku – 24 Gbit/s. Okazuje się, że wydajność kontrolerów i układów pamięci flash jest obecnie znacznie wyższa. Lepsze osiągi pamięci masowych producenci uzyskiwali do tej pory, łącząc wiele napędów SATA lub SAS w macierze, nie było to jednak idealne rozwiązanie.

PCIe – ekspresowe połączenie

Aby w pełni wykorzystać możliwości nowych pamięci, konieczne jest podłączenie ich bezpośrednio do systemowego interfejsu PCI Express (Peripheral Component Interconnect Express, PCIe). Wydajność pojedynczego kanału magistrali PCIe w wersji 3.0 wynosi ok. 8 GT/s (gigatransferów na sekundę), co po odliczeniu narzutu związanego z kodowaniem sygnału daje około 7,877 Gbit/s. Nadchodząca wersja 4.0 ma podwoić przepustowość (do 16 GT/s).

Wśród zalet PCIe należy wymienić, oprócz wysokiej wydajności: skalowalność, niskie opóźnienia (3 mikrosekundy z 10 mikrosekund), bezpośrednie połączenie z CPU – brak dodatkowego kontrolera, niewielkie zapotrzebowanie na energię, oszczędność miejsca oraz możliwość użycia złączy różnego typu (gniazdo PCIe, M.2, SFF-8639, SATA Express, BGA). Pojedyncze linie można łączyć, np. typowe złącze M.2 montowane na płycie głównej ma doprowadzone 4 linie PCIe, co przy obecnej wersji 3.0 PCIe daje w sumie 32 GT/s (około 3,93 GB/s).

NVMe – ekspresowy protokół

Niestety, nie tylko sam interfejs jest czynnikiem obniżającym wydajność, jest nim również protokół komunikacyjny. Protokoły stosowane do tej pory w dyskach magnetycznych okazały się mało efektywne, gdyż wprowadzały opóźnienia, które wraz ze wzrostem prędkości transmisji miały na nią coraz większy wpływ. Było to powodem wprowadzenia NVMe – nowego protokołu, który zastępuje powszechnie używany standard AHCI, dzięki czemu możliwe jest uzyskanie wyższej wydajności i niższych opóźnień, przy jednoczesnym zmniejszeniu obciążenia procesora i poboru mocy przez sam nośnik.

W odróżnieniu od AHCI nie było konieczne zapewnienie wstecznej kompatybilności z urządzeniami poprzednich generacji, dlatego też NVMe został zaprojektowany od podstaw. Dzięki temu polecenia NVMe są znacznie prostsze i wymagają mniejszej liczby transferów do pamięci operacyjnej. Typowy kontroler SAS jest w stanie obsłużyć do 256 poleceń, a SATA – do 32 poleceń w pojedynczej kolejce, co miało sens w przypadku dysków mechanicznych. NVMe może obsłużyć do 64 tysięcy kolejek, każda po 64 tysiące poleceń, co pozwala na wykonywanie w ciągu sekundy większej liczby operacji przy mniejszym użyciu procesora. Ponadto NVMe może obsługiwać wiele kanałów komunikacji, co pozwala na podłączanie wielu nośników bez pośrednictwa kontrolera, a w przyszłości – wielokanałową komunikację z bardzo szybkimi nośnikami.

Należy pamiętać, że NVMe wymaga pamięci SSD zgodnej z tym protokołem. Ponadto konieczna jest implementacja obsługi tego protokołu w oprogramowaniu układowym komputera (firmware) oraz odpowiedni sterownik dla systemu operacyjnego. Obecnie dostępne są sterowniki dla systemów z rodziny Windows i Windows Server, Linux, FreeBSD, Chrome OS, VMWare oraz driver UEFI. Dopiero połączenie tych wszystkich elementów pozwoli na wykorzystanie pełnej prędkości interfejsu.
 

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2013 Presscom / Miesięcznik "IT Professional"