Prepracovanie ovládača VGEM v Ruste

Maira Canal z Igalie predstavila projekt na prepísanie ovládača VGEM (Virtual GEM Provider) v Ruste. VGEM pozostáva z približne 400 riadkov kódu a poskytuje hardvérovo agnostický backend GEM (Graphics Execution Manager), ktorý sa používa na zdieľanie prístupu do vyrovnávacej pamäte k softvérovým ovládačom 3D zariadení, ako je LLVMpipe, na zlepšenie výkonu softvérovej rasterizácie.

VGEM bude druhým grafickým ovládačom Rust na úrovni jadra (prvým bol ovládač Asahi DRM (Direct Rendering Manager) pre GPU Apple AGX používaný v čipoch Apple M1/M2). Vývoj si vyžadoval vytvorenie nových väzieb na prácu s kódom Rust s platformovým zariadením, typom XArray a abstrakciami súvisiacimi s DMA, ako sú ploty DMA. V súčasnej fáze vývoja je ovládač takmer pripravený, prešiel väčšinou testov IGT, s výnimkou dvoch kontrol (vgem_slow a vgem_basic@unload), ale vyžaduje zlepšenie podpory IOCTL.

Zdroj: opennet.ru

Pridať komentár