Një grup kërkuesish nga Instituti Teknologjik i Gjeorgjisë po zhvillon një projekt kërkimor Vortex, që ofron GPGPU të hapur të bazuar në arkitekturën e grupit të instruksioneve RISC-V, i orientuar për të kryer llogaritje paralele duke përdorur API-në OpenCL dhe modelin e ekzekutimit SIMT (Instruksion i Vetëm, Shumë Thread-e), dhe gjithashtu për të kryer kërkime në grafikën 3D dhe zhvillimin e arkitekturave të reja të GPU-ve. Projekti ndodhet ende në etapën e prototipit, duke punuar me FPGA. Schemat, përshkrimet e blloqeve të harduerit në gjuhën Verilog, simulatori, driverat dhe dokumentacioni i shoqërueshëm i projektit shpërndahen nën licencën BSD.
Në formën aktuale ofrohet një ISA tipike RISC-V, e zgjeruar me disa instruksione shtesë të nevojshme për mbështetje të funksioneve të GPU dhe menaxhimin e threads. Gjatë zhvillimit, autorët e projektit tentuan të minimizojnë ndryshimet në arkitekturën e grupit të instruksioneve RISC-V, duke përdorur sa më shumë instruksione vektoriale që tashmë ekzistojnë. Një qasje e ngjashme aplikohet gjithashtu në projektin RV64X, i cili gjithashtu zhvillon një GPU të hapur të bazuar në teknologjitë RISC-V.

MundĂ«sitĂ« e Vortex pĂ«r pĂ«rpunimin e grafikĂ«s janĂ« pĂ«r momentin tĂ« kufizuara. ĂshtĂ« deklaruar mbĂ«shtetje pĂ«r OpenGL ES mbi Vortex, por nĂ« vetĂ« GPU-ja aktualisht Ă«shtĂ« implementuar vetĂ«m instruksioni «tex» pĂ«r tĂ« aceleruar trajtimin e teksturave, i cili realizohet nĂ« nivelin e fragment shenuesit. Rasterizatori i integruar mungon - tĂ« gjitha operacionet gjeometrike trajtohen nga CPU e sistemit, ndĂ«rsa primitivĂ«t bazĂ« pĂ«r pikat, linjat dhe trekĂ«ndĂ«shat, si dhe trajtimi i fragmenteve, thellĂ«sisĂ« dhe transparencĂ«s, realizohen duke pĂ«rdorur bĂ«rthamen OpenCL.

Në të ardhmen planifikohet që të implementohen zgjerime specifike për përpunimin e grafikës ISA, të shtohet mbështetje për API-të CUDA dhe Vulkan, si dhe zgjerime për të acceleruar sistemet e mësimit të makinave dhe analizës së të dhënave. Për zhvillimin e aplikacioneve ofrohet një mjet përfshirës, që përfshin variante të adaptuara për punë me Vortex si PoCL (kompilatori dhe runtime i OpenCL), LLVM/Clang, GCC dhe Binutils. Mbështetet simulimi i punës së çipit duke përdorur Verilator (simulator Verilog) dhe SimX (simulimi softuerik).

Karakteristikat kryesore të Vortex:
- Mbështetje për arkitekturën e grupit të komandave RISC-V RV32IMF.
- Zgjerimi i çipit deri në 64 bërthama me caches opsionale L2 dhe L3.
- Ădo bĂ«rthamĂ« mund tĂ« ekzekutojĂ« 1024 rrjedha dhe tĂ« funksionojĂ« me frekuencĂ« 250 MHz.
- Kapaciteti maksimal i llogaritjes është vlerësuar në 128 Gflops, ndërsa kapaciteti i memorie është 16 GB/s. Një realizim 32-bërthamësh që funksionon me frekuencë 200 MHz, mbi bazën e FPGA Altera Stratix 10, tregoi performancë prej 25.6 GFlops.
- Mbështetje për standardin OpenCL 1.2.
- Mundësia për realizim mbi bazën e FPGA Intel Arria 10 dhe Intel Stratix 10.
Burimi: opennet.ru
