Hardvér, ktorý dnes píše vety a rozpoznáva nádory, vďačí za časť svojej kariéry staršiemu problému: vykresliť obrovské množstvo pixelov skôr, než si hráč všimne, že scenéria dorazila neskoro.
GPU sa stali ústrednou súčasťou modernej AI, pretože neurónové siete obsahujú obrovské množstvo matematických operácií, ktoré možno rozdeliť a vykonávať paralelne. Grafika si vyžadovala rovnakú všeobecnú schopnosť. Softvér potom premenil špecializovaný obrazový procesor na programovateľný engine pre matice, modely a dáta.
Najprv prišli pixely
Moderná hra opakovane spracúva geometriu, textúry, osvetlenie, farby a tiene naprieč miliónmi pixelov. Veľkú časť tejto práce možno rozdeliť na množstvo podobných výpočtov. Namiesto toho, aby sme požiadali jedného mimoriadne schopného pracovníka namaľovať obrazovku zľava doprava, grafický hardvér usporiada obrovskú dielňu a zamestná naraz množstvo menších pracovníkov.
CPU je navrhnutý inak. Jeho menší počet výkonných a flexibilných jadier zvláda prácu operačného systému, logiku aplikácií, rozhodovanie vo vetvách a úlohy, pri ktorých ďalší krok závisí od výsledku predchádzajúceho. Ani jedna architektúra nie je univerzálne lepšia. V súdnej sieni aj v továrni na sušienky pracujú ľudia; neznamená to však, že potrebujú rovnaký plán obsadenia.
Potom sa pixely zmenili na tenzory
Neurónové siete opakovane kombinujú veľké polia čísel, aplikujú operácie a posielajú výsledky cez mnoho vrstiev. Tréning upravuje model; inferencia ho používa. Základná práca môže byť mimoriadne sofistikovaná, no veľkú časť náročnej aritmetiky možno stále rozdeliť medzi paralelný procesor.
CPU dokáže tieto výpočty vykonávať. Výhoda GPU sa prejaví vtedy, keď úloha obsahuje dostatok vhodnej práce na vyťaženie jeho paralelných zdrojov. Súvislosť je takáto:
- grafika zahŕňa súvisiace výpočty rozložené medzi pixely, geometriu a vzorky;
- AI zahŕňa súvisiace výpočty rozložené medzi váhy modelu, aktivácie a dáta;
- GPU je skonštruované na presúvanie veľkej paralelnej pracovnej záťaže cez systém.
Zmena kariéry prebehla v štyroch dejstvách
- Grafický hardvér s pevnou funkciou: prvé GPU urýchľovali špecializovanú prácu potrebnú na vykresľovanie obrazov a 3D scén.
- Programovateľné shadery a všeobecné výpočty: hardvér sa stal dostatočne flexibilným na vyjadrenie širších paralelných problémov vývojármi.
- Praktické softvérové platformy: systémy ako CUDA a ROCm poskytli programovacie modely, kompilátory, knižnice a nástroje.
- Hlboké učenie vo veľkom meradle: výskum vrátane AlexNetu z roku 2012 ukázal, ako môže GPU computing umožniť praktický tréning veľkej siete na rozpoznávanie obrazov.
Cyklus sa potom sám posilňoval. Viac výskumníkov používalo GPU computing; softvér sa zlepšoval; návrhári čipov pridávali funkcie pre operácie strojového učenia; väčšie pracovné záťaže sa stávali praktickými; dopyt financoval ďalšiu generáciu hardvéru.
Softvér je dôvod, prečo sa rýchly čip stal užitočným
Surová paralelná aritmetika nie je použiteľný ekosystém. Vývojári potrebujú kompilátory, runtime prostredia, profilery a akcelerované knižnice; výskumníci potrebujú frameworky, ktoré dokážu vyjadriť model bez ručného písania každej nízkoúrovňovej operácie.
Programovacia príručka CUDA od spoločnosti NVIDIA opisuje jej programovací model a platformu vykonávania. Dokumentácia ROCm od spoločnosti AMD pokrýva zodpovedajúci otvorený softvérový zásobník pre podporovaný hardvér AMD. Podpora frameworkov je dôvodom, prečo môžu mať dve teoreticky schopné GPU veľmi odlišnú praktickú hodnotu pre jednu aplikáciu.
VRAM je priestor, v ktorom sa práca vykonáva
Model a jeho dočasné pracovné dáta sa musia zmestiť do dostupnej pamäte. V závislosti od úlohy to zahŕňa váhy, prompty, obrázky, dávky a medzivýsledky. GPU môže byť teoreticky dostatočne rýchle, no napriek tomu nemusí pracovnú záťaž spustiť, pretože ju nie je kam umiestniť.
To vytvára zvláštnosť pri použiteľnom hardvéri: staršia profesionálna karta s väčšou pamäťou môže zostať užitočná pre model, ktorý sa nezmestí na novšiu a rýchlejšiu hernú kartu. Platí to aj naopak. Ak zamýšľaný softvér využíva málo pamäte a ťaží z novších výpočtových funkcií, kupovať kapacitu, ktorej sa nikdy nedotkne, je drahý spôsob obdivovania špecifikácie.
Dôležitá je aj pamäťová priepustnosť. Tisíce paralelných pracovníkov nie sú produktívne, keď sa k nim dáta dostávajú cez poštovú schránku.
Potrebuje každá úloha AI GPU?
Nie. Malé modely môžu bežať na CPU. Telefóny a novšie počítače čoraz častejšie obsahujú NPU navrhnuté na efektívne vykonávanie podporovaných neurónových operácií. Veľkí prevádzkovatelia tiež vytvárajú účelové akcelerátory, ako sú Tensor Processing Units od spoločnosti Google.
GPU zostáva dôležité, pretože kombinuje vysoký paralelný výkon, programovateľnosť, lokálnu pamäť a vyspelé nástroje. Táto kombinácia vyhovuje mnohým úlohám, neznamená však, že je správnou odpoveďou na každú úlohu obsahujúcu písmená A a I.
Herné GPU dokáže spúšťať AI - keď s tým softvér súhlasí
Vhodné herné karty zvládnu lokálne generovanie obrazov, prepis, zvyšovanie rozlíšenia a menšie jazykové modely. Overte si konkrétnu aplikáciu, nie všeobecné tvrdenie „pripravené na AI“:
- Je GPU a operačný systém podporovaný?
- Koľko VRAM potrebuje vybraný model a dávka?
- Ktoré číselné formáty a akceleračné cesty sú dostupné?
- Dokáže napájací zdroj, skrinka a chladenie podporovať kartu?
- Oplatí sa očakávaná rýchlosť skutočne kupovať kvôli nej hardvér?
Praktický príklad: prepis rozhovoru
Predstavte si, že chcete záznamy premeniť na text bez ich nahrávania na internet. Vyberáte si aplikáciu na prepis, veľkosť modelu, prijateľnú presnosť a čas spracovania - nie jednoducho „AI grafickú kartu“. Úložisko Whisper uvádza približné požiadavky na pamäť pre svoje veľkosti modelov, ktoré sú východiskovým bodom pre túto implementáciu, nie univerzálnym prísľubom pre každú aplikáciu postavenú na nej.
Väčší model môže potrebovať viac pamäte. Menší môže byť dostatočne presný a dokončiť prácu skôr. Ak CPU zvládne občasný záznam spracovať ešte predtým, než ho potrebujete, nové GPU by vyriešilo problém s plánovaním, ktorý neexistuje.
Užitočná historická náhoda
Prvý grafický hardvér nebol navrhnutý s ohľadom na moderné jazykové modely. Stal sa užitočným preto, že architektúra vytvorená na vykresľovanie pixelov vyhovovala aj veľkej časti paralelnej matematiky stojacej za neurónovými sieťami. Programovateľný softvér otvoril túto náhodnú vhodnosť vedcom a vývojárom; desaťročia dopytu po grafike naďalej zlepšovali túto techniku.
GPU nenaštartovali rozmach AI iba preto, že boli rýchle. Boli paralelné, programovateľné a obklopené softvérom schopným premeniť túto štruktúru na užitočnú prácu.
Pozrite si GPU pre AI a strojové učenie, s ktorými pracuje GPUsed, prečítajte si čo robí NPU alebo porovnajte kapacitu VRAM a jej limity. Ak ide o nákup, začnite pracovnou záťažou, nie najväčším názvom modelu.