ืขื™ื‘ื•ื“ ืžื—ื“ืฉ ืฉืœ ื“ืจื™ื™ื‘ืจ VGEM ื‘- Rust

Maรญra Canal ืžืื™ื’ืœื™ื” ื”ืฆื™ื’ื” ืคืจื•ื™ืงื˜ ืœืฉื›ืชื‘ ืืช ืžื ื”ืœ ื”ื”ืชืงืŸ VGEM (Virtual GEM Provider) ื‘-Rust. VGEM ืžื•ืจื›ื‘ ืžื›-400 ืฉื•ืจื•ืช ืงื•ื“ ื•ืžืกืคืง ืงืฆื” ืื—ื•ืจื™ ืฉืœ GEM (Graphics Execution Manager) ืื’ื ืกื˜ื™ ืœื—ื•ืžืจื” ื”ืžืฉืžืฉ ืœืฉื™ืชื•ืฃ ื’ื™ืฉืช ืžืื’ืจ ืœืžื ื”ืœื™ ื”ืชืงื ื™ื ืชืœืช-ืžืžื“ื™ื™ื ืฉืœ ืชื•ื›ื ื” ื›ื’ื•ืŸ LLVMpipe ื›ื“ื™ ืœืฉืคืจ ืืช ื‘ื™ืฆื•ืขื™ ืจืกื˜ืจ ื”ืชื•ื›ื ื”.

VGEM ื™ื”ื™ื” ืžื ื”ืœ ื”ื”ืชืงืŸ ื”ื’ืจืคื™ ืฉืœ Rust ื”ืฉื ื™ ืฉื™ืคืขืœ ื‘ืจืžืช ื”ืœื™ื‘ื” (ื”ืจืืฉื•ืŸ ื”ื™ื” ืžื ื”ืœ ื”ืชืงืŸ Asahi DRM (ืžื ื”ืœ ืขื™ื‘ื•ื“ ื™ืฉื™ืจ) ืขื‘ื•ืจ ื”-Apple AGX GPU ื”ืžืฉืžืฉ ื‘ืฉื‘ื‘ื™ Apple M1/M2). ื”ืคื™ืชื•ื— ื“ืจืฉ ื™ืฆื™ืจืช ื›ืจื™ื›ื•ืช ื—ื“ืฉื•ืช ื›ื“ื™ ืœืขื‘ื•ื“ ืžืงื•ื“ Rust ืขื ื”ืชืงืŸ ื”ืคืœื˜ืคื•ืจืžื”, ืžืกื•ื’ XArray ื•ื”ืคืฉื˜ื•ืช ื”ืงืฉื•ืจื•ืช ืœ-DMA ื›ื’ื•ืŸ ื’ื“ืจื•ืช DMA. ื‘ืฉืœื‘ ื”ืคื™ืชื•ื— ื”ื ื•ื›ื—ื™, ื”ื“ืจื™ื™ื‘ืจ ื›ืžืขื˜ ืžื•ื›ืŸ, ืขื•ื‘ืจ ืืช ืจื•ื‘ ืžื‘ื—ื ื™ ื”-IGT, ืœืžืขื˜ ืฉืชื™ ื‘ื“ื™ืงื•ืช (vgem_slow ื•-vgem_basic@unload), ืืš ื“ื•ืจืฉ ืฉื™ืคื•ืจ ืฉืœ ืชืžื™ื›ืช IOCTL.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”