Loaʻa ʻo Vortex 2.0, kahi GPGPU kumu wehe e pili ana i ka hoʻolālā RISC-V

Ua paʻi ʻia ka paʻi ʻelua o ka papahana Vortex, e hoʻomohala ana i kahi GPGPU hāmama e pili ana i ka RISC-V instruction set architecture, i hoʻolālā ʻia e hana i ka hoʻopili like ʻana me ka OpenCL API a me ka SIMT (Single Instruction, Multiple Threads) execution model. Hiki ke hoʻohana ʻia ka papahana e hana i ka noiʻi ma ke kahua o nā kiʻi 3D a hoʻomohala i nā hale kiʻi GPU hou. Hāʻawi ʻia nā papahana, nā wehewehe ʻana o nā poloka lako ma ka ʻōlelo Verilog, simulator, nā mea hoʻokele a me nā palapala hoʻolālā e hui pū ʻia ma lalo o ka laikini Apache 2.0.

ʻO ke kumu o GPGPU he RISC-V ISA maʻamau, i hoʻonui ʻia me kekahi mau ʻōlelo aʻoaʻo e pono ai ke kākoʻo i ka hana GPU a me ka hoʻokele thread. Ma ka manawa like, mālama ʻia nā hoʻololi o ka hoʻonohonoho hoʻonohonoho hoʻonohonoho RISC-V i ka liʻiliʻi loa a, inā hiki, hoʻohana ʻia nā ʻōkuhi vector i loaʻa. Hoʻohana ʻia kahi ala like i ka papahana RV64X, kahi e hoʻomohala ai i kahi GPU hāmama e pili ana i nā ʻenehana RISC-V.

 Loaʻa ʻo Vortex 2.0, kahi GPGPU kumu wehe e pili ana i ka hoʻolālā RISC-V

No nā kiʻi kiʻi e pili ana i nā ʻenehana Vortex, ke kūkulu ʻia nei ka Open GPU Skybox, e kākoʻo ana i ka Vulkan graphics API. ʻO ka Skybox prototype, i hana ʻia ma ke kumu o ka Altera Stratix 10 FPGA a me 32 cores (512 threads), i hiki ke hoʻokō i ka hana piha o 230 gigapixels i kekona (3.7 gigatransactions per second) ma ke alapine o 29.4 MHz. Hoʻomaopopo ʻia ʻo kēia ka GPU wehe mua me ka lako polokalamu a me nā lako lako e kākoʻo ana iā Vulkan.

ʻO nā hiʻohiʻona nui o Vortex:

  • Kākoʻo ʻo 32- a me 64-bit RISC-V i ka hoʻonohonoho hoʻonohonoho hoʻonohonoho ʻana i nā hale hana RV32IMF a me RV64IMAFD.
  • Ka helu o nā cores, nā poloka hana (warps) a me nā kaula.
  • Helu hiki ke hoʻonohonoho ʻia o nā ALU, nā FPU, nā LSU a me nā SFU no kēlā me kēia kumu.
  • ʻO ka laula hoʻopuka paipu hiki ke hoʻololi.
  • Hoʻomanaʻo kaʻana like ʻole a me L1, L2 a me L3 huna.
  • Kākoʻo kikoʻī OpenCL 1.2.
  • Hiki ke hoʻokō ma muli o FPGA Altera Arria 10, Altera Stratix 10, Xilinx Alveo U50, U250, U280 a me Xilinx Versal VCK5000.
  • Nā ʻōlelo aʻo kiʻekiʻe: "tex" e wikiwiki i ka hana ʻana, vx_rast e kāohi i ka rasterization, vx_rop e mālama i nā ʻāpana, hohonu a me ka ʻike, vx_imadd e hana multiply a hoʻohui i nā hana, vx_wspawn, vx_tmc a me vx_bar e hoʻāla i nā ʻaoʻao aʻo a me nā alo nalu , kahi o nā kaula. hana like ʻia e ka SIMD Engine), vx_split a me vx_join.
  • Hoʻokō ʻia ke kākoʻo no ka hōʻike ʻana i waena o nā shaders SPIR-V ma o ka unuhi ʻana iā OpenCL.
  • No ka hoʻomohala noiʻi, hāʻawi ʻia kahi hāmeʻa, me nā ʻano like ʻole o PoCL (compiler and runtime OpenCL), LLVM/Clang, GCC a me Binutils i hoʻololi ʻia no ka hana ʻana me Vortex.
  • Kākoʻo ʻia ka simulation chip me ka hoʻohana ʻana i ka Verilator (Verilog simulator), RTLSIM (RTL simulation) a me SimX (software simulation).

Ma waena o nā loli ma Vortex 2.0:

  • Ua hoʻonui ʻia ka microarchitecture.
  • Hoʻohui ʻia ke kākoʻo no 64-bit RISC-V RV64IMAFD hoʻonohonoho hoʻonohonoho hoʻonohonoho.
  • Hoʻohui i ka hiki ke hoʻokō ma muli o Xilinx FPGA.
  • Hoʻohui i ke kākoʻo no LLVM 16 a me Ubuntu 20.04.
  • Ua hoʻokō ʻia ka refactoring a ua hoʻoponopono ʻia nā hemahema i ʻike ʻia i ka wā o ka loiloi maikaʻi.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka