Vortex, projekt, ktorý vyvíja GPGPU založenú na RISC-V

Vortex, GPGPU na báze RISC-V

RISC-V je architektúra, ktorá si získala veľkú popularitu V posledných rokoch je to vďaka svojmu open source (ISA) dizajnu a to a dodáva, že sa stal jednou z najdôležitejších procesorových architektúr vďaka svojej flexibilite a modularite.

Vďaka tomu Boli spustené rôzne projekty založené na RISC-V a jedným z nich je Vortex, o ktorom si dnes povieme tu na blogu.

Čo je projekt Vortex?

Vír es projekt, ktorý vyvíja GPGPU, založené na architektúre RISC-V. Projekt je navrhnutý na vykonávanie paralelných výpočtov pomocou OpenCL API a vykonávacieho modelu SIMT.

Jadrom Vortex GPGPU je generický RISC-V, na ktorom boli implementované vylepšenia s niekoľkými dodatočnými pokynmi potrebné na podporu funkčnosti GPU a riadenia vlákien. Zároveň sú zmeny v architektúre inštrukčnej sady RISC-V obmedzené na minimum a vždy, keď je to možné, sa používajú existujúce vektorové inštrukcie. Podobný prístup je použitý v projekte RV64X, ktorý tiež vyvíja otvorený GPU založený na technológiách RISC-V.

Ďalšia vlastnosť Vortex je GPGPU má pokročilé pokyny, medzi ktoré patria: »tex» na urýchlenie spracovania textúry, «vx_rast» na riadenie rasterizácie, «vx_rop» na spracovanie fragmentov, hĺbky a priehľadnosti, «vx_imadd» na vykonávanie operácií násobenia a sčítania, «vx_wspawn» , "vx_tmc" a "vx_bar" na aktiváciu okrajov inštrukcií a vlnových plôch (súbor vlákien vykonávaných paralelne modulom SIMD), "vx_split" a "vx_join".

Z cVortex hlavné funkcie, ktoré vynikajú nachádzajú sa tieto:

  •  Podpora pre 32-bitové a 64-bitové architektúry inštrukčných sád RISC-V: RV32IMF a RV64IMAFD.
  • Konfigurovateľnosť: Konfigurovateľný počet jadier, blokov úloh (warps) a vlákien.
  • Procesná jednotka: Konfigurovateľný počet ALU, FPU, LSU a SFU na jadro.
  • Šírka výstupu: Nastaviteľná šírka výstupu potrubia.
  • Pamäť: Voliteľná zdieľaná pamäť a vyrovnávacie pamäte L1, L2 a L3.
  • Podpora špecifikácie OpenCL 1.2.
  • Implementácia na báze FPGA: Možnosť implementácie na FPGA Altera Arria 10, Altera Stratix 10, Xilinx Alveo U50, U250, U280 a Xilinx Versal VCK5000.
  • Podpora SPIR-V: Implementované prostredníctvom prekladu do OpenCL.
    Vývojové nástroje: Sada nástrojov, ktorá obsahuje varianty PoCL (kompilátor OpenCL a runtime), LLVM/Clang, GCC a Binutils prispôsobené na prácu s Vortexom.
  • Chip Simulation: Podporované pomocou Verilator (Simulátor Verilog), RTLSIM (Simulácia RTL) a SimX (Simulácia softvéru).
    GPU Skybox

Okrem toho, pre grafiku založenú na technológiách Vortex sa vyvíja GPU Skybox otvorený, ktorý podporuje grafické rozhranie API Vulkan. Spomína sa, že prototyp Skyboxu je vytvorený na báze Altera Stratix 10 FPGA a obsahuje 32 jadier (512 vlákien) na frekvencii 230 MHz. Treba poznamenať, že ide o prvé otvorené GPU so softvérovou a hardvérovou implementáciou kompatibilnou s Vulkanom

Za zmienku stojí to V súčasnosti je projekt Vortex vo verzii 2.1, ktorý bol nedávno vydaný a boli implementované dôležité zmeny, ako napríklad: podpora zlučovania pamäte (ktorá je teraz podporovaná), optimalizované spracovanie inštrukcií CSR, optimalizované preťaženie, nový konfiguračný skript zostavenia, okrem iného:

  • Pridané rozhranie API jadraskupiny úloh_pešiaka na spustenie jadier, ktoré využívajú lokálnu pamäť a bariéry
  • Nové rozšírenie runtime pre premiestniteľné binárne súbory jadra a argumenty.
  • Nové pridané rozhranie API pamäte runtime: vx_mem_reserve, vx_mem_access, vx_mem_address
  • nové runtime API vx_check_occcupancy
  • Pridaná možnosť ovládača GPU na vyskúšanie testov OpenCL na lokálnom GPU (napr. blackbox.sh –driver=gpu –app=sgemm)
  • Pridané testy OpenCL, ktoré sa používajú s lokálnou pamäťou (psum, sgemm2, sgemm3)
  • Pridané vlastné vortexové knižnice libc a librt s riadením divergencie.

Ak máte záujem dozvedieť sa o ňom viac, mali by ste vedieť, že schémy, popisy hardvérových blokov v jazyku Verilog, simulátor, ovládače a sprievodná projektová dokumentácia sú distribuované pod licenciou Apache 2.0. Podrobnosti si môžete skontrolovať v nasledujúci odkaz.


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Za údaje zodpovedá: AB Internet Networks 2008 SL
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.