VeriGPU projekat razvija otvoreni GPU na Verilog jeziku

VeriGPU projekat ima za cilj stvaranje otvorenog GPU-a razvijenog u Verilog jeziku za opisivanje i modeliranje elektronskih sistema. U početku, projekat se razvija pomoću Verilog simulatora, ali kada se završi može se koristiti za proizvodnju pravih čipova. Razvoj projekta se distribuira pod licencom MIT-a.

VeriGPU je pozicioniran kao procesor specifičan za aplikaciju (ASIC) optimizovan za ubrzanje proračuna vezanih za sisteme mašinskog učenja. Planovi uključuju kompatibilnost sa PyTorch okvirom za duboko mašinsko učenje i mogućnost razvoja aplikacija za VeriGPU pomoću API-ja HIP (Heterogeneous-Compute Interface). U budućnosti je moguće dodati podršku za druge API-je, kao što su SYCL i NVIDIA CUDA.

GPU evoluira iz RISC-V skupa instrukcija, ali rezultirajuća interna arhitektura skupa instrukcija GPU-a je slabo kompatibilna sa RISC-V ISA, jer u situacijama kada se dizajn GPU-a ne uklapa u RISC-V reprezentaciju, nije namijenjen održavanju RISC-V kompatibilnosti. Razvoj je fokusiran na mogućnosti koje su potrebne za sisteme mašinskog učenja, pa da bi se smanjila 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 mašinsko učenje, kao što su exp, log, tanh i sqrt, dostupni su.

Među već dostupnim komponentama su GPU kontroler, APU (Ubrzana procesorska jedinica) za cjelobrojne operacije (“+”,”-“,”/,”,”*”) i jedinica za operacije s pomičnim zarezom (“+,” ,”*”) i blok grananja. Za kreiranje aplikacija nudi asembler i podršku za kompajliranje C++ koda zasnovanog na LLVM-u. Među planiranim mogućnostima, istaknuto je paralelno izvršavanje instrukcija, keširanje podataka i memorije instrukcija, te SIMT (Single instruction multiple thread) operacije.

VeriGPU projekat razvija otvoreni GPU na Verilog jeziku


izvor: opennet.ru

Dodajte komentar