Ang Vortex 3.0, usa ka open source GPGPU base sa RISC-V nga arkitektura, gimantala

Ang proyektong Vortex 3.0, nga nagpalambo og open-source nga GPGPU base sa arkitektura sa RISC-V instruction set ug gidisenyo alang sa parallel computing gamit ang OpenCL API ug ang SIMT (Single Instruction, Multiple Threads) execution model, anaa na karon. Ang proyekto magamit usab alang sa panukiduki sa 3D graphics ug sa pagpalambo sa bag-ong mga arkitektura sa GPU. Ang mga eskematiko, mga paghulagway sa hardware block sa Verilog, simulator, mga drayber, ug kaubang dokumentasyon sa disenyo giapod-apod ubos sa lisensya sa Apache 2.0.

Ang GPGPU gibase sa standard nga RISC-V ISA, nga gipalapdan uban ang dugang nga mga instruksyon aron suportahan ang mga bahin sa GPU ug pagdumala sa thread. Ang mga pagbag-o sa arkitektura sa set sa instruksyon sa RISC-V gipadayon sa minimum, ug ang kasamtangan nga mga instruksyon sa vector gigamit kung mahimo. Ang dugang nga mga instruksyon naglakip sa: "tex" alang sa pagpadali sa pagproseso sa texture; vx_rast alang sa pagkontrol sa rasterization; vx_rop alang sa pagproseso sa fragment, depth, ug transparency; vx_imadd alang sa mga operasyon sa multiply-and-add; vx_wspawn, vx_split, vx_join, vx_tmc, ug vx_bar alang sa pag-aktibo sa mga grupo sa mga thread (wavefronts) nga gipatuman nga parallel sa SIMD Engine.

Ang GPGPU nga gipalambo nagsuporta sa 32- ug 64-bit nga RISC-V RV32IMF ug RV64IMAFD nga mga arkitektura sa instruction set ug mahimong maglakip sa opsyonal nga shared memory, L1, L2, ug L3 caches, ug usa ka ma-configure nga gidaghanon sa mga core, warps, ug threads. Ang matag core mahimo usab nga maglakip sa usa ka ma-configure nga gidaghanon sa mga ALU, FPU, LSU, ug SFU. Ang Xilinx ug Altera FPGAs magamit alang sa prototyping, ug ang Verilator (Verilog simulator), RTLSIM (RTL simulation), ug SimX (software simulation) magamit alang sa chip simulation.

Para sa pagpalambo sa aplikasyon, gitanyag ang usa ka toolkit, lakip ang mga bersyon sa PoCL (OpenCL compiler ug runtime) nga gi-adapt sa Vortex, LLVM/Clang, GCC, ug Binutils. Gisuportahan sa proyekto ang OpenCL 1.2 specification ug nagpatuman sa suporta para sa SPIR-V intermediate representation sa mga shader pinaagi sa paghubad ngadto sa OpenCL.

Ang mga pagbag-o sa Vortex 3.0 naglakip sa:

  • Usa ka hardware graphics stack ang gidugang, lakip ang mga bloke para sa rasterization, texture mapping, ug output merging (OM). Usa ka Vulkan driver, ang vortexpipe, ang naugmad para sa Mesa base sa gipatuman nga graphics stack ug sa lavapipe software rasterizer.
  • Ang mga kapabilidad sa Tensor Core, nga gidisenyo aron mapadali ang pagpatuman sa mga modelo sa machine learning, gipalapdan, nga nagpatuman sa suporta alang sa structured sparsity alang sa pag-compress sa mga weight matrices.
  • Ang operasyon sa WGMMA (warpgroup-level matrix multiplication) gipatuman na para sa matrix multiplication sa asynchronous mode.
  • Gidugang ang DXA (Data Transfer Acceleration) engine aron mapadali ang pagbalhin sa datos gikan sa global ngadto sa local memory.
  • Usa ka bag-ong arkitektura ang gipatuman base sa usa ka command processor (CP) ug usa ka hardware scheduler sa mga computing core (KMU - Kernel Management Unit), nga nagtugot sa pagpadala sa mga computing thread ngadto sa chip side.
  • Usa ka bag-ong runtime library ang gisugyot nga mo-operate sa non-blocking mode ug mohatag og mga abstraction nga mahubad ngadto sa asynchronously executed hardware commands. Gisuportahan ang mga pila, events, modules, ug synchronization nga gibase sa asynchronous barriers nga adunay arrive/wait/event semantics.
  • Gidugang ang suporta para sa RISC-V Shortened Instructions (RVC).
  • Gipatuman na ang suporta sa hardware para sa mga operasyong atomiko (Hardware Atomics).
  • Ang FPU hingpit nga gidesinyo pag-usab ug gipaila ang bag-ong mga bloke sa multiplier (Wallace-tree, Folded-radix) ug adder (Kogge-Stone).
  • Gidugang ang usa ka virtual memory stack nga gibase sa memory management unit (MMU) nga adunay suporta alang sa 32-bit SV32 virtual addressing architecture.
  • Suporta para sa RISC-V Zicond extension uban sa pagpatuman sa conditional operations.
  • Nahiusang ganghaan sa orasan.
  • Ang suporta para sa HIP (Heterogeneous Interface for Portability) nga pinulongan gipatuman pinaagi sa chipStar framework, nga naghubad sa HIP ngadto sa SPIR-V.
  • Nahatag na ang bug-os nga integrasyon sa GEM5 simulator, ug nadugang na ang suporta para sa SimX simulator sa TLM (Transaction-Level Modeling) architecture.
  • Gidugang ang suporta para sa Synopsys ug Yosys toolkits para sa logic synthesis para sa chip manufacturing, ingon man ang suporta para sa paggamit sa ASAP7 (7nm), SAED14 (14nm), ug NanGate (15nm) standard element libraries.
  • Ang reference toolchain gi-update na ngadto sa LLVM 20 ug POCL 7.0.

Source: opennet.ru

Pagpalit kasaligan nga pag-host alang sa mga site nga adunay proteksyon sa DDoS, mga server sa VPS VDS 🔥 Pagpalit og kasaligang website hosting nga adunay proteksyon sa DDoS, VPS VDS servers | ProHoster