СледваСледващо ръководство
Паралелизъм на модел и конвейер
технически
Техническо РЪКОВОДСТВО
Начин за разделяне на математиката вътре в един слой невронна мрежа между множество графични процесори, така че модел, който е твърде голям за едно устройство, все още да може да работи.
Чуйте това ръководствоAI-разказан · ~2 min
It matters because frontier models have hundreds of billions of parameters that no single GPU can hold or compute fast enough alone.
Тензорният паралелизъм (наричан още паралелизъм на вътрешнослойния модел) разделя индивидуалните тегловни матрици в GPU, вместо да поставя цели слоеве на отделни устройства. В трансформатор, големите матрични умножения – проекциите на вниманието и MLP с подаване напред – са разделени: например първата матрица на теглото на MLP е разделена на колони, а втората на редове, така че всеки графичен процесор изчислява секция и едно цялостно намаляване комбинира резултатите. Вниманието е разделено между главите, като всеки GPU обработва подмножество. Тъй като всеки GPU изпълнява част от всеки слой едновременно, тензорният паралелизъм намалява паметта на GPU и ускорява изчисленията, но изисква честа комуникация с висока честотна лента между GPU на всеки слой. Ето защо обикновено се ограничава в рамките на възел, свързан с NVLink, и се комбинира с конвейер и паралелизъм на данни за много големи задачи за обучение и обслужване.
Обучение на модел със 175B параметър чрез разделяне на тегловните матрици на всеки слой в 8 GPU в един свързан с NVLink възел с помощта на Megatron-LM.
Обслужване на 70B-параметър чат модел във vLLM с tensor_parallel_size=4, така че теглата да пасват на четири GPU и да отговарят в реално време.
Разделянето на вниманието на трансформатора се насочва към GPU, така че всяко устройство изчислява подмножество, след което обединява изходите за следващия слой.
Комбиниране на тензорен паралелизъм в рамките на възли и паралелизъм на тръбопроводи между възли за обучение на модели с трилиони параметри на големи GPU клъстери.
Тензорният паралелизъм остава основополагащ, но все повече се смесва с „3D паралелизъм“ (тензор + тръбопровод + данни) и се комбинира с експертен паралелизъм за смесени модели на експерти. Рамки като Megatron-LM, DeepSpeed и vLLM автоматизират шардинга. Тъй като връзките на GPU (NVLink, NVSwitch) и оптичните тъкани стават по-бързи, ограничението на границата на възела се отпуска, позволявайки по-широки тензорно-паралелни групи. Очаквайте по-интелигентно автоматично паралелизиране, което избира размери на сегменти и размери на групи, за да минимизира комуникацията за дадена клъстерна топология.
Безплатен бюлетин
Три проверени AI истории всяка делнична сутрин, написани на достъпен език. Безплатно завинаги, без реклами.
Един имейл всеки делничен ден. Отписване с едно кликване. Никога не продаваме и не споделяме вашия имейл адрес.
Тествайте себе си
Незабавна обратна връзка за всеки отговор и сертификат за споделяне с подлежащ на проверка идентификационен номер, след като преминете курс.
Подкрепете безплатното AI образование. AI Understanding е 501(c)(3) с нестопанска цел — без реклами, без платен достъп, никога. Направете дарение
Начин за разделяне на математиката вътре в един слой невронна мрежа между множество графични процесори, така че модел, който е твърде голям за едно устройство, все още да може да работи. Има значение, защото граничните модели имат стотици милиарди параметри, които нито един GPU не може да поддържа или да изчисли достатъчно бързо сам.
Тензорният (вътрешнослоев) паралелизъм разделя тегловните матрици вътре в слой, така че всеки графичен процесор изчислява част от един и същи слой – различен от конвейерния паралелизъм, който поставя цели слоеве на различни графични процесори.
Разделянето на първата матрица по колони позволява на всеки графичен процесор да прилага локално нелинейността; разделянето на втория по редове означава, че едно цялостно намаляване сумира частичните изходи - минимизиране на синхронизацията.
Всеки слой задейства колективна комуникация (all-reduces), така че тежкият, чувствителен към латентност трафик изисква бързи връзки между възли като NVLink, а не по-бавни мрежи между възли.
Главите на вниманието са независими, така че са разпределени между графичните процесори - всяко устройство изчислява някои глави и изходите се комбинират.
All-reduce сумира частичните изходи, изчислени на всеки графичен процесор, така че те са съгласни с резултата на слоя; това се случва няколко пъти на слой при преминаване напред и назад.
Продължавай да учиш
Още ръководства, избрани за тази тема
СледваСледващо ръководство
Паралелизъм на модел и конвейер
технически