VGEM sürücüsünü Rust'ta yeniden çalışma

Igalia'dan Maíra Canal, Rust'ta VGEM (Sanal GEM Sağlayıcı) sürücüsünü yeniden yazmak için bir proje sundu. VGEM, yaklaşık 400 satır koddan oluşur ve yazılım rasterleştirme performansını artırmak için LLVMpipe gibi yazılım 3D aygıt sürücülerine arabellek erişimini paylaşmak için kullanılan, donanımdan bağımsız bir GEM (Grafik Yürütme Yöneticisi) arka ucu sağlar.

VGEM, çekirdek düzeyinde çalışacak ikinci Rust grafik sürücüsü olacak (ilki, Apple M1/M2 yongalarında kullanılan Apple AGX GPU için Asahi DRM (Doğrudan İşleme Yöneticisi) sürücüsüydü). Geliştirme, Rust kodundan platform cihazı, XArray türü ve DMA çitleri gibi DMA ile ilgili soyutlamalarla çalışmak için yeni bağlamalar oluşturmayı gerektiriyordu. Geliştirmenin mevcut aşamasında, sürücü neredeyse hazırdır, iki kontrol (vgem_slow ve vgem_basic@unload) dışında çoğu IGT testini geçmektedir, ancak IOCTL desteğinin iyileştirilmesi gerekmektedir.

Kaynak: opennet.ru

Yorum ekle