GHID tehnic

Paralelismul modelului și conductei

Când un model este prea mare pentru a se potrivi pe un singur GPU, paralelismul modelului și conductei împarte modelul în sine pe dispozitive.

2 minute de lecturăUltima actualizare

Prezentare generală

This is what makes training giant language models with hundreds of billions of parameters physically possible.

Scufundare în profunzime

Paralelismul modelului împarte un singur model pe mai multe GPU-uri, astfel încât niciun dispozitiv nu trebuie să țină toate greutățile. Există două arome principale. Paralelismul tensorului (intra-strat) împarte matematica în interiorul unui strat, cum ar fi tăierea unei multiplicari mari de matrice pe GPU-uri pe care fiecare calculează o parte a ieșirii. Paralelismul pipeline (inter-strat) atribuie diferite straturi consecutive diferitelor GPU-uri, astfel încât blocul de strat 1 trăiește pe GPU 0, blocul 2 pe GPU 1 și așa mai departe, cu activări transmise înainte ca o linie de asamblare. Provocarea cu pipeliningul naiv este „bula”: în timp ce GPU 0 funcționează la primul lot, GPU-urile din aval stau inactiv. Pipelining împarte fiecare lot în micro-loturi, astfel încât toate etapele să rămână ocupate, îmbunătățind dramatic utilizarea.

Perspectivă tehnică

Paralelismul tensorului (ca în NVIDIA Megatron-LM) împarte matricele de greutate pe coloană sau pe rând și utilizează all-reduce pentru a recombina rezultatele parțiale, păstrând comunicarea în interiorul unui nod NVLink rapid. Paralelismul conductelor (GPipe, PipeDream) împarte lotul în micro-loturi care curg prin etape într-un program eșalonat, micșorând timpul de „bule” inactiv. Cele două sunt adesea stratificate împreună, cu paralelism tensor într-un nod și paralelism conductă între noduri.

Impact strategic

Cost și buget

Deciziile de arhitectură generează performanța și costurile de operare de ani de zile.

Decizii mai clare

Educația tehnică ajută echipele să aleagă stiva potrivită, nu doar cea mai nouă.

Controlul calității

Opțiuni de inginerie mai bune reduc incidentele de fiabilitate în producție.

Viitorul paralelismului modelului și conductei

Framework-urile automatizează din ce în ce mai mult problema dificilă de a decide cum să partiționați un model între dispozitive, folosind profilarea și căutarea pentru a echilibra calculul și comunicarea. Așteptați-vă la o integrare mai strânsă a tensorului, a conductei și a paralelismului de date (paralelism 3D), la o programare mai inteligentă a micro-loturi pentru a elimina aproape bulele de conducte și la hardware cu interconexiuni mai rapide, astfel încât împărțirea unui singur strat între cipuri devine mai ieftină și mai rutină pentru modelele din ce în ce mai mari.

Implementare în lumea reală

Antrenamentul modelelor în stil GPT cu NVIDIA Megatron-LM, care împarte atenția fiecărui strat de transformator și matricele de feed-forward pe GPU-uri prin paralelism tensor.

Folosirea GPipe pentru a plasa diferite straturi ale unui model gigant de viziune sau limbaj pe acceleratoare separate, în timp ce micro-loturi le ține ocupate.

Motorul pipeline al DeepSpeed ​​care împarte un model cu mai multe sute de miliarde de parametri în etape pe mai multe noduri.

Combinând paralelismul tensorului în interiorul unui singur server cu 8 GPU cu paralelismul pipeline care se întinde pe mai multe servere pentru a antrena un model mult prea mare pentru o singură mașină.

Riscuri și balustrade

Optimizarea unui punct de referință poate ascunde slăbiciunile mai largi ale sistemului.

Costurile de infrastructură și întreținere sunt adesea subestimate.

Lacunele de securitate și observabilitate pot crește pe măsură ce sistemele devin mai complexe.

Foaia de parcurs de implementare

1

Definiți obiectivele de latență, calitate și cost înainte de implementare.

2

Benchmark în condiții realiste de încărcare și date.

3

Monitorizarea instrumentelor pentru erori, deriva și impactul utilizatorului.

4

Pregătiți căile de retragere și răspuns la incident înainte de scalare.

Continuați să explorați

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 Model and Pipeline Parallelism quiz

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

Quiz Start

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

Următorul ghid

Paralelism tensor pentru modele mari

Întrebări frecvente

What is Model and Pipeline Parallelism?

Când un model este prea mare pentru a se potrivi pe un singur GPU, paralelismul modelului și conductei împarte modelul în sine pe dispozitive. Aceasta este ceea ce face posibilă din punct de vedere fizic antrenarea modelelor de limbaj gigantice cu sute de miliarde de parametri.

Ce problemă fundamentală rezolvă paralelismul modelului și conductei?

Paralelismul modelului și conductei împart modelul în sine între dispozitive, permițând antrenarea rețelelor mult mai mari decât ar putea suporta orice GPU.

Cum funcționează împărțirea paralelismului tensor (intra-strat)?

Paralelismul tensorului împarte calculul într-un singur strat, de exemplu împărțind o matrice mare de greutate, astfel încât fiecare GPU să calculeze o parte din ieșire.

Ce este „bula” în paralelismul naiv al conductelor?

La începutul unei etape de conductă, etapele din aval nu au încă nicio intrare și stau inactiv, pierzând timp GPU; acest decalaj inactiv se numește bula.

Cum reduce paralelismul conductelor bula?

Împărțirea unui lot în micro-loturi permite mai multor micro-loturi să ocupe diferite etape simultan, menținând toate GPU-urile ocupate și micșorând timpul de inactivitate.

De ce paralelismul tensorului este de obicei păstrat într-un singur nod?

Paralelismul tensorului comunică frecvent pentru a recombina rezultatele matricei parțiale, astfel încât este plasat acolo unde lățimea de bandă de interconectare este cea mai mare, în interiorul unui nod peste NVLink.