Ang proyekto ng VeriGPU ay bumuo ng isang bukas na GPU sa wikang Verilog

Ang proyekto ng VeriGPU ay naglalayong lumikha ng isang bukas na GPU na binuo sa paglalarawan ng mga electronic system ng Verilog at wika ng pagmomodelo. Sa una, ang proyekto ay binuo gamit ang Verilog simulator, ngunit pagkatapos dalhin ito sa pagiging handa, maaari itong magamit upang makagawa ng mga tunay na chips. Ang mga pagpapaunlad ng proyekto ay ipinamamahagi sa ilalim ng lisensya ng MIT.

Ang VeriGPU ay nakaposisyon bilang Application Specific Processing Unit (ASIC) na naka-optimize para mapabilis ang mga pag-compute na nauugnay sa mga machine learning system. Binabanggit ng mga plano ang pagbibigay ng compatibility sa PyTorch deep machine learning framework at ang posibilidad ng pagbuo ng mga application para sa VeriGPU gamit ang HIP (Heterogeneous-Compute Interface) API. Sa hinaharap, ang pagdaragdag ng suporta para sa iba pang mga API, gaya ng SYCL at NVIDIA CUDA, ay hindi ibinukod.

Nag-evolve ang GPU batay sa set ng pagtuturo ng RISC-V, ngunit ang resultang panloob na arkitektura ng set ng pagtuturo ng GPU ay hindi tugma sa RISC-V ISA, dahil sa mga sitwasyon kung saan ang disenyo ng GPU ay hindi umaangkop sa representasyon ng RISC-V , ang gawain ng pagpapanatili ng pagiging tugma sa RISC-V ay hindi nakatakda. . Ang pag-unlad ay nakatuon sa mga kakayahan na kailangan para sa mga sistema ng pag-aaral ng makina, samakatuwid, upang mabawasan ang laki at pagiging kumplikado ng chip matrix, tanging ang BF16 na floating point na format ang ginagamit, at tanging ang mga pagpapatakbo ng floating point na hinihiling para sa pag-aaral ng makina, tulad ng exp, log, tanh at sqrt, ay magagamit.

Sa mga available nang component, ang GPU controller, APU (Accelerated Processing Unit) para sa mga integer operations (β€œ+”, β€œ-β€œ, β€œ/”, β€œ*”), block para sa floating point operations (β€œ+”, β€œ*” ) at isang sumasanga na yunit. Upang lumikha ng mga application, isang assembler at suporta para sa pag-compile ng C++ code batay sa LLVM ay inaalok. Sa mga nakaplanong feature, parallel execution ng instructions, caching ng data at instruction memory, SIMT operations (Single instruction multiple thread) stand out.

Ang proyekto ng VeriGPU ay bumuo ng isang bukas na GPU sa wikang Verilog


Pinagmulan: opennet.ru

Magdagdag ng komento