Venus - GPU ื•ื™ืจื˜ื•ืืœื™ ืขื‘ื•ืจ QEMU ื•-KVM, ืžื™ื•ืฉื ืขืœ ื‘ืกื™ืก ื”-Vukan API

Collabora ื”ืฆื™ื’ื” ืืช ืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ Venus, ื”ืžืฆื™ืข GPU ื•ื™ืจื˜ื•ืืœื™ (VirtIO-GPU) ื”ืžื‘ื•ืกืก ืขืœ ื”-API ื”ื’ืจืคื™ ืฉืœ Vukan. Venus ื“ื•ืžื” ืœืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ VirGL ืฉื”ื™ื” ื–ืžื™ืŸ ื‘ืขื‘ืจ, ืžื™ื•ืฉื ืขืœ ื’ื‘ื™ OpenGL API, ื•ื’ื ืžืืคืฉืจ ืœืกืคืง ืœื›ืœ ืื•ืจื— GPU ื•ื™ืจื˜ื•ืืœื™ ืœืขื™ื‘ื•ื“ ืชืœืช ืžื™ืžื“, ืžื‘ืœื™ ืœืชืช ื’ื™ืฉื” ื™ืฉื™ืจื” ื‘ืœืขื“ื™ืช ืœ-GPU ื”ืคื™ื–ื™. ืงื•ื“ ื•ื ื•ืก ื›ื‘ืจ ื›ืœื•ืœ ื‘-Mesa ื•ื ืฉืœื— ืžืื– ื’ืจืกื” 3.

ืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ Venus ืžื’ื“ื™ืจ ืืช ืคืจื•ื˜ื•ืงื•ืœ Virtio-GPU ืœื‘ื™ืฆื•ืข ืคืงื•ื“ื•ืช API ื’ืจืคื™ื•ืช ืฉืœ Vulkan. ืœืขื™ื‘ื•ื“ ื‘ืฆื“ ื”ืื•ืจื—, ื ืขืฉื” ืฉื™ืžื•ืฉ ื‘ืกืคืจื™ื™ืช virglrenderer, ื”ืžืกืคืงืช ืชืจื’ื•ื ืฉืœ ืคืงื•ื“ื•ืช ืžื”ื“ืจื™ื™ื‘ืจื™ื ืฉืœ Venus ื•-VirGL ืœืคืงื•ื“ื•ืช Vulkan ื•-OpenGL. ื›ื“ื™ ืœื™ืฆื•ืจ ืื™ื ื˜ืจืืงืฆื™ื” ืขื ื”-GPU ื”ืคื™ื–ื™ ื‘ืฆื“ ื”ืžืขืจื›ืช ื”ืžืืจื—, ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ืžื ื”ืœื™ ื”ื”ืชืงืŸ ANV (Intel) ืื• RADV (AMD) Vulkan ืž-Mesa.

ื”ื”ืขืจื” ืžืกืคืงืช ื”ื ื—ื™ื•ืช ืžืคื•ืจื˜ื•ืช ืœืฉื™ืžื•ืฉ ื‘- Venus ื‘ืžืขืจื›ื•ืช ื•ื™ืจื˜ื•ืืœื™ื–ืฆื™ื” ื”ืžื‘ื•ืกืกื•ืช ืขืœ QEMU ื•-KVM. ื›ื“ื™ ืœืขื‘ื•ื“ ื‘ืฆื“ ื”ืžืืจื—, ื ื“ืจืฉืช ืœื™ื‘ืช ืœื™ื ื•ืงืก 5.16-rc ืขื ืชืžื™ื›ื” ื‘-/dev/udmabuf (ื‘ื ื” ืขื ืืคืฉืจื•ืช CONFIG_UDMABUF), ื›ืžื• ื’ื ืขื ืคื™ื ื ืคืจื“ื™ื ืฉืœ virglrenderer (ืขื ืฃ ืฉื™ืชื•ืฃ ืžื—ื“ืฉ) ื•-QEMU (ืขื ืฃ venus-dev ). ื‘ืฆื“ ื”ืžืขืจื›ืช ื”ืื•ืจื—ืช, ืขืœื™ืš ืœืงื‘ืœ ืืช ืœื™ื‘ืช ืœื™ื ื•ืงืก 5.16-rc ื•ืืช ื—ื‘ื™ืœืช Mesa 21.1+ ื”ื™ื“ื•ืจ ืขื ื”ืืคืฉืจื•ืช "-Dvulkan-drivers=virtio-experimental".

Venus - GPU ื•ื™ืจื˜ื•ืืœื™ ืขื‘ื•ืจ QEMU ื•-KVM, ืžื™ื•ืฉื ืขืœ ื‘ืกื™ืก ื”-Vukan API


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

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