Vortex, projekts, kas izstrādā GPGPU, pamatojoties uz RISC-V

Vortex, uz RISC-V balstīta GPGPU

RISC-V ir arhitektūra, kas ir ieguvusi lielu popularitāti Pēdējos gados tas pateicoties tā atvērtā koda (ISA) dizainam un tam, piebilstot, ka tā ir kļuvusi par vienu no vissvarīgākajām procesoru arhitektūrām, pateicoties tās elastībai un modularitātei.

Pateicoties tam Ir uzsākti dažādi projekti, kuru pamatā ir RISC-V un viens no tiem ir Vortex, par kuru mēs šodien runāsim šeit emuārā.

Kas ir Vortex projekts?

Virpulis es projekts, kas izstrādā GPGPU, pamatojoties uz RISC-V arhitektūru. Projekts ir paredzēts paralēlās skaitļošanas veikšanai, izmantojot OpenCL API un SIMT izpildes modeli.

Vortex GPGPU kodols ir vispārējs RISC-V, kurā ir ieviesti uzlabojumi ar dažiem papildu norādījumiem nepieciešams, lai atbalstītu GPU funkcionalitāti un pavedienu vadību. Tajā pašā laikā izmaiņas RISC-V instrukciju kopas arhitektūrā tiek samazinātas līdz minimumam un, kad vien iespējams, tiek izmantotas esošās vektora instrukcijas. Līdzīga pieeja tiek izmantota projektā RV64X, kas arī izstrādā atvērtu GPU, kura pamatā ir RISC-V tehnoloģijas.

Vēl viena iezīme Vortex ir tas GPGPU ir uzlabotas instrukcijas, kuru vidū ir: »tex», lai paātrinātu tekstūras apstrādi, «vx_rast», lai kontrolētu rastrizāciju, «vx_rop», lai apstrādātu fragmentus, dziļumu un caurspīdīgumu, «vx_imadd», lai veiktu reizināšanas un saskaitīšanas darbības, «vx_wspawn» , "vx_tmc" un "vx_bar", lai aktivizētu instrukciju malas un viļņu frontes (pavedienu kopa, ko paralēli izpilda SIMD dzinējs), "vx_split" un "vx_join".

No cVortex galvenās iezīmes, kas izceļas atrodami šādi:

  •  Atbalsts 32 bitu un 64 bitu RISC-V instrukciju kopas arhitektūrām: RV32IMF un RV64IMAFD.
  • Konfigurējamība: konfigurējams kodolu, uzdevumu bloku (velku) un pavedienu skaits.
  • Apstrādes bloks: konfigurējams ALU, FPU, LSU un SFU skaits vienam kodolam.
  • Izejas platums: regulējams caurules izplūdes platums.
  • Atmiņa: papildu koplietojamā atmiņa un L1, L2 un L3 kešatmiņa.
  • OpenCL 1.2 specifikāciju atbalsts.
  • Uz FPGA balstīta ieviešana: iespēja ieviest Altera Arria 10, Altera Stratix 10, Xilinx Alveo U50, U250, U280 un Xilinx Versal VCK5000 FPGA.
  • SPIR-V atbalsts: ieviests, tulkojot uz OpenCL.
    Izstrādes rīki: rīku kopa, kas ietver PoCL (OpenCL kompilatora un izpildlaika), LLVM/Clang, GCC un Binutils variantus, kas pielāgoti darbam ar Vortex.
  • Mikroshēmu simulācija: tiek atbalstīta, izmantojot Verilator (Verilog simulators), RTLSIM (RTL simulācija) un SimX (programmatūras simulācija).
    Skybox GPU

Bez tam, grafikai, kuras pamatā ir Vortex tehnoloģijas, tiek izstrādāts Skybox GPU atvērt, kas atbalsta Vulkan grafikas API. Tiek minēts, ka Skybox prototips ir izveidots uz Altera Stratix 10 FPGA bāzes un ietver 32 kodolus (512 pavedienus) ar frekvenci 230 MHz Jāpiebilst, ka šis ir pirmais atvērtais GPU ar programmatūras un aparatūras ieviešanu ar Vulkānu

Ir vērts to pieminēt Pašlaik Vortex projekts ir tā versijā 2.1, kas nesen tika izlaists un ir ieviestas svarīgas izmaiņas, piemēram: atmiņas apvienošanas atbalsts (kas tagad tiek atbalstīts), CSR instrukciju apstrāde ir optimizēta, pārslodze ir optimizēta, jauna būvējuma konfigurācijas skripts, cita starpā:

  • Kodola API ir pievienotabandinieku_uzdevumu grupas lai palaistu kodolus, kas izmanto lokālo atmiņu un barjeras
  • Jauns izpildlaika paplašinājums pārvietojamiem kodola binārajiem failiem un argumentiem.
  • Jauni izpildlaika atmiņas API papildinājumi: vx_mem_reserve, vx_mem_access, vx_mem_address
  • jauna izpildlaika API vx_check_ocupancy
  • Pievienota GPU draivera opcija, lai izmēģinātu OpenCL testus vietējā GPU (piem. blackbox.sh –driver=gpu –app=sgemm)
  • Pievienoti OpenCL testi, kas tiek izmantoti ar lokālo atmiņu (psum, sgemm2, sgemm3)
  • Pievienotas pielāgotas vortex libc un librt bibliotēkas ar vadības diverģences instrumentiem.

Ja vēlaties uzzināt vairāk par to, jums jāzina, ka shēmas, aparatūras bloku apraksti Verilog valodā, simulators, draiveri un pavadošā projekta dokumentācija tiek izplatīti saskaņā ar Apache 2.0 licenci. Jūs varat pārbaudīt sīkāku informāciju šī saite.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: AB Internet Networks 2008 SL
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.