Qemu VM は非常に遅く実行され、"-device virtio-vga-gl -display gtk,gl=on" を使用すると virgl が利用できなくなります。

Qemu VM は非常に遅く実行され、"-device virtio-vga-gl -display gtk,gl=on" を使用すると virgl が利用できなくなります。

ホスト:

  • OS (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。
  • インテル Core i9-10900K CPU
  • 実質的にヘッドレス

ゲスト:

  • OS: Ubuntu 20.04 デスクトップ、
  • OS/カーネルバージョン: 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

ゲスト Ubuntu はダウンロードした ISO イメージからインストールされます。インストール後、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 virtioVM は高速に動作しますが、 では-device virtio-vga-glssh を含めて非常に低速に動作します。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) オプションでは、ホストの強力な GPU を効果的に使用する-display virtio-vga-gl -display gtk,gl=on高速 GPU がゲストに提供されないのはなぜですか?virgl

これまで、トラブルシューティングのための十分な情報を提供してきました。ここで、役立つと思われるもう 1 つの情報を紹介します。

$ dmesg|grep virgl
[  164.657541] [drm] features: +virgl +edid -resource_blob -host_visible

トラブルシューティングのために他の情報が必要な場合はお知らせください。この Qemu の問題に関してご協力いただきありがとうございます。

答え1

ゲスト OS を Ubuntu から RHEL に変更したら、起動の問題はすべてなくなりました。

関連情報