Nový GPU kernel skúša zrýchliť LLM pri mierne riedkych váhach
Preprint a sprievodný kód ukazujú, že aj približne 50-percentná nepravidelná riedkosť váh môže na H100 priniesť reálne zrýchlenie inferencie, ak sa tomu prispôsobí formát matice aj CUDA kernel.
Pripravil HERMES. Výber tém pomáha robiť BuloSentinel. Redakčná kontrola: Marek Považský.
- Typ zdroja
- Kurátorovaný súhrn
- Zdroj / autorita
- arXiv
Redakčný kontext
Tému vybral BuloSentinel ako súčasť monitorovania AI ekosystému. Text pripravil HERMES zo zdrojovo ukotvených podkladov a zodpovednú kontrolu pravidiel robí Marek Považský.
Článok je zaradený v sekcii AI výskum a opiera sa o 3 zdroje.
Veľké jazykové modely sa už neoptimalizujú iba tým, že sa zmenší počet parametrov alebo zníži presnosť výpočtov. Nový preprint na arXive s názvom Accelerating GPU Inference of Large Language Models with Moderately Unstructured Sparse Weight Matrices sa zameriava na menej efektný, ale prakticky dôležitý problém: ako využiť riedke váhové matice pri inferencii tak, aby sa na moderných GPU naozaj oplatili. Autori tvrdia, že ich riešenie ako prvé pre mierne nepravidelnú riedkosť prekonáva husté násobenie matíc na GPU s vysokou priepustnosťou pamäte.
Riedkosť v tomto kontexte znamená, že časť hodnôt vo váhových maticiach sa po prerezaní modelu nahradí nulami. Pri LLM je to lákavé, pretože menej nenulových prvkov by malo znamenať menej práce pre čipy a nižšiu cenu inferencie. Problém je, že modely zvyčajne znášajú iba miernu nepravidelnú riedkosť, približne okolo 50 percent. Pri takomto pomere však bežné riedke GPU kernely často nevyhrajú nad optimalizovaným hustým násobením matíc, lebo réžia ukladania indexov, dekódovania a nepravidelných prístupov do pamäte zje očakávaný zisk.
Práca preto nenavrhuje nový model, ale nový spôsob, ako uložiť a počítať už prerezané váhy. Jej trojvrstvový formát kombinuje vrstvu Sparse-TC, ktorá sa snaží zapojiť sparse tensor cores, vrstvu Slot-Filling na kompresiu a lacné dekódovanie na čipe a reziduálnu vrstvu, ktorá zachováva správnosť výpočtu tam, kde sa nepravidelná štruktúra nedá pohodlne napasovať do rýchlejšej cesty. Následný SpMM kernel spája sparse tensor cores a CUDA cores a snaží sa prekrývať prácu na čipe s prístupom do pamäte.
Najdôležitejšie číslo zo zhrnutia je, že autori uvádzajú až 1,64-násobné zrýchlenie na úrovni kernelu oproti SpInfer a až 1,41-násobné koncové zrýchlenie oproti FlashLLM. Benchmarky v sprievodnom repozitári sú zamerané najmä na tvary matíc z modelov ako OPT-30B a OPT-66B a na dávky veľkosti 16 a 32. Merajú sa úrovne riedkosti 50, 60 a 70 percent a porovnania zahŕňajú systémy Sputnik, SparTA, FlashLLM a SpInfer.
Praktický dopad je hlavne infraštruktúrny. Ak sa takéto techniky ukážu stabilné mimo akademických benchmarkov, môžu pomôcť prevádzkovateľom modelov, ktorí už dnes kombinujú kvantizáciu, prerezávanie a špecializované runtime systémy. Nejde o náhradu za vLLM, TensorRT-LLM alebo SGLang, ale o nižšiu vrstvu v zásobníku: kernel a dátový formát, ktoré by sa teoreticky mohli stať súčasťou serverovacej cesty pre modely s prerezanými váhami.
Dôležitá je aj hranica použiteľnosti. Repozitár uvádza ako požiadavku NVIDIA GPU triedy sm_90a, teda H100 alebo H800, CUDA Toolkit 12.6 a CMake. To naznačuje, že výsledok je zatiaľ zameraný na najnovšiu dátacentrovú infraštruktúru, nie na bežné vývojárske karty. Pre firmy, ktoré už platia za H100 clustre, však aj desiatky percent zrýchlenia môžu znamenať citeľnú úsporu, ak sa technika dá nasadiť bez veľkej straty kvality modelu.
Treba tiež rozlišovať medzi zrýchlením výpočtu a celkovou kvalitou služby. Prerezanie váh, ktoré vytvorí riedkosť, musí zachovať presnosť a správanie modelu v konkrétnej úlohe. Samotný kernel rieši iba otázku, či sa s už existujúcou riedkou maticou dá počítať rýchlejšie. Prevádzkovateľ by preto musel merať aj regresie na úlohách, latenciu celého dekódovania, kompatibilitu s dávkovaním požiadaviek a interakciu s kvantizáciou či cache pozornosti.
Zaujímavé je, že práca cieli na miernu nepravidelnú riedkosť, nie na elegantnejšie, ale často prísnejšie štruktúrované schémy. Nepravidelná riedkosť je pre presnosť modelu často priaznivejšia, no pre hardvér nepríjemnejšia. Ak sa podarí znížiť jej réžiu, otvorí sa priestor pre praktickejšie prerezávanie veľkých modelov, pri ktorom sa nemusí tak tvrdo obetovať kvalita výstupov len preto, aby bola štruktúra matíc pohodlná pre čip.
Pre bežných používateľov sa tento typ výskumu neprejaví novým tlačidlom v aplikácii. Môže sa však prejaviť nepriamo: lacnejšími alebo rýchlejšími modelovými endpointmi, väčšou priepustnosťou pri rovnakom počte GPU a menším tlakom na nákup ďalšieho hardvéru. V čase, keď inferencia tvorí čoraz väčšiu časť nákladov na AI, sú podobné nízkoúrovňové optimalizácie rovnako dôležité ako nové modelové skóre na benchmarkoch.
Zatiaľ ide o preprint a výskumný kód, takže výsledky treba brať ako technický signál, nie hotový produkčný štandard. Silnou stránkou je, že autori okrem arXiv textu zverejnili aj repozitár s build a benchmark inštrukciami. Slabšou stránkou je úzky hardvérový profil a potreba overiť výsledky na širšej palete modelov, batchovacích stratégií a reálnych serverovacích stackov. Aj tak však ide o pozoruhodný príklad toho, že cesta k lacnejším LLM nemusí viesť iba cez menšie modely, ale aj cez presnejšie využitie kremíka, ktorý už v dátových centrách beží.
Zdroje