Vortex — GPU GPGPU open source basato sull'architettura RISC-V, compatibile con OpenCL

Un gruppo di ricercatori del Georgia Institute of Technology sta sviluppando il progetto di ricerca Vortex, che propone un GPGPU aperto basato sull'architettura del set di istruzioni RISC-V, mirato all'esecuzione di calcoli paralleli utilizzando l'API OpenCL e il modello di esecuzione SIMT (Single Instruction, Multiple Threads), oltre a condurre ricerche nel campo della grafica 3D e nello sviluppo di nuove architetture GPU. Il progetto è attualmente in fase prototipale, funzionante tramite FPGA. Gli schemi, le descrizioni dei blocchi hardware in linguaggio Verilog, il simulatore, i driver e la documentazione di progetto pertinente sono distribuiti con licenza BSD.

Nella sua forma attuale, viene fornita un'ISA standard RISC-V, ampliata con alcune istruzioni aggiuntive necessarie per supportare le funzionalità della GPU e la gestione dei thread. Nello sviluppo, gli autori del progetto hanno cercato di ridurre al minimo le modifiche all'architettura del set di istruzioni RISC-V, utilizzando se possibile le istruzioni vettoriali già esistenti. Un approccio simile è applicato anche nel progetto RV64X, che sviluppa anch'esso una GPU aperta basata sulle tecnologie RISC-V.

Vortex - GPGPU open source basato sull'architettura RISC-V, compatibile con OpenCL

Le capacità grafiche di Vortex sono ancora limitate. È stata dichiarata l’implementazione del supporto per OpenGL ES basato su Vortex, ma nel GPU è stata implementata solo l'istruzione «tex» per accelerare l'elaborazione delle texture, che viene eseguita a livello dello shader di frammento. Non è presente un rasterizzatore integrato: tutte le operazioni geometriche vengono eseguite dalla CPU del sistema, mentre i primitivi di base per punti, linee e triangoli, così come l'elaborazione dei frammenti, della profondità e della trasparenza, sono realizzati utilizzando un core OpenCL.

Vortex - GPGPU open source basato sull'architettura RISC-V, compatibile con OpenCL

In futuro si prevede di implementare estensioni ISA specifiche per l'elaborazione grafica, aggiungere supporto per le API CUDA e Vulkan, nonché estensioni per accelerare i sistemi di machine learning e analisi dei dati. Per lo sviluppo delle applicazioni è disponibile un toolkit che include versioni adattate per lavorare con Vortex di PoCL (compilatore e runtime OpenCL), LLVM/Clang, GCC e Binutils. È supportata la simulazione del funzionamento del chip utilizzando Verilator (simulatore Verilog) e SimX (simulazione software).

Vortex - GPGPU open source basato sull'architettura RISC-V, compatibile con OpenCL

Caratteristiche principali di Vortex:

  • Supporto per l'architettura del set di istruzioni RISC-V RV32IMF.
  • Scalabilità del chip fino a 64 core con cache L2 e L3 opzionali.
  • Ogni core può eseguire 1024 thread e operare a una frequenza di 250 MHz.
  • La potenza di calcolo massima è stimata in 128 Gflops, con una larghezza di banda di memoria di 16 GB/s. La realizzazione a 32 core, funzionante a una frequenza di 200 Mhz, basata su FPGA Altera Stratix 10 ha mostrato prestazioni di 25.6 GFlops.
  • Supporto per lo standard OpenCL 1.2.
  • Possibilità di implementazione su FPGA Intel Arria 10 e Intel Stratix 10.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster