Gamer-grafikkort overtager scenen for computerkraft til kunstig intelligens

6. februar 2018 kl. 05:122
Gamer-grafikkort overtager scenen for computerkraft til kunstig intelligens
Illustration: garloon/Bigstock.
Nvidia leverer grafikkort til millioner af gamere, men kortene er også den foretrukne computerkraft bag neurale netværk over hele verden på grund af sin proprietære API.
Artiklen er ældre end 30 dage
Manglende links i teksten kan sandsynligvis findes i bunden af artiklen.

Nvidia, chip-giganten fra Californien, har udviklet sig til at være meget mere end leverandør af flotte 3D verdener. De har indgået partnerskaber med Uber og Volkswagen om chips til selvkørende biler, og med Nvidia som snurrende hjerner bag neurale netværk verden over, er Nvidia blevet mere end bare grafikkort.

Det skyldes ifølge lektor Sune Darkner fra Datalogisk Institut på Københavns Universitet(DIKU), at Nvidias grafik-API blæser konkurrenterne af banen.

»Nvidia har nærmest monopol på deep learning, fordi deres CUDA API performer bedre end OpenCL,« siger Darkner, der forsker inden for medicinsk billedgenkendelse på DIKU, til Version2.

OpenCL er open-source pendanten til Nvidias proprietære grafik-API, der gør det muligt at køre kode på Nvidia GPU’er. Fordi CUDA er designet specifikt til at køre på Nvidias arkitektur, og fordi det simpelthen bare performer bedre, er Nvidia blevet go-to GPU’en bag neurale netværk ifølge Darkner.

Perfekt til opgaven

Sune Darkner

Machine learning algoritmerne bag neurale netværk har en central egenskab, de deler med rendering af grafik på din skærm. Begge dele kræver massive mængder beregning og optimering.

Artiklen fortsætter efter annoncen

»Gaming har i langt tid drevet udviklingen af grafikkort, men så fandt man ud af at lave beregningerne bag deep learning og neurale netværk om til GPU’er, og så har du pludseligt en lille supercomputer på din desktop, som kan lave de her beregninger,« siger Darkner.

»Auto-differentiering (en måde at løse differentialregning på red.) har fået en enorm renæssance, især til neurale netværk. Det er jo bare en masse små ligninger, hvor man bruger en kæderegl, og selvom det ikke er særligt sjovt at gøre i hånden, kan man med backpropagation på en computer, der regner alle aflæggerne ud, gøre det ret nemt« siger han.

Og ifølge Darkner den slags problemer er en GPU skræddersyet til at løse, fordi den kan lave millioner af beregninger parallelt.

Ny arkitektur viser Nvidias planer

Nvidia er da heller ikke blind for sin førerposition som chip indenfor AI. Det kan man bl.a. se på deres nyeste chip-arkitektur kaldet Volta, som pt. kun anvendes i flagskibs-grafikkortet Tesla V100 og Titan V.

Artiklen fortsætter efter annoncen

Titan V kortet kan købes for 20.000 kr og er beregnet til brug i PC’er, da den kan klikkes i en helt normal PCI-E bus. Tests af kortet viser dog, at det på trods af imponerende performance, ikke giver mærkbar bedre grafik.

»Volta arkitekturen er noget anderledes end sin forgængere. Tests på gaming siderne viser, at den som grafikkort har nogenlunde samme performance som sine forgængere, men den har tilgengæld 5-10 gange så mange flops som den tidligere Geforce (gamer-grafikkort red.) arkitektur,« siger Darkner.

»Der er ingen tvivl om, at Nvidia her har taget et skridt væk fra spilområdet, og mod noget med beregning af data,« siger han.

Det lagde Nvidias direktør heller ikke skjul på, da han annoncerede kortet i december:

»Our vision for Volta was to push the outer limits of high performance computing and AI. We broke new ground with its new processor architecture, instructions, numerical formats, memory architecture and processor links,« sagde direktør Jen-Hsun Huang til en konference.

Nvidia forsvinder ikke foreløbigt

På trods af, at både Google og Intel har annonceret chips målrettet kunstig intelligens, så tror Sune Darkner ikke, at Nvidia er på vej ud. Heller ikke selvom de for nyligt forbød brugen af Geforce forbruger-grafikkortene i datacentre.

»Nvidia er i en førerposition på grund af CUDA, og den vil de beholde, da de fleste AI frameworks, såsom Tensorflow, er bundet op på den, og omkostningerne ved at skrive dem om er for store,« mener han.

Han ser tilgengæld at cloud computing giver mere økonomisk mening for forskere inden for neurale netværk og andre AI-felter. De dyre industri-kort fra Nvidia kan gøre stort indhug i et universitetsbudget, og her mener Darkner det giver mere mening for forskere at leje adgang til en cloud-computer med stor GPU kraft end at købe en dyr maskine selv.

Se også video på Ing.dk om hvorfor man nu bruger grafikkort ved kunstig intelligens.

2 kommentarer.  Hop til debatten
Denne artikel er gratis...

...men det er dyrt at lave god journalistik. Derfor beder vi dig overveje at tegne abonnement på Version2.

Digitaliseringen buldrer derudaf, og it-folkene tegner fremtidens Danmark. Derfor er det vigtigere end nogensinde med et kvalificeret bud på, hvordan it bedst kan være med til at udvikle det danske samfund og erhvervsliv.

Og der har aldrig været mere akut brug for en kritisk vagthund, der råber op, når der tages forkerte it-beslutninger.

Den rolle har Version2 indtaget siden 2006 - og det bliver vi ved med.

Fortsæt din læsning

Debatten
Log ind eller opret en bruger for at deltage i debatten.
settingsDebatindstillinger
2
6. februar 2018 kl. 12:19

Er en GPU karakteriseret ved, at man har øget antallet af parallelt arbejdende kerner, ved at indskrænke den enkelte kernes lineære/sekventielle kapacitet?

Ja. Pointen med en GPU er at sænke frekvensen og bruge strømmen på noget andet, samt at fjerne tung pipelining, OOO-afvikling, og caching, og i stedet bruge transistoterne på beregningsenheder. En høj grad af parallelisme bruges til at udføre latency hiding for at skjule den stadigvæk høje latens ved adgang til hukommelse.

Kan man sammenligne de enkelte kerner i en GPU med en RISC processor?

Nej, de minder mere om spor i en SIMD vektor-enhed. Det er ikke "kerner" som vi forstår dem fra CPUer; f.eks. har de ikke alle deres egen programtæller.

1
6. februar 2018 kl. 12:06

Nedenstående spørgsmål er ikke på nogen måde retoriske, men derimod et udtryk for reel videbegærlighed:

  1. Er en GPU karakteriseret ved, at man har øget antallet af parallelt arbejdende kerner, ved at indskrænke den enkelte kernes lineære/sekventielle kapacitet?

  2. Kan man sammenligne de enkelte kerner i en GPU med en RISC processor?

  3. Som jeg forstår det, så er den enkelte biologiske hjernecelle ikke særlig klog, men lærer over år at reagere på omgivelsernes input?

  4. Jeg kan godt se fordelene ved Parallel Processing

  5. Men