Pag-usab sa drayber sa VGEM sa Rust

Gipresentar sa Maíra Canal gikan sa Igalia ang usa ka proyekto sa pagsulat pag-usab sa drayber sa VGEM (Virtual GEM Provider) sa Rust. Ang VGEM naglangkob sa gibana-bana nga 400 ka linya sa code ug naghatag ug hardware-agnostic GEM (Graphics Execution Manager) backend nga gigamit sa pagpaambit sa buffer access sa software 3D device drivers sama sa LLVMpipe para mapausbaw ang software rasterization performance.

Ang VGEM mao ang ikaduhang Rust graphics driver nga modagan sa kernel level (ang una mao ang Asahi DRM (Direct Rendering Manager) nga drayber alang sa Apple AGX GPU nga gigamit sa Apple M1/M2 chips). Ang pag-uswag nanginahanglan paghimo og bag-ong mga pagbugkos aron molihok gikan sa Rust code nga adunay aparato sa plataporma, ang tipo sa XArray, ug mga abstraction nga may kalabotan sa DMA sama sa mga koral sa DMA. Sa kasamtangan nga yugto sa pag-uswag, ang drayber hapit na andam, gipasa ang kadaghanan nga mga pagsulay sa IGT, gawas sa duha nga mga tseke (vgem_slow ug vgem_basic@unload), apan nanginahanglan pagpaayo sa suporta sa IOCTL.

Source: opennet.ru

Idugang sa usa ka comment