Predelava gonilnika VGEM v Rust

Maíra Canal iz Igalije je predstavila projekt za prepis gonilnika VGEM (Virtual GEM Provider) v Rust. VGEM je sestavljen iz približno 400 vrstic kode in zagotavlja zaledje GEM (Graphics Execution Manager), ki ni odvisno od strojne opreme in se uporablja za skupno rabo dostopa medpomnilnika do programskih gonilnikov 3D naprav, kot je LLVMpipe, za izboljšanje zmogljivosti rastriranja programske opreme.

VGEM bo drugi grafični gonilnik Rust, ki se bo izvajal na ravni jedra (prvi je bil gonilnik Asahi DRM (Direct Rendering Manager) za grafični procesor Apple AGX, ki se uporablja v čipih Apple M1/M2). Razvoj je zahteval ustvarjanje novih vezav za delo iz kode Rust z napravo platforme, vrsto XArray in abstrakcijami, povezanimi z DMA, kot so ograje DMA. Na trenutni stopnji razvoja je gonilnik skoraj pripravljen, opravi večino testov IGT, z izjemo dveh preverjanj (vgem_slow in vgem_basic@unload), vendar zahteva izboljšavo podpore IOCTL.

Vir: opennet.ru

Dodaj komentar