| Termin | Definicja |
|---|---|
| NVLink 2.0 | NVLink 2.0 to druga generacja tego interfejsu komunikacyjnego, oferująca zwiększoną przepustowość względem pierwszej wersji. NVLink 2.0 jako połączenie urządzeń NVIDIANVLink 2.0 to druga generacja dedykowanego interfejsu komunikacyjnego opracowanego przez firmę NVIDIA do szybkiej wymiany danych między procesorami graficznymi oraz, w wybranych platformach, między procesorem centralnym a GPU. W odróżnieniu od zwykłego połączenia przez magistralę PCI Express, NVLink wykorzystuje bezpośrednie łącza punkt-punkt. Dzięki temu urządzenia mogą wymieniać dane z mniejszym udziałem głównej magistrali systemowej i z większą przepustowością lokalnego połączenia. Technologia nie jest pojedynczym przewodem o zawsze takiej samej wydajności. Całkowita przepustowość zależy od liczby aktywnych łączy NVLink, ich konfiguracji oraz obsługi po stronie konkretnego układu GPU, płyty głównej, procesora i oprogramowania. Określenie NVLink 2.0 odnosi się do generacji interfejsu, a nie do jednego modelu karty graficznej ani jednego rodzaju złącza stosowanego we wszystkich urządzeniach. Przepustowość i sposób działania drugiej generacjiTeoretyczna przepustowość jednego łącza NVLink 2.0 wynosi 25 GB/s w jednym kierunku. Ponieważ transmisja w obie strony odbywa się równolegle, pojedyncze łącze może zapewnić do 50 GB/s przepustowości dwukierunkowej. Są to wartości szczytowe warstwy danych, dlatego rzeczywisty transfer zależy między innymi od rozmiaru bloków, rodzaju operacji, opóźnień, obciążenia urządzeń oraz narzutu protokołu. Przykładem zastosowania drugiej generacji jest NVIDIA Tesla V100 w wersji SXM2, wyposażona w sześć połączeń NVLink. Przy wykorzystaniu wszystkich łączy daje to do 150 GB/s w jednym kierunku i do 300 GB/s dla ruchu dwukierunkowego. Nie należy jednak przenosić tych wartości na każdą kartę określaną jako zgodna z NVLink. W niektórych konstrukcjach dostępna jest mniejsza liczba łączy, a wynikowa przepustowość jest odpowiednio niższa. NVLink 2.0 w obliczeniach GPUNajwiększe znaczenie NVLink 2.0 ujawnia się przy zadaniach, w których kilka GPU często wymienia duże ilości danych. Dotyczy to między innymi obliczeń naukowych, symulacji, przetwarzania macierzy oraz trenowania modeli uczenia maszynowego. Szybsza komunikacja może ograniczyć czas oczekiwania jednego GPU na dane znajdujące się w pamięci innego układu. Sama obecność interfejsu nie gwarantuje jednak proporcjonalnego przyspieszenia programu, ponieważ aplikacja i biblioteki obliczeniowe muszą umieć korzystać z tej ścieżki. W systemach wykorzystujących procesory IBM POWER9 NVLink 2.0 mógł służyć także do komunikacji pomiędzy procesorem centralnym i akceleratorami NVIDIA. Taka konfiguracja różni się od typowego połączenia GPU przez PCI Express, ponieważ ścieżka danych oraz obsługa przestrzeni pamięci zależą od konkretnej platformy sprzętowej. W praktyce trzeba więc rozpatrywać razem model GPU, wersję platformy, topologię połączeń, sterownik NVIDIA, środowisko CUDA oraz sposób, w jaki aplikacja wykonuje transfery. Co obejmuje sprawdzenie systemu z NVLink 2.0Diagnostyka systemu z NVLink 2.0 zaczyna się od identyfikacji wszystkich kart graficznych i ustalenia, czy dana platforma rzeczywiście obsługuje tę generację połączenia. Następnie sprawdza się obecność oraz prawidłowe osadzenie mostka NVLink albo odpowiednich modułów połączeniowych, stan złączy, zasilanie kart, temperatury i komunikaty sterownika. W systemie Linux informacje o urządzeniach NVIDIA można zebrać poleceniem Brak aktywnego łącza nie zawsze oznacza uszkodzenie karty. Przyczyną może być niezgodny model GPU, nieprawidłowy mostek, niedopasowanie szerokości lub układu złączy, wyłączona funkcja w konfiguracji, problem ze sterownikiem albo ograniczenie płyty głównej. Jeżeli system widzi obie karty, ale transfery odbywają się przez PCI Express, należy odróżnić błąd fizycznego połączenia od sytuacji, w której konkretna aplikacja po prostu nie korzysta z NVLink. Naprawa wymaga zatem zarówno kontroli sprzętu, jak i analizy konfiguracji oprogramowania oraz topologii urządzeń. |