主持人:
- 操作系统(Ubuntu 20.10 的变体):
uname -a
Linux ... 5.8.0-7642-generic #47~1614007149~20.10~82fb226-Ubuntu SMP Tue Feb 23 02:59:01 UTC x86_64 x86_64 x86_64 GNU/Linux
- 已安装 nVidia RTX 3090 GPU。驱动程序版本 460.32.03。
- 英特尔酷睿 i9-10900K CPU
- 实际上是无头的
客人:
- 操作系统:Ubuntu 20.04 桌面版,
- 操作系统/内核版本:5.11.0-41-generic
- 架构:x86 64 位
Qemu 可执行文件是在主机上从最新源 6.2.0-rc3 构建的,命令行选项如下./configure
:
--prefix=$HOME/.bin --target-list=x86_64-softmmu --enable-kvm --enable-vnc --enable-gtk --enable-vte --enable-xkbcommon --enable-sdl --enable-spice --enable-spice-protocol --enable-virglrenderer --enable-opengl --enable-guest-agent --enable-avx2 --enable-avx512f --enable-hax --enable-system --enable-linux-user --enable-libssh --enable-linux-aio --enable-linux-io-uring --enable-modules --enable-gio --enable-fuse --enable-fuse-lseek
从下载的 ISO 映像安装 Guest Ubuntu。安装后,运行 VM 的 Qemu 命令行是:
qemu-system-x86_64 -hda ubuntu-desktop.qcow2 -m 2G -smp 8 -d guest_errors -device virtio-vga-gl -display gtk,gl=on,show-cursor=on -net nic,model=virtio -net user,hostfwd=tcp::5555-:22 -chardev qemu-vdagent,id=ch1,name=vdagent,clipboard=on -device virtio-serial-pci -device virtserialport,chardev=ch1,id=ch1,name=com.redhat.spice.0
控制台中有一些输出:
libEGL warning: DRI3: failed to query the version
qemu-system-x86_64: warning: AT-SPI: Could not obtain desktop path or name
qemu-system-x86_64: warning: atk-bridge: GetRegisteredEvents returned message with unknown signature
qemu-system-x86_64: warning: atk-bridge: get_device_events_reply: unknown signature
qemu-system-x86_64: warning: atk-bridge: get_device_events_reply: unknown signature
Invalid write at addr 0x0, size 4, region 'acpi-cpu-hotplug', reason: invalid size (min:1 max:1)
... duplicates of the above line ...
gl_version 45 - core profile enabled
这个 Qemu VM 的问题是 1) 如果我将其替换-device virtio-vga-gl
为-vga virtio
,VM 运行速度很快,但在 下-device virtio-vga-gl
,它运行非常慢,包括 ssh。2) 启动期间出现大量故障,如下面的屏幕截图所示。如果我将其替换-device virtio-vga-gl
为,这些故障就会消失-vga virtio
。-device virtio-vga-gl
然而,在 下,这些故障会重复出现,Qemu 窗口无法进入登录屏幕(所以我不得不使用 ssh)。3) 我预计 OpenGL 渲染器应该是“virgl”,但它仍然是软件“llvmpipe(LLVM 13.0.0,128 位)”
-vga virtio
所以我的问题是:1)为什么用替换后 Qemu VM 运行速度会这么慢-device virtio-vga-gl
?这些选项有什么问题吗?2)为什么启动过程中会出现这么多故障?我没有做任何坏事。3)为什么该-display virtio-vga-gl -display gtk,gl=on
选项没有为客户机提供加速virgl
GPU,从而有效利用主机强大的 GPU?
到目前为止,我已经提供了大量故障排除信息。以下是另一条信息,希望对您有用:
$ dmesg|grep virgl
[ 164.657541] [drm] features: +virgl +edid -resource_blob -host_visible
如果您需要其他信息来进行故障排除,请告诉我。感谢您帮助解决这个 Qemu 问题。
答案1
当我将客户操作系统从 Ubuntu 更改为 RHEL 之后,所有启动问题都消失了。