Model- en pijplijnparallellisme
Wanneer een model te groot is om op één GPU te passen, wordt het model door model- en pijplijnparallellisme over apparaten verdeeld.
Overzicht
This is what makes training giant language models with hundreds of billions of parameters physically possible.
Diepe duik
Modelparallellisme verdeelt een enkel model over meerdere GPU's, zodat geen enkel apparaat alle gewichten hoeft te dragen. Er zijn twee hoofdsmaken. Tensor-parallellisme (intra-laag) splitst de wiskunde binnen een laag, zoals het hakken van een grote matrixvermenigvuldiging over GPU's die elk een deel van de uitvoer berekenen. Pipeline-parallellisme (tussenlagen) wijst verschillende opeenvolgende lagen toe aan verschillende GPU's, dus laagblok 1 leeft op GPU 0, blok 2 op GPU 1, enzovoort, waarbij activeringen als een lopende band worden doorgegeven. De uitdaging bij naïef pipelining is de 'bubbel': terwijl GPU 0 werkt op de eerste batch, blijven downstream-GPU's inactief. Pipelining splitst elke batch op in microbatches, zodat alle fasen bezet blijven, waardoor de benutting dramatisch verbetert.
Technisch inzicht
Tensor-parallellisme (zoals in NVIDIA Megatron-LM) splitst gewichtsmatrices kolom- of rijsgewijs en gebruikt all-reduce om gedeeltelijke resultaten opnieuw te combineren, waardoor de communicatie binnen een snel NVLink-knooppunt blijft. Pipeline-parallellisme (GPipe, PipeDream) verdeelt de batch in microbatches die in een gespreid schema door fasen stromen, waardoor de inactieve 'bubbel'-tijd wordt verkort. De twee zijn vaak op elkaar gelaagd, met tensor-parallellisme binnen een knooppunt en pijplijn-parallellisme tussen knooppunten.
Strategische impact
Cost and budget
Architectuurbeslissingen bepalen jarenlang de prestaties en bedrijfskosten.
Clearer decisions
Technisch onderwijs helpt teams bij het kiezen van de juiste stapel, niet alleen de nieuwste.
Quality control
Betere technische keuzes verminderen het aantal betrouwbaarheidsincidenten in de productie.
De toekomst van model- en pijplijnparallellisme
Frameworks automatiseren steeds meer het moeilijke probleem van het beslissen hoe een model over apparaten moet worden verdeeld, waarbij gebruik wordt gemaakt van profilering en zoeken om rekenkracht en communicatie in evenwicht te brengen. Verwacht een nauwere integratie van tensor-, pijplijn- en dataparallellisme (3D-parallellisme), slimmere micro-batchplanning om pijplijnbellen vrijwel te elimineren, en hardware met snellere verbindingen, zodat het splitsen van een enkele laag over chips goedkoper en routinematiger wordt voor steeds grotere modellen.
Implementatie in de echte wereld
Modellen in GPT-stijl trainen met NVIDIA Megatron-LM, dat de aandacht van elke transformatorlaag en feed-forward-matrices over GPU's verdeelt via tensor-parallellisme.
Het gebruik van GPipe om verschillende lagen van een gigantisch visie- of taalmodel op afzonderlijke versnellers te plaatsen, terwijl micro-batching ze bezig houdt.
De pijplijnengine van DeepSpeed verdeelt een model met meerdere honderd miljard parameters in fasen over vele knooppunten.
Het combineren van tensor-parallellisme binnen één enkele 8-GPU-server met pijplijn-parallellisme dat meerdere servers omspant om een model te trainen dat veel te groot is voor één machine.
Risico's en vangrails
Het optimaliseren van één benchmark kan bredere systeemzwakheden verbergen.
Infrastructuur- en onderhoudskosten worden vaak onderschat.
De lacunes op het gebied van beveiliging en waarneembaarheid kunnen groter worden naarmate systemen complexer worden.
Implementatie routekaart
Definieer latentie-, kwaliteits- en kostendoelen vóór implementatie.
Benchmark onder realistische belasting- en gegevensomstandigheden.
Instrumentbewaking op fouten, drift en gebruikersimpact.
Bereid rollback- en incidentresponspaden voor voordat u gaat schalen.
Blijf verkennen
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
Next guide
Tensor-parallellisme voor grote modellen
Frequently asked questions
What is Model and Pipeline Parallelism?
Wanneer een model te groot is om op één GPU te passen, wordt het model door model- en pijplijnparallellisme over apparaten verdeeld. Dit maakt het fysiek mogelijk om gigantische taalmodellen te trainen met honderden miljarden parameters.
Welk fundamenteel probleem lossen model- en pijplijnparallellisme op?
Model- en pipeline-parallellisme verdelen het model zelf over apparaten, waardoor training van netwerken mogelijk wordt die veel groter zijn dan welke enkele GPU dan ook zou kunnen bevatten.
Hoe werkt de splitsing van tensor (intralaag) parallellisme?
Tensor-parallellisme verdeelt de berekening binnen een enkele laag, bijvoorbeeld door een matrix met een groot gewicht te splitsen, zodat elke GPU een deel van de uitvoer berekent.
Wat is de 'zeepbel' in het naïeve pijplijnparallellisme?
Vroeg in een pijplijnstap hebben de downstream-fasen nog geen input en blijven ze inactief, waardoor GPU-tijd wordt verspild; deze lege kloof wordt de zeepbel genoemd.
Hoe vermindert het parallellisme van pijpleidingen de zeepbel?
Door een batch in microbatches te verdelen, kunnen meerdere microbatches tegelijkertijd verschillende fasen innemen, waardoor alle GPU's bezig blijven en de inactieve tijd wordt verkort.
Waarom wordt het tensorparallellisme doorgaans binnen één knooppunt gehouden?
Tensor-parallellisme communiceert regelmatig om gedeeltelijke matrixresultaten opnieuw te combineren, dus wordt het geplaatst waar de interconnectbandbreedte het hoogst is, in een knooppunt via NVLink.