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



20.10.2017

Złote dyski WD

WD GOLD 12 TB
17.10.2017

Ultrapanorama

Philips 492P8
13.10.2017

Druk w bieli

Oki Pro8342WT
11.10.2017

PolCAAT’ 2017 już w...

30 listopada 2017 r. w warszawskim hotelu Marriott odbędzie się XIII edycja konferencji...
10.10.2017

Pełna ochrona

Kaspersky Total Security 2018, Internet Security 2018
06.10.2017

Przeprowadzka do chmury

Oracle Exadata Cloud
03.10.2017

Automatyzacja...

Red Hat Ansible
02.10.2017

Bezpieczeństwo danych zaczyna...

Aby zapewnić bezpieczeństwo danych, w tym informacji poufnych o klientach i pracownikach,...
27.09.2017

Dotykowe 75 cali

BenQ RP750K

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"