VeriGPU projekt arendab avatud GPU-d Verilogi keeles

VeriGPU projekt on suunatud avatud GPU loomisele, mis on välja töötatud Verilog keeles elektrooniliste süsteemide kirjeldamiseks ja modelleerimiseks. Esialgu arendatakse projekti Verilogi simulaatori abil, kuid pärast valmimist saab seda kasutada päris kiipide tootmiseks. Projekti arendusi levitatakse MIT litsentsi all.

VeriGPU on rakendusespetsiifiline protsessor (ASIC), mis on optimeeritud masinõppesüsteemidega seotud arvutuste kiirendamiseks. Plaanid hõlmavad ühilduvust PyTorchi sügava masinõppe raamistikuga ja võimalust arendada VeriGPU jaoks rakendusi HIP (heterogeense arvutusliidese) API abil. Tulevikus on võimalik lisada tuge ka teistele API-dele, nagu SYCL ja NVIDIA CUDA.

GPU areneb RISC-V käsukomplektist, kuid sellest tulenev GPU käsukomplekti sisemine arhitektuur ühildub nõrgalt RISC-V ISA-ga, kuna olukordades, kus GPU disain ei sobi RISC-V esitusse, on see ei ole mõeldud RISC-V ühilduvuse säilitamiseks. Arendus on keskendunud masinõppesüsteemide jaoks vajalikele võimalustele, mistõttu kasutatakse kiibi maatriksi suuruse ja keerukuse vähendamiseks ainult BF16 ujukomavormingut ja ainult masinõppeks vajalikke ujukomaoperatsioone, nagu exp, log, tanh ja sqrt, on saadaval.

Juba saadaolevate komponentide hulgas on GPU kontroller, APU (Accelerated Processing Unit) täisarvuliste operatsioonide jaoks ("+","-","/,","*" ja üksus ujukomaoperatsioonide jaoks ("+," "*" ja hargnev plokk. Rakenduste loomiseks pakub see komplekteerijat ja tuge LLVM-il põhineva koodi koostamiseks C++ keeles. Kavandatavatest võimalustest on esile tõstetud käskude paralleelne täitmine, andmete ja käsumälu vahemällu salvestamine ning SIMT (Single instruction multiple thread) toimingud.

VeriGPU projekt arendab avatud GPU-d Verilogi keeles


Allikas: opennet.ru

Lisa kommentaar