Most recent comments
Liveblogg nyttårsaften 2017
Tor, 11 months, 3 weeks
Jogging og blogging
Are, 1 year, 11 months
Liveblogg nyttårsaften 2016
Are, 1 year, 11 months
Reading in dark times
Are, 2 years, 1 month
Moldejazz 2016
Camilla, 2 years, 4 months
Dørskilt
Karoline, 2 years, 5 months
Halifax
Tor, 2 years, 6 months
Sony Smartwatch 3 review
Tor, 2 years, 6 months
Numerikk, takk
Tor, 2 years, 6 months
Topp tur
Camilla, 2 years, 8 months
50 book challenge
Camilla, 11 months, 3 weeks
Ten years ago
Musikklinjas julekonsert 2008
Camilla
Controls
Register

GPU-programmering

Jeg var på et foredrag om GPU-programmering i regi av EPCC i dag. Digresjon:

EPCC pleide å stå for «Edinburgh Parallel Computing Centre», men så endret de det, så nå er EPCC bare navnet, uten at det står for noe som helst. Frekt? De har forøvrig det meget snappy slagordet «unparalleled computing».

Men jo, GPU-programmering. GPU-programmering er et triks som går ut på at man bruker grafikk-prosessorer, eller GPUer, til å gjøre generelle beregninger. En GPU er nemlig laget spesielt for å kunne gjøre mange ting på en gang, noe som er essensielt når man skal regne ut hvordan ting flytter seg i for eksempel et spill. Dette kan man åpenbart dra nytte av hvis man har et problem der det er mulig å gjøre mange ting på en gang.

La oss ta en kikk på noen tall. Det sinteste grafikkortet til NVIDIA, GeForce GTX 590, har to 512-kjerners prosessorer. Det er altså 1024 prosessorkjerner. Og det tar ikke mer plass en et litt stort grafikkort, så hvis du har et godt nok hovedkort (og en god nok strømforsyning), er det ingenting i veien for å putte flere av dem i maskinen din. Til sammenligning har laptopen min 2 prosessorkjerner, og de argeste maskinenene man får kjøpt for en ikke vannvittig mengde penger har kanskje 24.

Ved første øyekast ser det altså ut til at man kan få koden sin til å gå mellom 50 og 1000 ganger fortere ved å bytte til en GPU, litt avhengig av hva du hadde fra før. Dessverre er sannheten, som den så ofte er, litt mindre spennende. Etter å ha vært på et par foredrag og et tre-timers kurs om denslags har jeg innsett at for ekte problemer er det mye mer realistisk å forvente noe slikt som 5 til 10 ganger raskere kode, hvis du er villig til å legge ned masse arbeid i optimering. Likevel, jeg synes dette virker spennende, og det er ikke utenkelig at jeg kunne komme til å begynne å sysle litt med slikt i fremtiden. Det er faktisk ikke utenkelig at man ikke kommer unna å sysle litt med slikt i fremtiden. Allerede nå er 3 av de fire raskeste superdatamaskinene i verden basert på GPUer, og neste år kommer antagelig alle fire til å være det, så det er bare å forberede seg. GPUer kommer snart, til et datasenter nær deg.

Neste gang: Tor anmelder CUDA Fortran

-Tor Nordam
Category
Technology
Tags
GPU
CUDA
NVIDIA
GeForce GTX 590
EPCC
Views
2091
Google hits
6
Last google search
gpu programmering