ืคืจื•ื™ืงื˜ VeriGPU ืžืคืชื— GPU ืคืชื•ื— ื‘ืฉืคืช Verilog

ืคืจื•ื™ืงื˜ VeriGPU ื ื•ืขื“ ืœื™ืฆื•ืจ GPU ืคืชื•ื— ืฉืคื•ืชื— ื‘ืฉืคืช Verilog ืœืชื™ืื•ืจ ื•ืžื™ื“ื•ืœ ืฉืœ ืžืขืจื›ื•ืช ืืœืงื˜ืจื•ื ื™ื•ืช. ื‘ืชื—ื™ืœื”, ื”ืคืจื•ื™ืงื˜ ืžืคื•ืชื— ื‘ืืžืฆืขื•ืช ืกื™ืžื•ืœื˜ื•ืจ Verilog, ืืš ืœืื—ืจ ื”ืฉืœืžืชื• ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ื• ืœื™ื™ืฆื•ืจ ืฉื‘ื‘ื™ื ืืžื™ืชื™ื™ื. ื”ืคื™ืชื•ื—ื™ื ืฉืœ ื”ืคืจื•ื™ืงื˜ ืžื•ืคืฆื™ื ืชื—ืช ืจื™ืฉื™ื•ืŸ MIT.

VeriGPU ืžืžื•ืงื ื›ืžืขื‘ื“ ืกืคืฆื™ืคื™ ืœื™ื™ืฉื•ื (ASIC) ื”ืžื•ืชืื ืœื”ืืฆืช ื—ื™ืฉื•ื‘ื™ื ื”ืงืฉื•ืจื™ื ืœืžืขืจื›ื•ืช ืœืžื™ื“ืช ืžื›ื•ื ื”. ื”ืชื•ื›ื ื™ื•ืช ื›ื•ืœืœื•ืช ืชืื™ืžื•ืช ืœืžืกื’ืจืช PyTorch Deep Machine Learning ื•ื™ื›ื•ืœืช ืœืคืชื— ื™ื™ืฉื•ืžื™ื ืขื‘ื•ืจ VeriGPU ื‘ืืžืฆืขื•ืช ืžืžืฉืง ื”-HIP (Heterogeneous-Compute Interface). ื‘ืขืชื™ื“, ืืคืฉืจ ืœื”ื•ืกื™ืฃ ืชืžื™ื›ื” ืœืžืžืฉืงื™ API ืื—ืจื™ื, ื›ืžื• SYCL ื•-NVIDIA CUDA.

ื”-GPU ืžืชืคืชื— ืžืขืจืš ื”ื”ื•ืจืื•ืช ืฉืœ RISC-V, ืืš ื”ืืจื›ื™ื˜ืงื˜ื•ืจื” ื”ืคื ื™ืžื™ืช ื”ืžืชืงื‘ืœืช ืฉืœ ืขืจื›ืช ื”ื•ืจืื•ืช ื”-GPU ืชื•ืืžืช ื‘ืžื™ื“ื” ื—ืœืฉื” ืœ-RISC-V ISA, ืฉื›ืŸ ื‘ืžืฆื‘ื™ื ืฉื‘ื”ื ืขื™ืฆื•ื‘ ื”-GPU ืื™ื ื• ืžืชืื™ื ืœื™ื™ืฆื•ื’ RISC-V, ื”ื•ื ืœื ื ื•ืขื“ ืœืฉืžื•ืจ ืขืœ ืชืื™ืžื•ืช RISC-V. ื”ืคื™ืชื•ื— ืžืชืžืงื“ ื‘ื™ื›ื•ืœื•ืช ื”ื ื“ืจืฉื•ืช ืœืžืขืจื›ื•ืช ืœืžื™ื“ืช ืžื›ื•ื ื”, ื›ืš ืฉื›ื“ื™ ืœืฆืžืฆื ืืช ื”ื’ื•ื“ืœ ื•ื”ืžื•ืจื›ื‘ื•ืช ืฉืœ ืžื˜ืจื™ืฆืช ื”ืฉื‘ื‘, ื”ื•ื ืžืฉืชืžืฉ ืจืง ื‘ืคื•ืจืžื˜ ื”ื ืงื•ื“ื” ื”ืฆืคื” BF16 ื•ืจืง ื‘ืคืขื•ืœื•ืช ื”ื ืงื•ื“ื” ื”ืฆืคื” ื”ื ื“ืจืฉื•ืช ืœืœืžื™ื“ืช ืžื›ื•ื ื”, ื›ื’ื•ืŸ exp, log, tanh ื•-sqrt, ื–ืžื™ื ื™ื.

ื‘ื™ืŸ ื”ืจื›ื™ื‘ื™ื ืฉื›ื‘ืจ ื–ืžื™ื ื™ื ื”ื ื‘ืงืจ ื”-GPU, APU (ื™ื—ื™ื“ืช ืขื™ื‘ื•ื“ ืžื•ืืฆืช) ืœืคืขื•ืœื•ืช ืฉืœ ืžืกืคืจื™ื ืฉืœืžื™ื ("+",,"-","/,","*"), ื•ื™ื—ื™ื“ื” ืœืคืขื•ืœื•ืช ื ืงื•ื“ื” ืฆืคื” ("+", "*") ื•ื‘ืœื•ืง ืžืกื•ืขืฃ. ื›ื“ื™ ืœื™ืฆื•ืจ ื™ื™ืฉื•ืžื™ื, ื”ื•ื ืžืฆื™ืข ืืกืžื‘ืœืจ ื•ืชืžื™ื›ื” ืœื”ื™ื“ื•ืจ ืงื•ื“ C++ ื”ืžื‘ื•ืกืก ืขืœ LLVM. ื‘ื™ืŸ ื”ื™ื›ื•ืœื•ืช ื”ืžืชื•ื›ื ื ื•ืช, ืžื•ื“ื’ืฉื•ืช ื‘ื™ืฆื•ืข ืžืงื‘ื™ืœ ืฉืœ ื”ื•ืจืื•ืช, ืฉืžื™ืจื” ื‘ืžื˜ืžื•ืŸ ืฉืœ ื ืชื•ื ื™ื ื•ื–ื™ื›ืจื•ืŸ ื”ื•ืจืื•ืช ื•ืคืขื•ืœื•ืช SIMT (Single instruction multiple thread).

ืคืจื•ื™ืงื˜ VeriGPU ืžืคืชื— GPU ืคืชื•ื— ื‘ืฉืคืช Verilog


ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”