Notebookcheck Logo

I ricercatori abilitano il supporto delle app Nvidia CUDA su RISC-V GPGPU

Questa è la prima volta che il codice ottimizzato per CUDA viene eseguito su hardware non-Nvidia.
Questa è la prima volta che il codice ottimizzato per CUDA viene eseguito su hardware non-Nvidia.
I ricercatori statunitensi e sudcoreani RISC-V sono riusciti a rendere il codice CUDA di Nvidia compatibile con l'hardware non-Nvidia. È un bel risultato considerando che AMD e Intel non hanno ancora perseguito una tale soluzione. La Vortex GPGPU basata su RISC-V traduce essenzialmente il codice CUDA in istruzioni OpenCL attraverso la libreria RISC-V

Nvidia ha introdotto per la prima volta il supporto di CUDA (Compute Unified Device Architecture) per le sue GPU nel 2007, permettendo alle schede grafiche di funzionare come una potente CPU o una GPU general purpose (GPGPU) ed eseguire istruzioni di calcolo. Da allora, Nvidia ha iniziato ad aggiungere piccoli core abilitati a CUDA a tutte le sue GPU, e CUDA si è evoluto in una complessa piattaforma di calcolo parallelo / API che può alimentare anche i più veloci supercomputer del mondo. È una soluzione proprietaria, quindi non funziona con AMD o Intel GPU. Tuttavia, questo non ha fermato i ricercatori dal cercare di portare la piattaforma su una GPGPU basata su RISC-V, e sembra che CUDA possa essere adattato per funzionare su hardware non proprietario, dopo tutto.

RISC-V è emerso come una delle migliori alternative per le soluzioni di ARM da quando Nvidia ha avviato l'acquisizione di ARM. Come prima architettura di set di istruzioni open-source / senza licenza, RISC-V può anche essere programmato per funzionare come alternativa all'architettura x86 su pC desktop / laptope Intel sta già pianificando una collaborazione RISC-V per i futuri processori di mobilità. I ricercatori degli Stati Uniti e della Corea del Sud hanno recentemente fatto uso della sintassi facile da capire e della vasta personalizzazione dell'ISA RISC-V per abilitare il supporto CUDA su un progetto GPGPU chiamato Vortex. L'hardware RISC-V usato in questo caso si basa sull'ISA RV32IMF, che permette ai core a 32 bit di scalare da progetti GPU a 1 core a 32 core. Vortex supporta già OpenCL 1.2 proprio come GPGPU di AMDma i ricercatori hanno voluto dimostrare che può anche supportare CUDA in una certa misura.

Per eseguire il codice ottimizzato per CUDA, i ricercatori lo riformulano nel formato di rappresentazione intermedia (IR) NVVM che è basato sull'open-source LLVM IR. Questo a sua volta viene ulteriormente convertito in Standard Portable IR (SPIR-V), che viene poi tradotto attraverso l'implementazione POCL (portable OpenCL) che include la libreria RISC-V. Vortex esegue infine il codice ottimizzato per CUDA come istruzioni OpenCL.

Vortex attualmente supporta la maggior parte delle applicazioni CUDA, ma i ricercatori specificano che ci sono alcune applicazioni che utilizzano la memoria texture o le funzioni matematiche, che non sono ancora supportate. Non è ancora chiaro quanto sia veloce la traduzione da CUDA a OpenCL.

 

Acquista il SiFive HiFive1 Rev B RISC-V SoC e la scheda dev su Amazon

(Fonte: carta Vortex)
(Fonte: carta Vortex)
Please share our article, every link counts!
> Recensioni e prove di notebook, tablets e smartphones > News > Newsarchive 2021 09 > I ricercatori abilitano il supporto delle app Nvidia CUDA su RISC-V GPGPU
Bogdan Solca, 2021-09- 9 (Update: 2021-09- 9)