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.
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
Definer ventetid, kvalitet og kostnadsmål før implementering.
Benchmark under realistiske belastnings- og dataforhold.
Instrumentovervåking for feil, drift og brukerpåvirkning.
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.
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.