5.8 miliona IOPS: dlaczego tak dużo?

Witaj Habro! Zbiory danych dla Big Data i uczenia maszynowego rosną wykładniczo i musimy za nimi nadążać. Nasz post o kolejnej innowacyjnej technologii z zakresu obliczeń o dużej wydajności (HPC, High Performance Computing), pokazany na stoisku firmy Kingston przy ul. Superkomputer-2019. Jest to zastosowanie systemów przechowywania danych Hi-End (SDS) w serwerach z procesorami graficznymi (GPU) i technologią magistrali GPUDirect Storage. Dzięki bezpośredniej wymianie danych pomiędzy systemem pamięci masowej a procesorem graficznym z pominięciem procesora, ładowanie danych do akceleratorów graficznych jest przyspieszane o rząd wielkości, dzięki czemu aplikacje Big Data działają z maksymalną wydajnością, jaką zapewniają procesory graficzne. Z kolei twórców systemów HPC interesują postępy w systemach pamięci masowej o najwyższych prędkościach we/wy, takich jak te produkowane przez firmę Kingston.

5.8 miliona IOPS: dlaczego tak dużo?

Wydajność procesora graficznego przewyższa ładowanie danych

Od czasu stworzenia w 2007 roku CUDA, opartej na GPU architektury obliczeń równoległych sprzętowo-programowych, służącej do tworzenia aplikacji ogólnego przeznaczenia, możliwości sprzętowe samych procesorów graficznych wzrosły niewiarygodnie. Obecnie procesory graficzne są coraz częściej stosowane w aplikacjach HPC, takich jak Big Data, uczenie maszynowe (ML) i głębokie uczenie się (DL).

Należy pamiętać, że pomimo podobieństwa terminów, dwa ostatnie są algorytmicznie różnymi zadaniami. ML szkoli komputer w oparciu o dane strukturalne, podczas gdy DL szkoli komputer w oparciu o informacje zwrotne z sieci neuronowej. Przykład pomagający zrozumieć różnice jest dość prosty. Załóżmy, że komputer musi rozróżniać zdjęcia kotów i psów ładowane z systemu przechowywania. W przypadku ML należy przesłać zestaw zdjęć z wieloma tagami, z których każdy określa jedną konkretną cechę zwierzęcia. W przypadku DL wystarczy wgrać znacznie większą liczbę zdjęć, ale z jednym tagiem „to jest kot” lub „to jest pies”. DL jest bardzo podobne do nauczania małych dzieci – po prostu pokazuje się im zdjęcia psów i kotów w książkach i w życiu (najczęściej nawet bez szczegółowego wyjaśnienia różnicy), a mózg dziecka sam zaczyna po pewna krytyczna liczba zdjęć do porównania (według szacunków mówimy o zaledwie stu lub dwóch przedstawieniach w całym okresie wczesnego dzieciństwa). Algorytmy DL nie są jeszcze tak doskonałe: aby sieć neuronowa mogła skutecznie pracować również nad identyfikacją obrazów, konieczne jest wprowadzanie i przetwarzanie milionów obrazów do procesora graficznego.

Podsumowanie wstępu: w oparciu o procesory graficzne można budować aplikacje HPC z zakresu Big Data, ML i DL, jednak pojawia się problem – zbiory danych są tak duże, że czas ładowania danych z systemu pamięci masowej do GPU zaczyna zmniejszać ogólną wydajność aplikacji. Innymi słowy, szybkie procesory graficzne pozostają niewykorzystane ze względu na wolne dane we/wy pochodzące z innych podsystemów. Różnica w szybkości we/wy procesora graficznego i magistrali prowadzącej do procesora/systemu pamięci masowej może wynosić rząd wielkości.

Jak działa technologia GPUDirect Storage?

Proces we/wy jest kontrolowany przez procesor, podobnie jak proces ładowania danych z pamięci do procesorów graficznych w celu dalszego przetwarzania. Doprowadziło to do zapotrzebowania na technologię, która zapewniłaby bezpośredni dostęp między procesorami graficznymi i dyskami NVMe w celu szybkiej komunikacji między sobą. NVIDIA jako pierwsza zaoferowała taką technologię i nazwała ją GPUDirect Storage. W rzeczywistości jest to odmiana opracowanej wcześniej technologii GPUDirect RDMA (Remote Direct Memory Address).

5.8 miliona IOPS: dlaczego tak dużo?
Jensen Huang, dyrektor generalny firmy NVIDIA, zaprezentuje GPUDirect Storage jako wariant GPUDirect RDMA na targach SC-19. Źródło: NVIDIA

Różnica między GPUDirect RDMA i GPUDirect Storage polega na urządzeniach, pomiędzy którymi przeprowadzane jest adresowanie. Technologia GPUDirect RDMA została ponownie przystosowana do przenoszenia danych bezpośrednio pomiędzy zewnętrzną kartą interfejsu sieciowego (NIC) a pamięcią GPU, a GPUDirect Storage zapewnia bezpośrednią ścieżkę danych pomiędzy lokalną lub zdalną pamięcią masową, taką jak NVMe lub NVMe over Fabric (NVMe-oF) i Pamięć GPU.

Zarówno GPUDirect RDMA, jak i GPUDirect Storage pozwalają uniknąć niepotrzebnego przenoszenia danych przez bufor w pamięci procesora i umożliwiają mechanizmowi bezpośredniego dostępu do pamięci (DMA) przenoszenie danych z karty sieciowej lub pamięci bezpośrednio do lub z pamięci GPU - a wszystko to bez obciążenia centralnego procesora. W przypadku GPUDirect Storage lokalizacja magazynu nie ma znaczenia: może to być dysk NVME wewnątrz jednostki GPU, w szafie lub podłączony przez sieć jako NVMe-oF.

5.8 miliona IOPS: dlaczego tak dużo?
Schemat działania GPUDirect Storage. Źródło: NVIDIA

Hi-Endowe systemy pamięci masowej na NVMe są poszukiwane na rynku aplikacji HPC

Zdając sobie sprawę, że wraz z pojawieniem się GPUDirect Storage zainteresowanie dużych klientów zostanie przyciągnięte do oferowania systemów pamięci masowej o prędkościach we/wy odpowiadających przepustowości procesora graficznego, na wystawie SC-19 firma Kingston pokazała wersję demonstracyjną systemu składającego się z system przechowywania oparty na dyskach NVMe i jednostce z procesorem graficznym, który analizował tysiące zdjęć satelitarnych na sekundę. O takim systemie przechowywania danych opartym na 10 dyskach DC1000M U.2 NVMe pisaliśmy już wcześniej w relacji z wystawy superkomputerów.

5.8 miliona IOPS: dlaczego tak dużo?
System pamięci masowej oparty na 10 dyskach DC1000M U.2 NVMe stanowi odpowiednie uzupełnienie serwera z akceleratorami graficznymi. źródło: Kingston

Ten system pamięci masowej zaprojektowano jako jednostkę stelażową o wysokości 1U lub większą i można go skalować w zależności od liczby dysków DC1000M U.2 NVMe, każdy o pojemności 3.84–7.68 TB. DC1000M to pierwszy model dysku SSD NVMe w formacie U.2 w linii dysków firmy Kingston do centrów danych. Posiada wskaźnik wytrzymałości (DWPD, liczba zapisów dysku dziennie), co pozwala mu raz dziennie ponownie zapisywać dane do pełnej pojemności przez gwarantowany czas życia dysku.

W teście fio v3.13 w systemie operacyjnym Ubuntu 18.04.3 LTS, z jądrem Linux 5.0.0-31-generic, próbka pamięci wystawowej wykazała prędkość odczytu (trwały odczyt) wynoszącą 5.8 miliona IOPS przy stałej przepustowości (trwała przepustowość ) 23.8 Gbit/s.

Ariel Perez, menedżer ds. dysków SSD w firmie Kingston, powiedział o nowych systemach pamięci masowej: „Jesteśmy gotowi wyposażyć serwery nowej generacji w rozwiązania SSD U.2 NVMe, aby wyeliminować wiele wąskich gardeł w transferze danych, które tradycyjnie były kojarzone z pamięcią masową. Połączenie dysków SSD NVMe i naszej klasy premium Server Premier DRAM sprawia, że ​​firma Kingston jest jednym z najbardziej wszechstronnych dostawców kompleksowych rozwiązań w zakresie danych w branży”.

5.8 miliona IOPS: dlaczego tak dużo?
Test gfio v3.13 wykazał przepustowość 23.8 Gb/s dla demonstracyjnego systemu pamięci masowej na dyskach DC1000M U.2 NVMe. źródło: Kingston

Jak wyglądałby typowy system dla aplikacji HPC korzystający z GPUDirect Storage lub podobnej technologii? Jest to architektura z fizycznym oddzieleniem jednostek funkcjonalnych w szafie: jedna lub dwie jednostki dla pamięci RAM, kilka dodatkowych dla węzłów obliczeniowych GPU i CPU oraz jedna lub więcej jednostek dla systemów pamięci masowej.

Wraz z ogłoszeniem rozwiązania GPUDirect Storage i możliwym pojawieniem się podobnych technologii u innych dostawców procesorów graficznych, zapotrzebowanie firmy Kingston na systemy pamięci masowej przeznaczone do zastosowań w obliczeniach o wysokiej wydajności rośnie. Wyznacznikiem będzie prędkość odczytu danych z systemu pamięci masowej, porównywalna z przepustowością kart sieciowych 40 lub 100 Gbit na wejściu do jednostki obliczeniowej wyposażonej w procesor graficzny. W ten sposób ultraszybkie systemy pamięci masowej, w tym zewnętrzne NVMe za pośrednictwem Fabric, przestaną być egzotyczne i staną się głównym nurtem zastosowań HPC. Oprócz obliczeń naukowych i finansowych, znajdą zastosowanie w wielu innych praktycznych obszarach, takich jak systemy bezpieczeństwa na poziomie metropolitalnym Safe City czy centra nadzoru transportu, gdzie wymagane są prędkości rozpoznawania i identyfikacji milionów obrazów HD na sekundę” – nakreślił nisza rynkowa topowego systemu Storage

Więcej informacji na temat produktów firmy Kingston można znaleźć pod adresem Oficjalna strona firma.

Źródło: www.habr.com

Dodaj komentarz