Równoległość LLM: czym różnią się TP, PP, DP i EP?

Tłumaczenie automatyczne

Ten artykuł został automatycznie przetłumaczony z angielskiego oryginału.

Równoległość tensorowa dzieli operacje na wagach. Równoległość potokowa dzieli warstwy. Równoległość danych podczas obsługi żądań uruchamia niezależne repliki modelu. Równoległość ekspertów rozdziela ekspertów modelu typu mixture-of-experts. Wybór zależy od tego, gdzie model zmieści się w pamięci, od ruchu i od połączeń między GPUs.

To cztery powszechne podejścia. Duże wdrożenia mogą je łączyć, a trening z długim kontekstem może też korzystać z równoległości sekwencji lub kontekstu.

Co przechowuje każdy GPU?

PodejścieRozmieszczenie modeluKomunikacja, którą należy uwzględnić
Równoległość tensorowa, TPCzęści macierzy wagCzęste operacje kolektywne podczas wykonywania modelu
Równoległość potokowa, PPGrupy kolejnych warstwAktywacje przekazywane między etapami
Równoległość danych, DPPełne repliki do obsługi żądańBrak obliczeń modelu między replikami dla niezależnych żądań
Równoległość ekspertów, EPRóżni eksperci MoETokeny kierowane do ekspertów, często przez wymianę każdy-z-każdym

DP podczas treningu różni się od replik obsługujących żądania: trening łączy gradienty, a ZeRO lub FSDP mogą dzielić stan treningu. Systemy MoE mogą też koordynować współdzielone komponenty, nawet gdy część pracy wykorzystuje równoległość danych.

Raport Llama 3 opisuje łączenie form równoległości podczas treningu dużych modeli oraz inferencję z równoległością potokową. Opisane wdrożenie pokazuje, dlaczego rozmieszczenie modelu i topologię trzeba rozpatrywać łącznie; nie wyznacza uniwersalnej konfiguracji.

Wybierz najmniejszą grupę, która obsłuży obciążenie

Jeśli model do obsługi żądań mieści się na jednym GPU z wystarczającą pojemnością KV cache, zacznij od testowania niezależnych replik. Mogą zwiększyć łączną przepustowość bez dodawania operacji kolektywnych do każdego żądania.

Jeśli model potrzebuje kilku GPUs, przetestuj TP w obrębie węzła z szybkimi połączeniami między GPU. Więcej części może zmniejszyć zużycie pamięci na GPU, ale zwiększa komunikację. Jeśli model obejmuje wiele węzłów, porównaj PP i połączenia TP z PP; nierówne czasy etapów i okresy bezczynności potoku mogą zmniejszyć wykorzystanie zasobów.

Dla modelu MoE zmierz rozmieszczenie ekspertów, równomierność rozdziału tokenów i ruch w sieci połączeń, zanim dodasz EP. Dostępna pamięć dla ekspertów to tylko jeden element decyzji.

W porównaniu zachowaj te same prompty, długości odpowiedzi, precyzję i progi opóźnienia. Podaj przepustowość całej grupy obsługującej żądania; podzielenie jej przez liczbę GPU nie pozwala przewidzieć skalowania innej topologii.

Sekcja o równoległości w LLM Engineering Guide ilustruje cztery sposoby rozmieszczenia.