Odborná definícia
Odborná definícia
Tensor parallelism rozdeľuje výpočet jednej vrstvy a jej parametre medzi viac akcelerátorov, typicky delením matíc po riadkoch alebo stĺpcoch. Každé zariadenie spracuje iba časť násobenia, po ktorej nasleduje kolektívna komunikácia na zostavenie výsledku. Umožňuje prevádzkovať model, ktorého vrstvy sa nezmestia na jeden čip, no pridáva synchronizáciu a závisí od rýchlej prepojovacej siete. Líši sa od data parallelismu, kde každé zariadenie drží kópiu modelu. Plán delenia sa optimalizuje spolu s veľkosťou siete, sekvenciou a topológiou prepojenia medzi zariadeniami.
Zrozumiteľné vysvetlenie
Zrozumiteľné vysvetlenie
Ak je jedna obrovská matica príliš veľká pre jednu GPU, možno ju rozrezať na niekoľko častí. Každá GPU vypočíta svoj diel a zariadenia si následne vymenia čiastočné výsledky. Výpočet jednej vrstvy teda prebieha spoločne, nie na samostatných kópiách modelu. Výhodou je väčšia dostupná pamäť pre parametre. Nevýhodou je komunikácia pri takmer každej vrstve. Ak je spojenie medzi GPU pomalé, čas ušetrený paralelným násobením sa môže stratiť pri prenose dát. Najlepšia konfigurácia na jednom serveri nemusí fungovať rovnako pri komunikácii medzi viacerými uzlami.
Časté otázky
Časté otázky
Ako sa tensor parallelism líši od pipeline parallelismu?
Tensor parallelism delí jednotlivú operáciu alebo vrstvu medzi zariadenia. Pipeline parallelism rozdeľuje po sebe idúce skupiny vrstiev a posúva medzi nimi mikro-dávky.
Čo je row-wise a column-wise delenie?
Pri column-wise rozdelení drží zariadenie vybrané stĺpce váh a vytvára časť výstupných prvkov. Row-wise rozdelenie delí vstupný rozmer a vyžaduje sčítanie čiastkových výsledkov.
Kedy tensor parallelism neprinesie zrýchlenie?
Pri malom modeli, pomalej interconnect sieti, malých dávkach alebo nevhodnom rozdelení. Komunikačný čas môže prevýšiť úsporu lokálneho výpočtu.
Dá sa kombinovať s data parallelismom?
Áno. Skupina zariadení môže spoločne držať jednu kópiu modelu tensorovým paralelizmom a viac takýchto skupín spracúva odlišné dávky dát.
Čo treba uložiť v checkpoint-e?
Okrem parametrov aj schému shardovania, verziu architektúry, optimizer state a pravidlá zostavenia. Pri zmene počtu zariadení môže byť potrebné checkpoint preusporiadať.
Súvisiace pojmy
Súvisiace pojmy
Zdroje a redakčná stopa
Zdroje a redakčná stopa
- PyTorch Tensor Parallelism documentation Efficient Large-Scale Language Model Training on GPU Clusters
Definícia je autorská odborná syntéza. Pri právnych a regulačných rozhodnutiach má prednosť aktuálne oficiálne znenie predpisu a posúdenie konkrétneho prípadu.
