PRZEWODNIK techniczny

Równoległość tensorowa dla dużych modeli

Sposób na podzielenie obliczeń w ramach pojedynczej warstwy sieci neuronowej na wiele procesorów graficznych, aby nadal można było uruchomić model zbyt duży dla jednego urządzenia.

2 minuty czytaniaOstatnia aktualizacja

Przegląd

It matters because frontier models have hundreds of billions of parameters that no single GPU can hold or compute fast enough alone.

Głębokie nurkowanie

Równoległość tensorów (nazywana również równoległością modelu wewnątrzwarstwowego) dzieli poszczególne macierze wag na procesory graficzne zamiast umieszczać całe warstwy na oddzielnych urządzeniach. W transformatorze mnożenia dużej macierzy — projekcje uwagi i MLP ze sprzężeniem zwrotnym — są rozdzielane: na przykład pierwsza macierz wag MLP jest podzielona według kolumn, a druga przez wiersze, więc każdy procesor graficzny oblicza wycinek, a pojedyncza całkowita redukcja łączy wyniki. Uwaga jest rozdzielona między głowami, a każdy procesor graficzny obsługuje podzbiór. Ponieważ każdy procesor graficzny wykonuje część każdej warstwy jednocześnie, równoległość tensorów zmniejsza pamięć przypadającą na procesor graficzny i przyspiesza obliczenia, ale wymaga częstej komunikacji o dużej przepustowości pomiędzy procesorami graficznymi w każdej warstwie. Dlatego zwykle ogranicza się go do węzła połączonego za pomocą NVLink i łączy się z potokiem i równoległością danych w przypadku bardzo dużych zadań szkoleniowych i obsługujących.

Wgląd techniczny

Sztuczka spopularyzowana przez Megatron-LM polega na takim doborze wymiarów przegród, aby komunikacja była minimalna. Podział pierwszej macierzy MLP według kolumn umożliwia każdemu procesorowi graficznemu zastosowanie nieliniowości lokalnie, bez synchronizacji; podzielenie drugiego wiersza oznacza, że ​​wyniki wymagają tylko jednej redukcji całkowitej, aby zsumować wyniki częściowe. W ten sposób każda warstwa podlega mniej więcej dwóm całkowitym redukcjom (do przodu) i dwóm (do tyłu). Ponieważ te kolektywy występują w każdej warstwie, dominuje opóźnienie — zatem równoległość tensorów kryje się za szybkimi łączami międzywęzłowymi, takimi jak NVLink, a nie za wolniejszymi sieciami międzywęzłowymi.

Wpływ strategiczny

Koszt i budżet

Decyzje dotyczące architektury wpływają na wydajność i koszty operacyjne przez lata.

Jaśniejsze decyzje

Edukacja techniczna pomaga zespołom wybrać odpowiedni stos, a nie tylko najnowszy.

Kontrola jakości

Lepsze wybory inżynieryjne zmniejszają liczbę incydentów związanych z niezawodnością w produkcji.

Przyszłość równoległości tensorów dla dużych modeli

Równoległość tensorowa pozostaje podstawą, ale jest coraz częściej łączona z „równoległością 3D” (tensor + potok + dane) i łączona z równoległością ekspercką w przypadku modeli typu Mixture-of-Expert. Struktury takie jak Megatron-LM, DeepSpeed ​​i vLLM automatyzują sharding. W miarę przyspieszania połączeń GPU (NVLink, NVSwitch) i sieci optycznych granica węzła zmniejsza się, umożliwiając tworzenie szerszych grup tensorowo-równoległych. Oczekuj inteligentniejszej automatycznej równoległości, która wybiera wymiary fragmentów i rozmiary grup, aby zminimalizować komunikację dla danej topologii klastra.

Implementacja w świecie rzeczywistym

Trenowanie modelu o parametrach 175B poprzez podzielenie macierzy wag każdej warstwy na 8 procesorów graficznych w jednym węźle podłączonym do NVLink przy użyciu Megatron-LM.

Udostępnianie modelu czatu z parametrami 70B w vLLM z tensor_parallel_size=4, dzięki czemu wagi mieszczą się na czterech procesorach graficznych i reagują w czasie rzeczywistym.

Podział głowic transformatorowych na procesory graficzne, tak aby każde urządzenie obliczało podzbiór, a następnie łączenie wyników dla następnej warstwy.

Łączenie równoległości tensorów w węzłach i równoległości potoków między węzłami w celu uczenia modeli bilionowych parametrów w dużych klastrach GPU.

Zagrożenia i poręcze

Optymalizacja jednego testu porównawczego może ukryć szersze słabości systemu.

Koszty infrastruktury i utrzymania są często niedoszacowane.

W miarę jak systemy stają się coraz bardziej złożone, luki w bezpieczeństwie i obserwowalności mogą się zwiększać.

Plan wdrożenia

1

Przed wdrożeniem zdefiniuj docelowe opóźnienia, jakość i koszty.

2

Test porównawczy w realistycznych warunkach obciążenia i danych.

3

Monitorowanie przyrządu pod kątem błędów, dryftu i wpływu użytkownika.

4

Przed skalowaniem przygotuj ścieżki wycofywania zmian i reakcji na incydenty.

Odkrywaj dalej

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Tensor Parallelism for Large Models quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Rozpocznij quiz

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Następny poradnik

Równoległość modelu i potoku

Często zadawane pytania

What is Tensor Parallelism for Large Models?

Sposób na podzielenie obliczeń w ramach pojedynczej warstwy sieci neuronowej na wiele procesorów graficznych, aby nadal można było uruchomić model zbyt duży dla jednego urządzenia. Ma to znaczenie, ponieważ modele pionierskie mają setki miliardów parametrów, których żaden pojedynczy procesor graficzny nie jest w stanie samodzielnie przechowywać ani obliczać wystarczająco szybko.

Co powoduje równoległość tensorów pomiędzy procesorami graficznymi?

Równoległość tensorowa (wewnątrzwarstwowa) dzieli macierze wag na kawałki wewnątrz warstwy, więc każdy procesor graficzny oblicza część tej samej warstwy — w odróżnieniu od równoległości potoku, która umieszcza całe warstwy na różnych procesorach graficznych.

W podziale MLP w stylu Megatron, w jaki sposób dwie macierze wag są podzielone, aby zminimalizować komunikację?

Podział pierwszej macierzy na kolumny pozwala każdemu procesorowi graficznemu zastosować lokalnie nieliniowość; podzielenie sekundy przez wiersze oznacza, że ​​pojedyncza redukcja sumuje częściowe wyniki, minimalizując synchronizację.

Dlaczego równoległość tensorów jest zwykle utrzymywana w jednym węźle?

Każda warstwa uruchamia komunikację zbiorową (all-reduces), więc duży ruch wrażliwy na opóźnienia wymaga szybkich łączy międzywęzłowych, takich jak NVLink, a nie wolniejszych sieci międzywęzłowych.

W jaki sposób mechanizm uwagi jest zwykle zrównoleglony w przypadku równoległości tensorów?

Głowice uwagi są niezależne, więc są rozdzielone pomiędzy procesory graficzne — każde urządzenie oblicza część głowic, a wyniki są łączone.

Jaka operacja zbiorowa zwykle łączy częściowe wyniki w równoległości tensorów?

All-reduce sumuje częściowe wyniki obliczone na każdym GPU, tak aby zgadzały się z wynikami warstwy; dzieje się to wiele razy na warstwę w przejściach do przodu i do tyłu.