Műszaki ÚTMUTATÓ

Modell és csővezeték párhuzamossága

Ha egy modell túl nagy ahhoz, hogy elférjen egy GPU-n, a modell és a folyamat párhuzamossága felosztja magát a modellt az eszközök között.

2 perc olvasásUtoljára frissítve

Áttekintés

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

Mély merülés

A modell párhuzamossága egyetlen modellt particionál több GPU között, így egyetlen eszköznek sem kell az összes súlyt elviselnie. Két fő íz van. A tenzoros (rétegen belüli) párhuzamosság felosztja a matematikát egy rétegen belül, például feloszt egy nagy mátrixszorzást olyan GPU-k között, amelyek mindegyike kiszámítja a kimenet egy részét. A csővezetékes (rétegek közötti) párhuzamosság különböző, egymást követő rétegeket rendel a különböző GPU-khoz, így az 1. rétegblokk a 0-s GPU-n, a 2. blokk az 1-es GPU-n és így tovább, és az aktiválásokat futószalagként továbbítják. A naiv csővezetékezés kihívása a „buborék”: míg a GPU 0 az első kötegen működik, a későbbi GPU-k tétlenül állnak. A csővezetékek minden egyes tételt mikro-kötegekre osztanak fel, így minden szakasz lefoglalt marad, és jelentősen javítja a kihasználtságot.

Technikai betekintés

A tenzorpárhuzam (mint az NVIDIA Megatron-LM-nél) oszloponként vagy soronként felosztja a súlymátrixokat, és az all-redukciót használja a részeredmények újrakombinálásához, így a kommunikációt egy gyors NVLink csomóponton belül tartja. A csővezeték párhuzamossága (GPipe, PipeDream) a köteget mikro-kötegekre osztja, amelyek szakaszos ütemezésben haladnak át a szakaszokon, csökkentve az üresjárati „buborék” idejét. A kettő gyakran egymásba rétegezve van, egy csomóponton belüli tenzorpárhuzam, és a csomópontok közötti csővezeték párhuzamosság.

Stratégiai hatás

Költség és költségvetés

Az építészeti döntések évekig növelik a teljesítményt és a működési költségeket.

Tisztább döntések

A technikai oktatás segít a csapatoknak a megfelelő verem kiválasztásában, nem csak a legújabb készletben.

Minőségellenőrzés

A jobb mérnöki döntések csökkentik a termelés megbízhatósági incidenseit.

A modell és a csővezeték párhuzamosságának jövője

A keretrendszerek egyre inkább automatizálják azt a nehéz problémát, hogy hogyan particionáljunk egy modellt az eszközök között, profilalkotást és keresést használva a számítás és a kommunikáció egyensúlyára. Várható a tenzor, a csővezeték és az adatpárhuzamosság szorosabb integrációja (3D párhuzamosság), az intelligensebb mikro-kötegelt ütemezés a csővezeték-buborékok szinte kiküszöbölésére, valamint a gyorsabb összekapcsolódású hardver, így az egyetlen réteg chipek közötti felosztása olcsóbbá és rutinszerűbbé válik az egyre nagyobb modelleknél.

Valós megvalósítás

GPT-stílusú modellek betanítása az NVIDIA Megatron-LM-mel, amely az egyes transzformátorrétegek figyelmét és az előrecsatolt mátrixokat felosztja a GPU-k között a tenzor párhuzamosság révén.

A GPipe használatával egy óriási vízió vagy nyelvi modell különböző rétegeit külön gyorsítókra helyezik, miközben a mikrokötegelés lefoglalja őket.

A DeepSpeed ​​csővezeték-motorja egy több százmilliárd paraméterű modellt szakaszokra particionál számos csomóponton keresztül.

A tenzoros párhuzamosság egyetlen 8 GPU-s szerveren belüli kombinálása több szerverre kiterjedő párhuzamos párhuzamossággal, hogy egy géphez túl nagy modellt képezzenek.

Kockázatok és védőkorlátok

Egy benchmark optimalizálása elrejtheti a rendszer általános hiányosságait.

Az infrastrukturális és karbantartási költségeket gyakran alábecsülik.

A biztonsági és megfigyelhetőségi hiányosságok a rendszerek bonyolultabbá válásával nőhetnek.

Végrehajtási ütemterv

1

Határozza meg a késleltetési, minőségi és költségcélokat a megvalósítás előtt.

2

Benchmark reális terhelési és adatviszonyok mellett.

3

Műszerfigyelés a hibák, az eltolódás és a felhasználói hatások szempontjából.

4

A méretezés előtt készítse elő a visszagörgetési és az incidensre adott válaszútvonalakat.

Folytassa a felfedezést

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.

Kezdő kvíz

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

Következő útmutató

Tenzor párhuzamosság nagy modellekhez

Gyakran ismételt kérdések

What is Model and Pipeline Parallelism?

Ha egy modell túl nagy ahhoz, hogy elférjen egy GPU-n, a modell és a folyamat párhuzamossága felosztja magát a modellt az eszközök között. Ez teszi fizikailag lehetővé a több százmilliárd paraméterrel rendelkező óriási nyelvi modellek képzését.

Milyen alapvető problémát old meg a modell és a csővezeték párhuzamossága?

A modell és a csővezeték párhuzamossága felosztja magát a modellt az eszközök között, lehetővé téve a hálózatok betanítását, amelyek sokkal nagyobbak, mint amennyit egyetlen GPU képes elhelyezni.

Hogyan működik a tenzor (rétegen belüli) párhuzamossági felosztás?

A tenzor párhuzamosság egyetlen rétegben osztja fel a számítást, például feloszt egy nagy súlyú mátrixot, így minden GPU kiszámítja a kimenet egy részét.

Mi a „buborék” a naiv csővezeték-párhuzamban?

A folyamat korai szakaszában a downstream szakaszok még nem rendelkeznek bemenettel, és tétlenül töltik a GPU-időt. ezt az üresjárati rést buboréknak nevezik.

Hogyan csökkenti a csővezeték párhuzamossága a buborékot?

Ha egy köteget mikro-kötegelekre oszt fel, akkor több mikro-kötegelt tölthet be egyszerre különböző szakaszokat, így az összes GPU elfoglalt marad, és csökken az üresjárati idő.

Miért tartják a tenzor párhuzamosságot általában egyetlen csomóponton belül?

A tenzorpárhuzam gyakran kommunikál a részleges mátrixeredmények rekombinációja érdekében, ezért ott van elhelyezve, ahol a legnagyobb az összekapcsolási sávszélesség, az NVLink feletti csomóponton belül.