Rustda VGEM drayverini qayta ishlash

Igalia shahridan Maíra Canal Rustda VGEM (Virtual GEM Provider) drayverini qayta yozish loyihasini taqdim etdi. VGEM taxminan 400 qatorli kodlardan iborat boʻlib, dasturiy taʼminotni rasterlashtirish ish faoliyatini yaxshilash uchun LLVMpipe kabi dasturiy taʼminot 3D qurilma drayverlariga bufer kirishini almashish uchun foydalaniladigan apparat-agnostik GEM (Graphics Execution Manager) serverini taqdim etadi.

VGEM yadro darajasida ishlaydigan ikkinchi Rust grafik drayveri bo'ladi (birinchisi Apple M1/M2 chiplarida ishlatiladigan Apple AGX GPU uchun Asahi DRM (To'g'ridan-to'g'ri Rendering menejeri) drayveri). Ishlab chiqish platforma qurilmasi, XArray turi va DMA toʻsiqlari kabi DMA bilan bogʻliq abstraktsiyalar bilan Rust kodidan ishlash uchun yangi bogʻlamlarni yaratishni talab qildi. Rivojlanishning hozirgi bosqichida haydovchi deyarli tayyor, ko'pgina IGT testlaridan o'tadi, ikkita tekshiruvdan tashqari (vgem_slow va vgem_basic@unload), lekin IOCTL qo'llab-quvvatlashini yaxshilashni talab qiladi.

Manba: opennet.ru

a Izoh qo'shish