Grupp teadlasi Georgia Tehnoloogiainstituudist arendab uurimisprojekti Vortex, mis pakub avatud GPGPU RISC-V käskude arlekttuuril, eesmärgiga sooritada paralleelset arvutust OpenCL API ja SIMT (Single Instruction, Multiple Threads) täitmisrežiimi abil, samuti teostada teadusuuringute 3D-graafika valdkonnas ja arendada uusi GPU arhitektuure. Projekt on praegu prototüübi staadiumis, mis töötab FPGA abil. Schemat, riistvarablokke Verilog keeles, simulaatorit, draivereid ja projekti dokumentatsiooni levitatakse BSD litsentsi alusel.
Praegusel kujul pakutakse RISC-V tüüpilist ISA-d, millele on lisatud mõned täiendavad käsklused, mis on vajalikud GPU funktsioonide toetamiseks ja voogude haldamiseks. Arendamisel on projekti autorid püüdnud minimeerida muudatusi RISC-V käskude arhitektuuris, kasutades võimalikult palju juba olemasolevaid vektorite käske. Sarnast lähenemist rakendatakse ka RV64X projekti puhul, mis arendab avatud GPU RISC-V tehnoloogiate alusel.

Vortex'i graafikaprotsessimise võimalused on hetkel piiratud. On teateid OpenGL ES toe rakendamisest Vortex'i põhjal, kuid ise GPU-s on praegu teostatud ainult 'tex' käsk, mis kiirendab tekstuuride töötlemist fragmentide šeideri tasemel. Sise rasterisaator puudub — kõik geomeetriliste operatsioonide töötlemine toimub süsteemi CPU poolel, samas kui põhiprimeedid punktide, joonte ja kolmnurkade jaoks ning fragmendi, sügavuse ja läbipaistvuse töötlemine on teostatud OpenCL tuuma abil.

Tulevikus on plaanis rakendada graafikaprotsessimise jaoks spetsifiiline ISA laiendus, lisada CUDA ja Vulkan API tugi ning samuti laiendused masinõppe ja andmete analüüsi kiirusõpetamiseks. Rakenduste arendamiseks pakutakse tööriistu, sealhulgas Vortex'iga tööks kohandatud PoCL variandid (OpenCL kompilaator ja tööaeg), LLVM/Clang, GCC ja Binutils. Toetatakse kiibi töö simuleerimist Verilator (Verilog simulaator) ja SimX (tarkvara simuleerimine) abil.

Vortexi peamised omadused:
- RISC-V RV32IMF käskude arhitektuuri tugi.
- Kiibi skaleerimine kuni 64 tuumani koos valikuliste L2 ja L3 vahemäludega.
- Iga tuuma saab töödelda 1024 lõime ja töötada sagedusel 250 MHz.
- Maksimaalne arvutusvõimsus on hinnanguliselt 128 Gflops ja mälu läbivus 16 GB/s. 32 tuumaga teostus, mis töötab sagedusel 200 Mhz, Altera Stratix 10 FPGA baasil, näitas 25,6 GFlops sooritust.
- Toetab standardit OpenCL 1.2.
- Võimalus teostada Intel Arria 10 ja Intel Stratix 10 FPGA baasil.
Allikas: opennet.ru
