Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
16
Shadery.ZaawansowaneprogramowaniewGLSL
CPU
ALU
SPI
ALU
SPI
ALU
SPI
ALU
SPI
GPU
ALU
6terowanLeprzepływem
ALU
instrukcji
ALU
ALU
Rysunek2.1.żnicawsposobierozsyłaniaiwykonywaniainstrukcjiprogramumiędzy
CPUiGPU.NaCPUkażdajednostkaobliczeniowamożeprzetwarzaćosobnyfragment
programu,natomiastnaGPUgrupajednostekwykonujewtymsamymczasietensam
fragmentkodu
procesorystawiasięnarówniwkwestiimożliwościwykonywaniaobliczeńogól-
negoprzeznaczenia.MowatuoczywiścieoGPGPU(ang.General-Purposecom-
putingonGraphicsProcessingUnits).Procesorygraczne,jeszczekilkalattemu
byłystosowanejedyniedoprzetwarzaniaobrazówirenderowaniagraki3D,co
byłodośćwąskimobszaremwykorzystaniatakpotężnejmocyobliczeniowej,kry-
jącejsięwtaklicznymzbiorzerdzeni.Dzisiajotwartośćtychukładówpodkątem
programistycznegodostępudozasobówjestzaskakująca,podobniejakmnogość
narzędzi,któreułatwiajątendostęp.WymienićtumożnaOpenCL,CUDA,Direct
Computeczyrównieżshaderobliczeniowy,któryjestczęściąstandarduOpenGL
iopisanybędziewdalszejczęścitejksiążki.Równieżprzekształceniezwrotne
(ang.transformfeedback)możnawpewnymsensiezaliczyćdotejgrupy.
2.2.2.JednostkiwykonawczeGPU
Jeszczeprzedwprowadzeniemshaderageometrii,wczasachOpenGL2orazDi-
rectX9,procesorygrakimiałyosobnejednostkidoprzetwarzaniawierzchołków
ipikseli.ArchitektonicznietrudnobyłorozwiązaćwGPUproblemzrównoważo-
negodoboruliczbytakichjednostek,gdyżjednaaplikacjamogłakłaśćwiększy
nacisknaprzetwarzaniegeometriiainnanaprzetwarzaniepikseli.Równieżdla
jednejaplikacjiichobciążeniemogłobyćzmiennewczasie,wzależnościod
aktualnierenderowanejsceny.Ponadto,programowalnypotokgracznyjestobec-
niezłożonyzsześciuetapówitrudnosobiewyobrazić,abykażdyznichmiał
dedykowanągrupęjednostekwewnątrzGPU,przetwarzającychkodtylkojednego
rodzajushadera.DzisiajarchitekturaGPUjestdużobardziejelastyczna,gdyżjest
złożonazjednostekpotraącychwykonywaćkodprogramukażdegozshaderów.
Wsamychprogramachujednoliconazostałapulainstrukcji(ang.ISAInstruction
SetArchitecture),dziękiczemukażdyzetapówdysponujepodobnymimożliwo-
ściami,np.operacjasamplowaniatekstur,którabyławcześniejzarezerwowana
wyłączniedlashaderafragmentów,jestdostępnawkażdymznich.Topodej-
ściearchitektonicznenazwanoujednoliconymmodelemshaderów(ang.unied