Santrauka
Šiuolaikinėje kompiuterijoje terminai CPU (Centrinis procesorius) ir GPU (Grafinis procesorius) dažnai minimi kartu, tačiau jų funkcijos skiriasi iš esmės. Jei CPU veikia kaip universalus kompiuterio „smegenų centras“, atsakingas už logiką ir valdymą, tai GPU yra specializuota „darbo jėga“, skirta lygiagrečiam duomenų apdorojimui. Šis straipsnis nagrinėja fundamentalius architektūrinius skirtumus tarp šių komponentų ir paaiškina, kodėl būtent vaizdo plokštės tapo pagrindiniu varikliu dirbtinio intelekto ir mašininio mokymosi eroje.
I. Įvadas: du silicio milžinai
Technologijų pasaulyje, kuriame dominuoja realistiški vaizdo žaidimai ir generatyvinis dirbtinis intelektas (DI), CPU ir GPU santykis yra kritinis. Nors abu komponentai yra puslaidininkiai, atliekantis matematinius skaičiavimus, jų inžinerinė filosofija yra diametraliai priešinga. Norint suprasti, kodėl aukščiausios klasės vaizdo plokštės šiandien kainuoja tūkstančius eurų ir yra graibstomos duomenų centrų, būtina pažvelgti giliau nei tik į taktinį dažnį ar atminties kiekį.
II. CPU: nuoseklusis mąstytojas ir valdytojas
Centrinis procesorius (CPU) yra kompiuterio operacijų orkestratorius. Jo architektūra sukurta taip, kad būtų kuo universalesnė. Pagrindinė CPU užduotis – vykdyti sudėtingas instrukcijų sekas, valdyti operacinę sistemą ir koordinuoti kitų komponentų (atminties, diskų, įvesties įrenginių) darbą.
Inžineriniu požiūriu, CPU orientuojasi į mažą delsą (low latency). Jis sukurtas taip, kad kuo greičiau atliktų vieną užduotį ir pereitų prie kitos. Įsivaizduokite CPU kaip „Formulės-1“ bolidą: jis neįtikėtinai greitas ir manevringas, puikiai tinka greitai pervežti vieną keleivį (duomenų paketą) iš taško A į tašką B. Šiuolaikiniai procesoriai (pvz., „Intel Core“ ar „AMD Ryzen“) paprastai turi nuo $4$ iki $64$ galingų branduolių, kurie geba vykdyti sudėtingas logines operacijas ir greitai perjunginėti kontekstą.
[Image of CPU vs GPU architecture diagram]III. GPU: lygiagrečioji jėga
Grafinis procesorius (GPU) veikia visiškai kitu principu. Jo tikslas – ne individualus greitis, o didžiulis pralaidumas (high throughput). GPU sudaro tūkstančiai mažesnių, paprastesnių branduolių, kurie skirti dirbti kartu.
Tęsiant transporto analogiją, jei CPU yra lenktyninis bolidas, tai GPU yra krovininis traukinys arba laivas. Jis juda lėčiau ir nėra toks manevringas, tačiau vienu kartu gali pervežti tūkstančius tonų krovinio. Kompiuterinėje grafikoje tai būtina: ekranas sudarytas iš milijonų pikselių, ir kiekvieno jų spalvą bei apšvietimą reikia apskaičiuoti vienu metu. GPU architektūra (pvz., NVIDIA „Ampere“ ar „Blackwell“) leidžia vykdyti tūkstančius lygiagrečių gijų (threads) vienu metu.
III.1. Esminiai architektūriniai skirtumai
Norint techniškai atskirti šiuos komponentus, verta išskirti tris pagrindinius aspektus:
- Branduolių struktūra: CPU turi nedaug, bet labai sudėtingų branduolių su didele spartinančiąja atmintine (cache), skirta numatyti ir vykdyti šakotas instrukcijas. GPU turi tūkstančius (pvz., $>16\,000$ šiuolaikiniuose modeliuose) paprastų aritmetinių loginių vienetų (ALU).
- Instrukcijų tipas: CPU puikiai tvarkosi su MIMD (Multiple Instruction, Multiple Data) užduotimis – skirtingi branduoliai daro skirtingus dalykus. GPU veikia SIMD (Single Instruction, Multiple Data) principu – ta pati komanda taikoma dideliam duomenų masyvui vienu metu.
- Paskirtis: CPU atsakingas už nuoseklų programų kodą ir sąlygines operacijas („if-else“). GPU dominuoja ten, kur reikia atlikti daug pasikartojančių matematinių veiksmų (vektorių ir matricų daugyba).
IV. Nuo žaidimų iki dirbtinio intelekto revoliucijos
Ilgą laiką GPU buvo laikomi tik žaidimų industrijos ir vaizdo redagavimo įrankiu. Lūžis įvyko apie 2007 metus, kai NVIDIA pristatė CUDA architektūrą, leidusią programuotojams tiesiogiai kreiptis į GPU branduolius ne tik grafikos, bet ir bendrųjų skaičiavimų tikslais (GPGPU).
Mokslininkai netrukus pastebėjo, kad neuroninių tinklų mokymas ir giluminis mokymasis (Deep Learning) matematiškai yra labai panašūs į 3D grafikos generavimą. Abiem atvejais atliekamos didžiulės matricų daugybos operacijos. CPU, bandydamas nuosekliai apdoroti šiuos duomenis, užtrunka savaites, tuo tarpu GPU, naudodamas lygiagretųjį skaičiavimą, tas pačias užduotis atlieka per valandas ar minutes.
Būtent ši savybė pavertė GPU šiuolaikinės DI revoliucijos (pvz., „ChatGPT“ ar „Midjourney“ modelių) pagrindu. Duomenų centruose CPU dabar dažnai atlieka tik „eismo reguliuotojo“ vaidmenį, perduodamas duomenis į GPU klasterius, kur vyksta tikrasis skaičiavimo darbas.
V. Išvada: partnerystė, ne konkurencija
Nors GPU vaidmuo tampa vis svarbesnis, CPU niekur nedingsta. Jie nėra konkurentai – jie yra simbiotiniai partneriai. Jokia galinga vaizdo plokštė negali veikti be centrinio procesoriaus, kuris inicijuoja procesus, valdo duomenų srautus ir užtikrina sistemos stabilumą. Ateities kompiuterija remiasi heterogenine architektūra, kurioje CPU valdo logiką, o GPU – „žaliąją“ skaičiavimo galią.
VI. Literatūra ir šaltiniai
- Hennessy, J. L., & Patterson, D. A. (2017). Computer Architecture: A Quantitative Approach. Morgan Kaufmann.
- NVIDIA. (2024). CUDA ir lygiagrečiojo skaičiavimo pagrindai. NVIDIA Developer Zone.
- Intel Corporation. (2024). CPU vs. GPU: Architecture and Applications Explained.
- Elektronika.lt. (2023). Kompiuterių architektūros tendencijos ir GPU svarba duomenų centruose.
- TechRadar Pro. (2024). The evolution of GPU computing in the era of AI.
