Vortex – GPGPU open source basato su architettura RISC-V, compatibile con OpenCL

Un gruppo di ricercatori del Georgia Institute of Technology sta sviluppando il progetto di ricerca Vortex, che offre un GPGPU open source 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 dello sviluppo di nuove architetture GPU. Attualmente, il progetto è in fase prototipale e funziona tramite FPGA. Gli schemi, le descrizioni dei blocchi hardware in Verilog, il simulatore, i driver e la documentazione di progetto associata sono distribuiti sotto licenza BSD.

Nella sua forma attuale, viene fornito un ISA standard RISC-V, ampliato con alcune istruzioni aggiuntive necessarie per supportare le funzioni GPU e la gestione dei thread. Durante lo sviluppo, gli autori del progetto hanno cercato di ridurre al minimo le modifiche all'architettura del set di istruzioni RISC-V, utilizzando, dove possibile, istruzioni vettoriali già esistenti. Un approccio simile viene utilizzato anche nel progetto RV64X, che sviluppa anch'esso una GPU open source basata sulle tecnologie RISC-V.

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

Le capacità di elaborazione grafica di Vortex sono attualmente limitate. È stata annunciata la supporto per OpenGL ES basato su Vortex, ma nel GPU è attualmente implementata solo l'istruzione «tex» per accelerare l'elaborazione delle texture, che viene eseguita a livello di shader di frammento. Il rasterizzatore integrato è assente: tutte le operazioni geometriche vengono eseguite dal CPU di 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 il kernel OpenCL.

Vortex - GPGPU open source basato su 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, oltre a estensioni per l'accelerazione dei sistemi di apprendimento automatico e analisi dati. Per lo sviluppo di applicazioni è disponibile un toolkit, che include varianti di PoCL adattate per lavorare con Vortex (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 su 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 funzionare a una frequenza di 250 MHz.
  • La massima capacità computazionale è stimata in 128 Gflop, con una larghezza di banda della memoria di 16 GB/s. L'implementazione a 32 core, operante a 200 MHz, basata su FPGA Altera Stratix 10, ha mostrato prestazioni di 25,6 GFlop.
  • Supporto per lo standard OpenCL 1.2.
  • Possibilità di implementazione basata 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