Kollektív kommunikáció és NCCL
A kollektív kommunikáció az, ahogyan a GPU-k egy csoportja cseréli és egyesíti az adatokat, az NCCL pedig az NVIDIA könyvtára, amely az adatcseréket rendkívül gyorssá teszi.
Áttekintés
Operations like all-reduce are the heartbeat of distributed training, synchronizing gradients across every GPU each step.
Mély merülés
Egy nagy modell betanítása azt jelenti, hogy minden GPU a saját adatszeletén számítja ki a gradienseket, majd minden GPU-nak meg kell állapodnia a kombinált eredményben a következő lépés előtt. Ez a koordináció kollektív műveletekkel történik: minden GPU-n keresztül összegzi az értékeket, és mindenkinek megadja az eredményt; az all-gather minden GPU-darabot egy teljes másolatba gyűjti mindegyiken; a broadcast egy GPU adatait küldi a többinek; redukáló-szórású kombájnokat, majd szétválik. Az NCCL (NVIDIA Collective Communications Library) hatékonyan valósítja meg ezeket a szervereken lévő GPU-k és szerverek között, topológiatudatos algoritmusok, például a gyűrű és a fa teljes redukciója segítségével. Kihasználja az NVLink-et egy csomóponton belül, az InfiniBandot vagy a RoCE-t a csomópontok között, és a PyTorch DDP, FSDP, DeepSpeed és Megatron kommunikációs gerince.
Technikai betekintés
A csengetés teljes csökkentése a klasszikus algoritmus: a GPU-k egy logikai gyűrűt alkotnak, és az adatok olyan darabokra oszlanak, amelyek keringenek, így minden lépés átfedi a kommunikációt, így a teljes átviteli sávszélesség optimális és nagyjából független a GPU-számtól. Számos csomópont esetében a fa alapú algoritmusok az eredmények hierarchikus kombinálásával csökkentik a várakozási időt. Az NCCL automatikusan felismeri a topológiát, kiválasztja a legjobb algoritmust, és az NVIDIA SHARP segítségével a hálózatba töltheti a redukciós számításokat, felére csökkentve a linkeken áthaladó adatokat.
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 kollektív kommunikáció és az NCCL jövője
Ahogy a klaszterek több százezer GPU-ra méreteződnek, a kommunikáció egyre inkább uralja a képzési időt, így a kollektív könyvtárak forró határt jelentenek. Várható mélyebb hálózaton belüli számítástechnika (a redukciót végző kapcsolók), a számítás és a kommunikáció jobb átfedése a késleltetés elrejtése érdekében, valamint alacsonyabb pontosságú csoportok, amelyek csökkentik az áthelyezett bájtokat. A verseny is erősödik a gyártók közötti erőfeszítésekkel és az Ethernet-alapú RDMA-alternatívákkal, miközben az NCCL folyamatosan erősíti az integrációt az NVLink-kel, az NVSwitch-el és a feltörekvő optikai szövetekkel.
Valós megvalósítás
Gradiensek szinkronizálása minden edzési lépésben az összes GPU-n a PyTorch DistributedDataParallel all-reduce használatával
Az optimalizáló állapotok felosztása és a paraméterek igény szerinti összegyűjtése az összes összegyűjtéssel és a szórás csökkentésével az FSDP vagy a DeepSpeed ZeRO segítségével
A kezdeti modellsúlyok közvetítése egyik GPU-ról az összes többire az edzés kezdetén
Csengetés teljes csökkentése az NVLink és az InfiniBand felett a sávszélesség magas tartása érdekében a több csomópontos GPU-fürtökben
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
Határozza meg a késleltetési, minőségi és költségcélokat a megvalósítás előtt.
Benchmark reális terhelési és adatviszonyok mellett.
Műszerfigyelés a hibák, az eltolódás és a felhasználói hatások szempontjából.
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 Collective Communication and NCCL 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
Következő útmutató
Online és offline funkciók kiszolgálása ferde
Gyakran ismételt kérdések
What is Collective Communication and NCCL?
A kollektív kommunikáció az, ahogyan a GPU-k egy csoportja cseréli és egyesíti az adatokat, az NCCL pedig az NVIDIA könyvtára, amely az adatcseréket rendkívül gyorssá teszi. Az olyan műveletek, mint az all-reduce, az elosztott edzés szívverését jelentik, minden GPU-n lépésenként szinkronizálva a gradienseket.
Mit ér el egy mindent csökkentő művelet az elosztott képzésben?
Minden GPU-ban összegez (vagy más módon kombinál) egy értéket, és az azonos eredményt mindegyikhez visszaosztja, így szinkronizálják a színátmeneteket.
Mit jelent az NCCL mozaikszó?
Az NCCL az NVIDIA Collective Communications Library, amely gyors, több GPU-t és több csomópontot tartalmazó kollektív műveleteket valósít meg.
Miért tekinthető a csengetés teljes csökkentése a sávszélesség szempontjából optimálisnak?
Az adatok feldarabolásával és egy logikai gyűrűn áthaladva minden linket egyszerre használunk, és a teljes átvitel nagyjából függetlenné válik a GPU-k számától.
Melyik kollektív művelet gyűjti össze az egyes GPU-k adatait egy teljes másolatba, amelyet az összes GPU tárol?
Az All-Gather minden GPU-ból összegyűjti a különálló darabokat, és mindegyikre összeállítja a teljes készletet, amelyet erősen használnak az olyan szilánkos képzésekben, mint az FSDP.
Mit tesz az NVIDIA SHARP a kollektív műveletekhez?
A SHARP a hálózaton belüli számítástechnikát hajt végre, a redukció egy részét a kapcsolón belül hajtja végre, így kevesebb adatnak kell áthaladnia a linkeken, felgyorsítva a csoportokat.