Projekt VeriGPU razvija otvoreni GPU u jeziku Verilog

Projekt VeriGPU usmjeren je na stvaranje otvorenog GPU-a razvijenog u jeziku Verilog za opisivanje i modeliranje elektroničkih sustava. U početku se projekt razvija pomoću Verilog simulatora, ali kada se završi može se koristiti za proizvodnju pravih čipova. Razvoj projekta distribuira se pod licencom MIT-a.

VeriGPU je pozicioniran kao procesor specifičan za aplikaciju (ASIC) optimiziran za ubrzavanje izračuna povezanih sa sustavima strojnog učenja. Planovi uključuju kompatibilnost s okvirom dubokog strojnog učenja PyTorch i mogućnost razvoja aplikacija za VeriGPU korištenjem HIP (Heterogeneous-Compute Interface) API-ja. U budućnosti je moguće dodati podršku za druge API-je, kao što su SYCL i NVIDIA CUDA.

GPU se razvija iz skupa instrukcija RISC-V, ali rezultirajuća interna arhitektura skupa instrukcija GPU-a slabo je kompatibilna s RISC-V ISA, jer u situacijama u kojima se dizajn GPU-a ne uklapa u prikaz RISC-V, on je nije namijenjen održavanju RISC-V kompatibilnosti. Razvoj je usmjeren na mogućnosti potrebne za sustave strojnog učenja, tako da se smanji veličina i složenost matrice čipa, koristi se samo BF16 format s pomičnim zarezom i samo operacije s pomičnim zarezom potrebne za strojno učenje, kao što su exp, log, tanh i sqrt, dostupni su.

Među već dostupnim komponentama su GPU kontroler, APU (Accelerated Processing Unit) za cjelobrojne operacije (“+”,”-“,”/,”*”), te jedinica za operacije s pomičnim zarezom (“+,” ,”*”) i blok za grananje. Za izradu aplikacija nudi asembler i podršku za kompajliranje C++ koda temeljenog na LLVM. Od planiranih mogućnosti ističe se paralelno izvršavanje instrukcija, predmemoriranje podataka i memorije instrukcija te SIMT (Single instruction multiple thread) operacije.

Projekt VeriGPU razvija otvoreni GPU u jeziku Verilog


Izvor: opennet.ru

Dodajte komentar