Vortex - адкрыты GPGPU на базе архітэктуры RISC-V, сумяшчальны з OpenCL

Група даследчыкаў з Тэхналагічнага інстытута Джорджыі развівае даследчы праект Vortex, які прапануе адкрыты GPGPU на базе архітэктуры набору каманд RISC-V, накіраваны на выкананне паралельных вылічэнняў з выкарыстаннем API OpenCL і мадэлі выканання SIMT (Single Instruction, Multiple Threads), а таксама на правядзенне даследаванняў у галіне 3D-графікі. Праект пакуль знаходзіцца на стадыі прататыпа, які працуе пры дапамозе FPGA. Схемы, апісанні апаратных блокаў на мове Verilog, сімулятар, драйверы і спадарожная праектная дакументацыя распаўсюджваюцца пад ліцэнзіяй BSD.

У бягучым выглядзе падаецца тыпавы ISA RISC-V, пашыраны некаторымі дадатковымі інструкцыямі, неабходнымі для падтрымкі функцый GPU і кіраванні струменямі. Пры распрацоўцы аўтары праекта паспрабавалі звесці да мінімуму змены ў архітэктуры набору каманд RISC-V, па магчымасці выкарыстоўваючы ўжо наяўныя вектарныя інструкцыі. Падобны падыход таксама прымяняецца ў праекце RV64X, які таксама развівае адкрыты GPU на базе тэхналогій RISC-V.

Vortex – адкрыты GPGPU на базе архітэктуры RISC-V, сумяшчальны з OpenCL

Магчымасці Vortex па апрацоўцы графікі пакуль абмежаваныя. Заяўлена аб рэалізацыі падтрымкі OpenGL ES на базе Vortex, але ў самім GPU пакуль рэалізавана толькі інструкцыя "tex" для паскарэння апрацоўкі тэкстур, якая выконваецца на ўзроўні фрагментнага шэйдара. Убудаваны растэрызатар адсутнічае - усё апрацоўка геаметрычных аперацый выконваецца на баку сістэмнага CPU, а базавыя прымітывы для кропак, ліній і трыкутнікаў, а таксама апрацоўка фрагментаў, глыбіні і празрыстасці, рэалізаваная з выкарыстаннем ядра OpenCL.

Vortex – адкрыты GPGPU на базе архітэктуры RISC-V, сумяшчальны з OpenCL

У будучыні плануецца рэалізаваць спецыфічныя для апрацоўкі графікі пашырэння ISA, дадаць падтрымку API CUDA і Vulkan, а таксама пашырэнні для паскарэння сістэм машыннага навучання і аналізу даных. Для распрацоўкі прыкладанняў прапануецца інструментар, які ўключае адаптаваныя для працы з Vortex варыянты PoCL (кампілятар і runtime OpenCL), LLVM/Clang, GCC і Binutils. Падтрымліваецца сімуляцыя працы чыпа з выкарыстаннем Verilator (Verilog-сімулятар) і SimX (праграмная сімуляцыя).

Vortex – адкрыты GPGPU на базе архітэктуры RISC-V, сумяшчальны з OpenCL

Асноўныя асаблівасці Vortex:

  • Падтрымка архітэктуры набора каманд RISC-V RV32IMF.
  • Маштабаванне чыпа да 64 ядраў з апцыянальнымі кэшамі L2 і L3.
  • Кожнае ядро ​​можа выконваць 1024 плыняў і працаваць з частатой 250 MHz.
  • Максімальная вылічальная магутнасць ацэньваецца ў 128 Gflops, а прапускная здольнасць памяці 16 GB/s. 32-ядзерная рэалізацыя, якая працуе з частатой 200 Mhz, на базе FPGA Altera Stratix 10 паказала прадукцыйнасць у 25.6/XNUMX GFlops.
  • Падтрымка стандарту OpenCL 1.2.
  • Магчымасць рэалізацыі на базе FPGA Intel Arria 10 і Intel Stratix 10.

Крыніца: opennet.ru

Купіць надзейны хостынг для сайтаў з абаронай ад DDoS, VPS VDS серверы 🔥 Купіць надзейны хостынг для сайтаў з абаронай ад DDoS, VPS VDS серверы | ProHoster