Ny Nvidia-teknologi lader grafikkort forbinde direkte til SSD’er

Nvidia, IBM og forskere forsøger at gøre træning af AI-modeller markant hurtigere end i dag ved at lade grafikkort forbinde direkte til SSD’er – noget der i dag går gennem CPU’en.

Ny Nvidia-teknologi lader grafikkort forbinde direkte til SSD’er

Når AI-algoritmer trænes, bliver enorme mængder af data bearbejdet af både CPU (processor) og GPU (grafikprocessor). I nogle typer af beregningsopgaver kan CPU’en dog være en flaskehals og dermed begrænse, hvor hurtigt algoritmer til eksempelvis maskinlæring kan trænes gennem fodring af store mængder data.

Læs også: Alt om hardware – hvilke slags computerhardware findes der?

Forbinder GPU direkte med SSD uden om CPU

Det problem har chipdesigneren Nvidia og it-giganten IBM sat sig for at løse sammen med et hold af forskere fra Cornell University. I en videnskabelig artikel har de udviklet en ny arkitektur kaldet BaM eller Big accelerator Memory. Det er et forsøg på at mindske grafikkorts afhængighed af processoren, når det kommer til at opnå hurtig adgang til data på SSD-lagerenheder.

“Målet med BaM er at udvide GPU-hukommelseskapaciteten og forbedre den effektive båndbredde for adgang til lagring, samtidig med at der leveres abstraktioner på højt niveau for GPU-tråde, så de nemt kan foretage on-demand, finkornet adgang til massive datastrukturer i det udvidede lagerhierarki,” lyder det i den videnskabelige artikel.

CPU’er egner sig fint til at styre adgangen til en computers lagerenheder (typisk SSD’er) ved visse datatunge regneopgaver. Det gælder blandt andet træning af neurale netværk, hvor datamønstre er foruddefinerede, hvorved CPU’en er i stand til at opdele dataene på SSD’erne i grovkornede stykker og koordinere adgangen til lagerenheder og dataoverførsler.

Læs også: UltraRAM skal samle RAM og harddisk i samme komponent

Sammenligning af den traditionelle CPU-centrerede tilgang til adgang til lagring (a) med den GPU-centrerede BaM-tilgang (b), og hvordan GPU’en vil blive fysisk forbundet til lagerenhederne (c).

Sådan fungerer BaM-arkitekturen

Men visse former for beregninger egner sig bedst til ikke at blive håndteret af CPU’en, lyder det. I disse tilfælde sikrer BaM, at traditionelle CPU-opgaver sendes direkte fra hukommelse (RAM) til GPU’en, uden at CPU’en involveres.

Helt konkret består BaM-arkitekturen af to hovedkomponenter: en softwarestyret cache af GPU-hukommelse og et softwarebibliotek til GPU-tråde til at anmode om data direkte fra NVMe SSD’er ved at tale direkte til drevene.

Arbejdet med at flytte oplysninger mellem SSD og GPU håndteres af tråde på GPU-kernerne ved hjælp af RDMA- og PCIe-grænseflader og en Linux-kerne, der gør det muligt for SSD’er at læse og skrive direkte i GPU-hukommelsen, når det er nødvendigt. Kommandoer til drevene sættes i kø af GPU-trådene, hvis de ønskede data ikke er i den softwarestyrede cache.

Denne form for arkitektur gør det muligt hurtigt at kunne afvikle algoritmer direkte på GPU’en og på en måde, som er optimeret til de datamønstre, der gør sig gældende for visse typer af algoritmer.

Vil gøre software og hardware open-source

Holdet af udviklere planlægger at gøre både software og hardware open-source, så andre kan begge egne systemer efter samme principper. Selv har Nvidia og IBM anvendt ganske almindelige grafikkort og NVMe SSD’er, som alle og enhver kan købe. Andre bør dermed være i stand til at kunne opnå lignende fordele til visse former for datatunge beregninger.

Læs også: Nyheder om hardware