Potrzeba wirtualizacji zarówno grafiki, jak i usług akceleracji obliczeniowej HPC pojawiła się wraz z rosnącą popularnością usług chmurowych. Celem było dostarczanie wysokowydajnej, fotorealistycznej grafiki klientom takim jak tablety czy smartfony, niedysponującym wystarczającą, graficzną mocą obliczeniową, a także mocy niezbędnej do akceleracji obliczeń związanych ze sztuczną inteligencją. Dzięki temu można udostępniać profesjonalne usługi renderingu, obróbki grafiki czy analizy AI wielu użytkownikom chmury jednocześnie.
W centrach danych procesory graficzne zwiększają możliwości udostępniania usług, które trudno byłoby zrealizować, opierając się na mocy obliczeniowej zwykłych procesorów. Co prawda zostały one opracowane z myślą o przetwarzaniu grafiki, ale w wypadku centrów danych ewoluowały w procesory przetwarzania równoległego do bardziej ogólnych zadań, w tym wspomagania obliczeń HPC (ang. high performance computing). To dlatego wykorzystywane są do budowy najsilniejszych superkomputerów. Obsługują też rosnącą gamę aplikacji. Warto wspomnieć, że zwykłe procesory oferują niewielką liczbę rdzeni, podczas gdy procesory graficzne – tysiące, co pozwala im lepiej obsługiwać operacje równoległe.
Zastosowania procesorów graficznych
Jeśli centrum danych udostępnia usługi związane ze sztuczną inteligencją, analityką biznesową, symulacjami lub modelowaniem, procesory graficzne mogą okazać się istotnym elementem umożliwiającym specjalistom szybkie i skuteczne wykonywanie zadań. Mają również kluczowe znaczenie dla oferowania gier w chmurze. W przypadku sztucznej inteligencji, głębokiego uczenia i uczenia maszynowego procesory graficzne pomagają trenować, optymalizować i obsługiwać algorytmy AI. Można je swobodnie wykorzystać do treningu głębokiego uczenia się z kilkoma warstwami sieci neuronowej lub na ogromnych zestawach określonych danych, takich jak obrazy 2D, co pozwala uzyskać znaczny wzrost wydajności i skrócić czas szkolenia do realnego i opłacalnego zakresu w przypadku wielu rzeczywistych problemów.
Procesory graficzne w centrach danych są również wykorzystywane do zapewniania zaawansowanych funkcji renderowania 3D w grach, produkcji multimediów, a także wirtualnej i rozszerzonej rzeczywistości. Co więcej, gry w chmurze to szybko rozwijający się rynek zastosowania procesorów graficznych dla DC. Wykorzystywane w zwirtualizowanym środowisku centrum danych procesory graficzne oferują elastyczność i wydajność, umożliwiając zdalnym lub mobilnym pracownikom wykonywanie najbardziej złożonych i wymagających prac z dowolnego miejsca. Podobnie obciążenia analityczne, symulacyjne i modelowanie korzystają z procesorów graficznych dla centrów danych. Ponieważ aplikacje te opierają się na dużych zbiorach złożonych danych, możliwości procesora graficznego pomagają przyspieszyć czas przetwarzania i pozwalają na bardziej dogłębną i szerszą analizę.
Implementacja procesorów graficznych w centrum danych wymaga jednak znacznie więcej energii i przestrzeni. Wytwarzają one również dużo więcej ciepła podczas pracy. Czynniki te wpływają na infrastrukturę DC i mogą podnosić koszty energii lub powodować problemy z niezawodnością systemu. Rozwiązanie problemów związanych z zasilaniem i chłodzeniem za pomocą odpowiedniej infrastruktury jest niezbędne do pomyślnego wdrożenia procesorów graficznych w centrach danych. Niewystarczająca moc może prowadzić do problemów z wydajnością i dostępnością, zaś niewystarczająca wydajność chłodzenia – do przestojów lub uszkodzenia sprzętu.
Tryb vGPU
Obecne systemy wirtualizacji procesorów graficznych bazują na tzw. vGPU, czyli wirtualnym GPU, w którym wykorzystuje się sprzętowego managera, określanego też ogólnie mianem GPU Hypervisora lub konkretną nazwą zależną od stosowanego rozwiązania danego producenta. Do zadań managera należy przede wszystkim dynamiczne przydzielanie graficznych zasobów zainstalowanych w serwerze do poszczególnych wirtualnych maszyn. Dzięki temu możliwe stało się korzystanie z natywnych sterowników karty graficznej w wirtualnych desktopach VDI, a jednocześnie jednej fizycznej karty graficznej może używać wiele wirtualnych maszyn.
Dodatkowo korzystając z dynamicznego partycjonowania, można w dowolny sposób przydzielać zasoby GPU i RAM-u karty graficznej do konkretnej wirtualnej maszyny. Dzięki temu wydajność graficzna wirtualnych maszyn z trybem vGPU w aplikacjach CAD, takich jak SolidWorks czy Edge 3D, lub graficznych, np. Blender, jest porównywalna z ich fizycznymi odpowiednikami. Dzięki temu można już bez problemu tworzyć wirtualne środowiska VDI, które spełnią oczekiwania większości użytkowników aplikacji 3D.
Systemy HGX
Najpopularniejszą platformą wykorzystywaną zarówno do komercyjnego udostępniania usług chmurowych i wirtualizacyjnych związanych z grafiką 3D, jak i systemów sztucznej inteligencji jest NVIDIA HGX. HGX H200 to platforma bazująca na procesorach graficznych H200 Tensor Core i szybkich interkonektorach do transmisji danych. Konfiguracja składa się z maksymalnie ośmiu procesorów graficznych i ma do dyspozycji pamięć do 1,1 terabajta (TB) o łącznej przepustowości wynoszącej 38 terabajtów na sekundę (TB/s). Jej moc obliczeniowa kształtuje się na poziomie 32 petaFLOPS-ów.
Zarówno platformy HGX H200, jak i nieco słabsza HGX H100 oferują zaawansowane możliwości sieciowe, gdzie szybkość transmisji może dochodzić do 400 gigabitów na sekundę przy wykorzystaniu technologii NVIDIA Quantum-2 InfiniBand i Spectrum-X Ethernet. Platformy HGX H200 i HGX H100 wyposażono również w jednostki przetwarzania danych NVIDIA BlueField-3, które umożliwiają tworzenie sieci w chmurze oraz samodzielną współpracę z systemami pamięci masowej.
Akcelerator wnioskowania AI musi zapewniać nie tylko najwyższą wydajność, ale także wszechstronność niezbędną do przyspieszania tych sieci w dowolnej lokalizacji, od centrum danych po brzeg. Jak twierdzi producent, systemy HGX H200 i HGX H100 są w stanie przyspieszyć wnioskowanie nawet 30-krotnie w porównaniu z poprzednią generacją chatbotów Megatron z 530 mld parametrów. W przypadku zastosowań HPC intensywnie korzystających z pamięci, takich jak symulacje, badania naukowe i sztuczna inteligencja, większa przepustowość pamięci H200 zapewnia efektywny dostęp do danych i manipulowanie nimi, co prowadzi do 110-krotnie szybszego uzyskiwania wyników w porównaniu z procesorami CPU.
W wypadku centrów danych udostępniających w chmurze usługi AI, które wykorzystują sieć Ethernet, systemy HGX najlepiej sprawdzą się w połączeniu z platformą sieciową NVIDIA Spectrum-X, zapewniającą najwyższą wydajność sztucznej inteligencji w sieci Ethernet 400 Gb/s. Wyposażony w przełączniki NVIDIA Spectrum-4 i procesory DPU BlueField-3, Spectrum-X zapewnia spójne, przewidywalne wyniki dla tysięcy jednoczesnych zadań AI, niezależnie od skali dzięki optymalnemu wykorzystaniu zasobów i izolacji wydajności. NVIDIA – jako projekt referencyjny wykorzystujący architekturę NVIDIA Spectrum-X – zaprojektowała system Israel-1, hiperskalowy superkomputer generatywnej sztucznej inteligencji bazujący na serwerach Dell PowerEdge XE9680 opartych na platformie z ośmioma procesorami graficznymi NVIDIA HGX H100, procesorami DPU BlueField-3 i przełącznikami Spectrum-4.
Obecnie platforma NVIDIA HGX dostępna jest w postaci pojedynczych, bazowych płyt głównych z czterema lub ośmioma procesorami graficznymi H200 lub H100 albo czterema lub ośmioma procesorami graficznymi A100 poprzedniej generacji.
Konstrukcja H100 i H200
W tym miejscu warto kilka słów poświęcić układom H100 i H200. NVIDIA H100 i NVIDIA H200 to obecnie najpotężniejsze procesory graficzne na świecie, oparte na najnowszej architekturze NVIDIA Hopper i dostępne w obudowach PCIe i SXM. H200 jest pierwszym na świecie procesorem graficznym z pamięcią HBM3e zapewniającym przepustowość pamięci 4,8 TB/s, co stanowi wzrost o 43% w porównaniu z H100. H200 obsługuje też do 141 GB, czyli prawie dwa razy więcej w porównaniu z 80 GB dla H100. Połączenie szybszej i większej pamięci HBM przyspiesza wydajność obliczeniową aplikacji generatywnej sztucznej inteligencji i obliczeń HPC, w tym graficznych, spełniając jednocześnie zmieniające się wymagania rosnących rozmiarów modeli. Jeśli chodzi o specyfikację H100 i H200, sama wydajność procesora graficznego pozostaje taka sama. Wszystkie ulepszenia H200 polegają na wprowadzeniu szybszej i większej pojemności 141 GB pamięci HBM3e.
Procesory graficzne NVIDIA H200 Tensor Core bazujące na architekturze Hopper korzystają z silnika Transformer Engine i rdzeni Tensor czwartej generacji, co sprawiło, że są o 5,5 raza szybsze w porównaniu z wykorzystywanymi wcześniej w centrach danych procesorami graficznymi A100 opartymi na architekturze Ampere. W przypadku wdrożeń na dużą skalę systemy H200 zapewniają pięciokrotnie większą oszczędność energii i czterokrotnie niższy całkowity koszt posiadania w porównaniu z NVIDIA A100.
Wraz ze zwiększoną mocą i skalowalnością niezbędna jest płynna komunikacja między każdym GPU w klastrze serwerów. Czwarta generacja NVLink akceleruje wejścia i wyjścia danych z dwukierunkową przepustowością dochodzącą do 900 GB/s na GPU, co stanowi ponad siedmiokrotność przepustowości PCIe Gen5. W połączeniu z zewnętrznym przełącznikiem NVIDIA NVLink Switch możliwe jest również skalowanie operacji wejścia-wyjścia wielu procesorów graficznych na wielu serwerach, a nie tylko wewnątrz nich, z dwukierunkową przepustowością 900 GB/s na każdy procesor graficzny NVIDIA H200.
System Intela
Rozwiązania GPU dla data center oferuje nie tylko NVIDIA. Konkurencyjnym systemem przeznaczonym również do wirtualizacji usług chmurowych związanych z grafiką i systemami AI jest Intel Data Center GPU Flex. Procesor graficzny może tu obsługiwać różnorodny zakres obciążeń: począwszy od strumieniowego przesyłania multimediów i gier w chmurze, po obsługę wnioskowania wizualnego AI i obciążeń związanych z infrastrukturą wirtualnych komputerów stacjonarnych.
Procesory graficzne Intel Flex korzystają z otwartego interfejsu oneAPI, dzięki czemu rozwiązanie to może być stosowane niezależnie od architektury softwarowej wykorzystywanej w centrum danych. Jak twierdzi producent, Intel Data Center GPU Flex 140 zapewnia pięć razy wyższą przepustowość transkodowania multimediów przy o połowę mniejszej mocy w porównaniu do NVIDIA A10 przy użyciu kodeka HEVC 1080p60 i dwa razy większą przepustowość dekodowania przy połowie mocy NVIDIA A10 w HEVC, AV1, AVC, VP9. Dzięki temu procesory graficzne Intel Flex pozwalają na obsługę większej liczby abonentów przy mniejszej powierzchni centrum danych, redukując koszty związane ze sprzętem i obiektami. Ponadto wysoka wydajność obliczeniowa uzyskiwana z jednego wata dostarczonej mocy pomaga obniżyć całkowity koszt posiadania TCO. Dzięki niskopoziomowej kontroli kodera i szybkości transmisji zapewnianej przez bibliotekę przetwarzania wideo oneAPI (oneVPL) użytkownicy końcowi mogą precyzyjnie dostroić konfigurację kodera, aby najlepiej odpowiadała ich potrzebom.
Obecnie dostępne są dwa rozwiązania. Pierwsze z nich, Intel Data Center GPU Flex 140, to niskoprofilowa karta graficzna o mocy 75 W z dwoma ośmiordzeniowymi procesorami graficznymi Xe. Model Flex 170 to karta pobierająca 150 W mocy wyposażona w pojedynczy procesor graficzny z 32 rdzeniami Xe zapewniający wyższą wydajność szczytową.
System AMD
Firma AMD zaprezentowała niedawno trzecią generację układów graficznych dla centrów danych. Instinct MI300, bo o nich mowa, to, w odróżnieniu od konkurencji, Intela i NVIDII, rozwiązanie hybrydowe zawierające zarówno moduły CPU, jak i GPU, które współdzielą za sobą 128 GB pamięci HBM3. Układy te montowane są w superkomputerze El Capitan w Lawrence Livermore National Laboratory. Oczekuje się, że El Capitan zaoferuje ponad 2 eksaflopy łącznej maksymalnej mocy zmiennoprzecinkowej FP64, co uczyni go najszybszą maszyną na świecie. Akcelerator Instinct MI300X to z kolei układ wykorzystujący wyłącznie procesor graficzny i 192 GB pamięci HBM3, przeznaczony do hiperskalowych centrów danych i systemów chmurowych. AMD Instinct MI300X składa się ze 153 mld tranzystorów.
Producent chwali się, że Instinct MI300 w zastosowaniach związanych ze sztuczną inteligencją będzie ośmiokrotnie wydajniejszy od MI250X. Efektywność energetyczna wzrośnie pięciokrotnie. Jeśli chodzi o sam układ MI300X, to mamy tu do czynienia z jednostką bazującą na architekturze CDNA 3, która korzysta ze wspomnianych 192 GB pamięci HBM3 o przepustowości 5,2 TB/s. Podobnie jak w wypadku rozwiązań NVIDII w Instinct MI300X można połączyć ze sobą osiem akceleratorów, tworząc system AMD Instinct Platform, jednak pod względem samej specyfikacji akcelerator graficzny NVIDIA H100 jest nieco słabszy.
Moc obliczeniowa FP8 oraz FP16 w wypadku konstrukcji AMD jest o 1,3 raza większa i Instinct MI300X jest szybszy od NVIDII H100 o 20% w przypadku modelu Llama 2 (70 mld parametrów). W wypadku modelu Bloom (176 mld parametrów) jest to 40% więcej na korzyść AMD. Za działanie układu AMD odpowiada oprogramowanie ROCm, które zostało zaktualizowane do wersji 6.0 i oferuje teraz nowe funkcje związane z obsługą sztucznej inteligencji.
Autor
Marcin Bieńkowski
Autor jest niezależnym dziennikarzem zajmującym się propagowaniem nauki i techniki.