Virtio-Venus
Варианты использования:
Заголовок раздела «Варианты использования:»- 3D-ускорение, близкое к нативному
В операционных системах, использующих libvulkan, таких как Linux, BSD и Android, вы
можете достичь производительности, близкой к нативной, преобразуя вызовы из виртуальной машины в Vulkan, а затем напрямую
на ваш GPU и обратно, без необходимости передавать их через виртуальную машину.
К сожалению, Virtio-Venus отсутствует в VMM, и поэтому вам потребуется использовать qemu-cli. Вам нужно будет запомнить имя, которое вы дали своей виртуальной машине, и её расположение.
Использование Virtio-Venus в qemu-cli:
Заголовок раздела «Использование Virtio-Venus в qemu-cli:»После установки любой подходящей виртуальной машины вы можете открыть терминал и создать команду qemu-cli для вашей виртуальной машины. Вот пример для моей ВМ с CachyOS:
qemu-system-x86_64 \ -enable-kvm \ -M q35 \ -smp 6 \ -m 12G \ -cpu host \ -net nic,model=virtio \ -net user,hostfwd=tcp::2222-:22 \ -device virtio-sound-pci,audiodev=my_audiodev -audiodev pipewire,id=my_audiodev \ -device virtio-vga-gl,hostmem=4G,blob=true,venus=true \ -vga none \ -display gtk,gl=on,show-cursor=on \ -usb -device usb-tablet \ -object memory-backend-memfd,id=mem1,size=12G \ -machine memory-backend=mem1 \ -drive if=pflash,format=raw,readonly=on,file=/usr/share/edk2/x64/OVMF_CODE.secboot.4m.fd \ -drive if=pflash,format=raw,file=.config/libvirt/qemu/nvram/archlinux_VARS.fd \ -drive file=.local/share/libvirt/images/archlinux.qcow2Пояснения:
Заголовок раздела «Пояснения:»-smp 6означает 6 ядер ЦП-m 12Gозначает 12 ГБ ОЗУ-net user,hostfwd=tcp::2222-:22означает, что порт 22 с хоста пробрасывается в ВМ как порт 2222, таким образом, если вы хотите подключиться к ВМ по ssh с какого-либо устройства, вы должны выполнить:
ssh -p 2222 имя_пользователя_вм@ip_адрес_вм-device virtio-vga-gl,hostmem=4G,blob=true,venus=true— это драйвер Venus, который, к сожалению, пока не включен в virt-manager. Как только это произойдет, весь этот раздел, за исключением пользовательского режима, устареет.-hostmem=4Gозначает, что я позволяю ВМ использовать до 4 ГБ моей видеопамяти (VRAM) с моей видеокарты.-object memory-backend-memfd,id=mem1,size=12Gв этом разделеsize— это объем ОЗУ, который вы выделили, то есть 12 ГБ в моем случае.-drive if=pflash,format=raw,readonly=on,file=/usr/share/edk2/x64/OVMF_CODE.secboot.4m.fd— это файл прошивки для ВМ, здесь просто указан путь к нему.-drive if=pflash,format=raw,file=.config/libvirt/qemu/nvram/archlinux_VARS.fd— это nvram ВМ. Без этого файла или если он будет установлен в режим только для чтения, ВМ не запустится.-drive file=.local/share/libvirt/images/archlinux.qcow2— это путь к файлу .qcow2 (хранилище ВМ).
(Вы можете заметить, что мое аудиоустройство в данном случае неich9, аpipewire, но это не имеет значения.)