Teknisk GUIDE

Modell- og rørlednings-parallellisme

Når en modell er for stor til å passe på én GPU, deler modellen og rørledningens parallellitet selve modellen på tvers av enheter.

2 min lesingSist oppdatert

Oversikt

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

Dypdykk

Modellparallellisme deler en enkelt modell på tvers av flere GPUer slik at ingen enhet trenger å holde alle vektene. Det er to hovedsmaker. Tensor (intra-lag) parallellitet deler matematikken inne i et lag, for eksempel å kutte en stor matrisemultiplikasjon på tvers av GPUer som hver beregner en del av utdata. Pipeline (mellomlags) parallellitet tildeler forskjellige påfølgende lag til forskjellige GPUer, så lagblokk 1 lever på GPU 0, blokk 2 på GPU 1, og så videre, med aktiveringer sendt videre som et samlebånd. Utfordringen med naiv pipelining er "boblen": mens GPU 0 fungerer på den første batchen, sitter nedstrøms GPUer inaktive. Pipelining deler hver batch i mikrobatcher slik at alle stadier forblir opptatt, noe som dramatisk forbedrer utnyttelsen.

Teknisk innsikt

Tensorparallellisme (som i NVIDIA Megatron-LM) deler vektmatriser kolonne- eller radvis og bruker all-reduce for å rekombinere delresultater, og holde kommunikasjonen inne i en rask NVLink-node. Pipeline-parallellisme (GPipe, PipeDream) deler partiet inn i mikrobatcher som flyter gjennom stadier i en forskjøvet tidsplan, og reduserer inaktiv "boble"-tid. De to er ofte lagdelt sammen, med tensorparallellisme i en node og rørledningsparallellisme på tvers av noder.

Strategisk innvirkning

Cost and budget

Arkitekturbeslutninger driver ytelse og driftskostnader i årevis.

Tydeligere avgjørelser

Teknisk utdanning hjelper team med å velge riktig stabel, ikke bare den nyeste.

Quality control

Bedre ingeniørvalg reduserer pålitelighetshendelser i produksjonen.

Fremtiden for modell- og rørledningsparallelisme

Rammeverk automatiserer i økende grad det vanskelige problemet med å bestemme hvordan en modell skal partisjoneres på tvers av enheter, ved å bruke profilering og søk for å balansere databehandling og kommunikasjon. Forvent tettere integrering av tensor-, pipeline- og dataparallellisme (3D-parallellisme), smartere mikrobatch-planlegging for å nesten eliminere rørledningsbobler, og maskinvare med raskere sammenkoblinger, slik at det å dele et enkelt lag på tvers av brikker blir billigere og mer rutinemessig for stadig større modeller.

Real-World Implementering

Trene GPT-modeller med NVIDIA Megatron-LM, som deler oppmerksomheten til hvert transformatorlag og matriser videre på tvers av GPU-er via tensorparallellisme.

Bruk av GPipe til å plassere forskjellige lag av en gigantisk visjon eller språkmodell på separate akseleratorer mens mikrobatching holder dem opptatt.

DeepSpeeds rørledningsmotor deler opp en modell med flere hundre milliarder parametere i trinn på tvers av mange noder.

Å kombinere tensorparallellisme inne i en enkelt 8-GPU-server med pipeline-parallellisme som spenner over flere servere for å trene opp en modell som er altfor stor for én maskin.

Risikoer og rekkverk

Optimalisering av ett benchmark kan skjule bredere systemsvakheter.

Infrastruktur- og vedlikeholdskostnader er ofte undervurdert.

Sikkerhets- og observerbarhetsgap kan vokse etter hvert som systemene blir mer komplekse.

Veikart for implementering

1

Definer ventetid, kvalitet og kostnadsmål før implementering.

2

Benchmark under realistiske belastnings- og dataforhold.

3

Instrumentovervåking for feil, drift og brukerpåvirkning.

4

Forbered tilbakerulling og hendelsesresponsbaner før skalering.

Fortsett å utforske

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.

Start quiz

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

Neste guide

Tensor-parallellisme for store modeller

Ofte stilte spørsmål

What is Model and Pipeline Parallelism?

Når en modell er for stor til å passe på én GPU, deler modellen og rørledningens parallellitet selve modellen på tvers av enheter. Det er dette som gjør trening av gigantiske språkmodeller med hundrevis av milliarder av parametere fysisk mulig.

Hvilket grunnleggende problem løser modell- og rørledningsparallellisme?

Modell- og pipeline-parallellisme deler selve modellen på tvers av enheter, noe som muliggjør opplæring av nettverk som er langt større enn en enkelt GPU kan holde.

Hvordan fungerer tensor (intra-lag) parallellisme splitt?

Tensorparallellisme deler beregningen i et enkelt lag, for eksempel å dele en stor vektmatrise slik at hver GPU beregner en del av utdataene.

Hva er "boblen" i naiv pipeline-parallellisme?

Tidlig i et pipeline-trinn har nedstrøms-trinn ingen inngang ennå og sitter inaktive, og kaster bort GPU-tid; dette tomgangsgapet kalles boblen.

Hvordan reduserer rørledningens parallellitet boblen?

Ved å dele en batch i mikrobatcher lar flere mikrobatcher okkupere forskjellige stadier samtidig, noe som holder alle GPU-er opptatt og reduserer ledig tid.

Hvorfor holdes tensorparallellisme vanligvis innenfor en enkelt node?

Tensorparallellisme kommuniserer ofte for å rekombinere partielle matriseresultater, så den plasseres der sammenkoblingsbåndbredden er høyest, inne i en node over NVLink.