Ubuntu 22.04 GPU 直通 (QEMU)

Too*_*day 11 virtualization qemu pcie

我找到了一个指南,告诉我执行以下操作以使 GPU 在 20.04 上通过

apt install qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virt-manager ovmf
Run Code Online (Sandbox Code Playgroud)

lspci -nn回报

01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA104 [GeForce RTX 3060 Ti Lite Hash Rate] [10de:2489] (rev a1)
01:00.1 Audio device [0403]: NVIDIA Corporation GA104 High Definition Audio Controller [10de:228b] (rev a1)
Run Code Online (Sandbox Code Playgroud)

/etc/默认/grub

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_iommu=on kvm.ignore_msrs=1 vfio-pci.ids=10de:2489,10de:228b"
Run Code Online (Sandbox Code Playgroud)

然后

update-grub
Run Code Online (Sandbox Code Playgroud)

然而,当我重新启动时,我看到一个纯黑的屏幕。22.04 的过程是否有所不同?CPU是i9-12900k

TAC*_*LEX 21

UBUNTU 22.04 LTS 及更高版本的 GPU 直通指南

\n

本指南在带有Nouveau驱动程序和以下系统配置的Ubuntu 22.04 LTS、22.10、23.04、23.10 上进行了测试:

\n
    \n
  • 微星\xc2\xae主板Z170A
  • \n
  • 英特尔\xc2\xae 酷睿\xe2\x84\xa2 i5-6600 处理器
  • \n
  • GeForce GTX 1650 AERO ITX 4G 超频。
  • \n
\n

注意力!本指南仅与 Nouveau 驱动程序相关。在开始系统更改之前,请仔细阅读文本。

\n

本指南所需的硬件规格

\n

对于基于 Intel 的系统:

\n\n

对于基于 AMD 的系统:

\n
    \n
  • 带集成显卡的主板(用于操作)

    \n
  • \n
  • 配备 AMD-V、AMD-Vi 和集成显卡的 CPU

    \n
  • \n
  • 支持 GPU 直通的独立显卡(用于直通)

    \n
  • \n
  • 具有两个输入的显示器,例如 Displayport、D-SUB、DVI、HDMI 或带有显示器或两个显示器的切换盒。

    \n
  • \n
\n

请参阅支持 IOMMU 的硬件列表(列表可能不完整)。

\n

重要提示: \n为了提高来宾计算机的工作效率,请将来宾操作系统安装在额外的物理磁盘上(直通解决方案)。\n此外,您还需要 8 GB RAM用于操作系统(OS),8 GB RAM 用于来宾计算机,16 GB RAM 可能会显着增加您的HDDSSD 的性能和使用寿命。

\n

所需步骤

\n

步骤 1.BIOS中启用硬件辅助虚拟化

\n
    \n
  • 对于基于 Intel 的系统启用 Intel 虚拟化技术 (VT-x) 和 Intel VT-D 技术

    \n
  • \n
  • 对于基于 AMD 的系统启用 SVM 模式。

    \n
  • \n
\n

步骤 2.设置 BIOS 以使用集成显卡作为主要启动设备

\n

注意力!如果您使用专为直通 PCI-Express 图形设备设计的系统启动,则会出现错误代码 43。

\n

步骤 3.检查CPU 上的IOMMU支持

\n

对于 AMD 处理器:

\n
$ cat /proc/cpuinfo | grep --color svm\n
Run Code Online (Sandbox Code Playgroud)\n

对于英特尔处理器:

\n
$ cat /proc/cpuinfo | grep --color vmx\n
Run Code Online (Sandbox Code Playgroud)\n

您应该看到突出显示的文本 svm 或 vmx。

\n

步骤 4.启用 IOMMU

\n
$ sudo nano /etc/default/grub\n
Run Code Online (Sandbox Code Playgroud)\n

将以下选项添加到 GRUB_CMDLINE_LINUX_DEFAULT=""

\n

对于 AMD 处理器:

\n
amd_iommu=on kvm.ignore_msrs=1\n
Run Code Online (Sandbox Code Playgroud)\n

对于英特尔处理器:

\n
intel_iommu=on kvm.ignore_msrs=1\n
Run Code Online (Sandbox Code Playgroud)\n

步骤 5.更新 GRUB

\n
$ sudo grub-mkconfig -o /boot/grub/grub.cfg\n
Run Code Online (Sandbox Code Playgroud)\n

步骤 6.重新启动系统

\n

步骤 7.检查 IOMMU 是否已启用

\n
$ sudo dmesg | grep -i -e DMAR -e IOMMU\n
Run Code Online (Sandbox Code Playgroud)\n

您应该看到如下消息:

\n
[    0.123456] pci 0000:09:00.0: Adding to iommu group 1\n[    0.234567] pci 0000:0a:00.0: Adding to iommu group 2\n[    0.345678] DMAR: Intel(R) Virtualization Technology for Directed I/O\n
Run Code Online (Sandbox Code Playgroud)\n

步骤 8.找到您的设备

\n
$ lspci -nnk\n
Run Code Online (Sandbox Code Playgroud)\n

您应该看到如下所示的文本:

\n
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU117 [GeForce GTX 1650] [10aa:10bb] (rev a1) (prog-if 00 [VGA controller])\n    Subsystem: Micro-Star International Co., Ltd. [MSI] TU117 [GeForce GTX 1650] [0101:a1a1]\n    Flags: bus master, fast devsel, latency 0, IRQ 151, IOMMU group 1\n    Memory at de000000 (32-bit, non-prefetchable) [size=16M]\n    Memory at c0000000 (64-bit, prefetchable) [size=256M]\n    Memory at d0000000 (64-bit, prefetchable) [size=32M]\n    I/O ports at e000 [size=128]\n    Expansion ROM at 000c0000 [disabled] [size=128K]\n    Capabilities: <access denied>\n    Kernel driver in use: nouveau\n    Kernel modules: nvidiafb, nouveau\n\n01:00.1 Audio device [0403]: NVIDIA Corporation Device [01cc:01ee] (rev a1)\n    Subsystem: Micro-Star International Co., Ltd. [MSI] Device [0202:a2a2]\n    Flags: bus master, fast devsel, latency 0, IRQ 17, IOMMU group 1\n    Memory at df080000 (32-bit, non-prefetchable) [size=16K]\n    Capabilities: <access denied>\n    Kernel driver in use: snd_hda_intel\n    Kernel modules: snd_hda_intel\n
Run Code Online (Sandbox Code Playgroud)\n

如果您看到文本“正在使用的内核驱动程序:nvidia”,如下所示:

\n
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU117 [GeForce GTX 1650] [10aa:10bb] (rev a1)\n    Subsystem: Micro-Star International Co., Ltd. [MSI] TU117 [GeForce GTX 1650] [0101:a1a1]\n    Kernel driver in use: nvidia\n    Kernel modules: nvidiafb, nouveau, nvidia_drm, nvidia\n01:00.1 Audio device [0403]: NVIDIA Corporation Device [01cc:01ee] (rev a1)\n    Subsystem: Micro-Star International Co., Ltd. [MSI] Device [0202:a2a2]\n    Kernel driver in use: snd_hda_intel\n    Kernel modules: snd_hda_intel\n
Run Code Online (Sandbox Code Playgroud)\n

您的系统使用 NVIDIA专有驱动程序。您需要删除所有旧的视频驱动程序。以下是删除所有旧视频驱动程序并重新安装 nouveau 的方法:

\n
$ sudo nvidia-settings --uninstall\n$ sudo apt-get remove --purge nvidia*\n$ sudo apt-get remove --purge xserver-xorg-video-nouveau\n$ sudo apt-get remove --purge xserver-xorg-video-nv\n$ sudo apt-get install nvidia-common\n$ sudo apt-get install xserver-xorg-video-nouveau\n$ sudo apt-get install xserver-xorg-video-all\n$ sudo apt-get install --reinstall libgl1-mesa-glx libgl1-mesa-dri\n$ sudo apt-get install --reinstall xserver-xorg-core\n$ sudo dpkg-reconfigure xserver-xorg\n
Run Code Online (Sandbox Code Playgroud)\n

或运行以下命令:

\n
$ software-properties-gtk --open-tab=4\n
Run Code Online (Sandbox Code Playgroud)\n

选择选项 \xe2\x80\x9cX.Org X server -- 来自 xserver-xorg-video-nouveau (开源)\xe2\x80\x9d 的 Nouveau 显示驱动程序

\n

运行自动删除:

\n
$ sudo apt autoremove\n
Run Code Online (Sandbox Code Playgroud)\n

然后重新启动系统并重复步骤 8。

\n

步骤 9.创建一个名为 vfio.conf 的新文件

\n
$ sudo nano /etc/modprobe.d/vfio.conf\n
Run Code Online (Sandbox Code Playgroud)\n

添加以下行以及 STEP 8 中的设备 ID:

\n
blacklist nouveau\nblacklist snd_hda_intel\noptions vfio-pci ids=10aa:10bb,01cc:01ee\n
Run Code Online (Sandbox Code Playgroud)\n

步骤 10.更新现有的 initramfs

\n
$ sudo update-initramfs -u\n
Run Code Online (Sandbox Code Playgroud)\n

步骤 11.重新启动系统

\n

第 12 步:确保一切正常

\n
$ lspci -nnk\n
Run Code Online (Sandbox Code Playgroud)\n

您应该看到如下文本,行 \xe2\x80\x9cKernel driver in use: nouveau\xe2\x80\x9d 和 \xe2\x80\x9cKernel driver in use: snd_hda_intel\xe2\x80\x9d 不应出现在文本:

\n
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU117 [GeForce GTX 1650] [10aa:10bb] (rev a1)\n    Subsystem: Micro-Star International Co., Ltd. [MSI] TU117 [GeForce GTX 1650] [0101:a1a1]\n    Kernel modules: nvidiafb, nouveau\n01:00.1 Audio device [0403]: NVIDIA Corporation Device [01cc:01ee] (rev a1)\n    Subsystem: Micro-Star International Co., Ltd. [MSI] Device [0202:a2a2]\n    Kernel modules: snd_hda_intel\n
Run Code Online (Sandbox Code Playgroud)\n

步骤 13.使用VirtManager创建新的访客计算机

\n

安装KVM

\n
$ sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils\n
Run Code Online (Sandbox Code Playgroud)\n

添加用户

\n

注意:对于较新版本的 Linux 内核,请尝试 libvirt。

\n
$ sudo adduser username libvirtd\n
Run Code Online (Sandbox Code Playgroud)\n

如果您遇到组问题“adduser:组‘libvirtd\’不存在。” 尝试:

\n
$ sudo addgroup libvirtd\n
Run Code Online (Sandbox Code Playgroud)\n

安装VirtManager

\n
$ sudo apt-get install virt-manager\n
Run Code Online (Sandbox Code Playgroud)\n

使用自定义配置创建新的访客计算机。

\n
$ virt-manager\n
Run Code Online (Sandbox Code Playgroud)\n

如果您收到“确保libvirtd守护进程正在运行”错误,请重新启动并重试。

\n

图片01

\n

图片02

\n

图片03

\n

图片04

\n

可选:要将来宾操作系统安装在其他物理磁盘上,请取消选中“为此虚拟机启用存储”框

\n

图片05

\n

图片06

\n

你必须:

\n
    \n
  1. 选择“Q35”芯片组和“UEFI
    \nx86_64:/usr/share/OVMF/OVMF_CODE_4M.ms.fd”固件或类似固件
  2. \n
\n

图片07

\n
    \n
  1. 添加 PCI 主机设备以进行 GPU 直通
  2. \n
\n

图片08

\n

图片09

\n

图10

\n

可选:要将客户机操作系统安装在其他物理磁盘上,请选择主机设备 \xe2\x80\x93 物理 SSD M.2 或 SATA 3.0 PCIe Gen3 x1 卡(适用于 SATA SSD/HDD)

\n
    \n
  1. 设置 QXL 视频驱动程序和 SPICE 客户端以使用“地址”
    \n监听类型进行显示。
  2. \n
\n

图11

\n

图12

\n

图13

\n

步骤 14.编辑访客计算机

\n
$ virsh list --all\n\n$ sudo virsh edit YourGuestMachineName\n
Run Code Online (Sandbox Code Playgroud)\n

添加以下行:

\n
<vendor_id state=\'on\' value=\'1234567890ab\'/>\n<kvm>\n <hidden state=\'on\'/>\n</kvm>\n<ioapic driver=\'kvm\'/>\n
Run Code Online (Sandbox Code Playgroud)\n

最终结果应该类似于:

\n
<features>\n  <acpi/>\n  <apic/>\n  <hyperv>\n    <relaxed state=\'on\'/>\n    <vapic state=\'on\'/>\n    <spinlocks state=\'on\' retries=\'8191\'/>\n    <vendor_id state=\'on\' value=\'1234567890ab\'/>\n  </hyperv>\n  <kvm>\n    <hidden state=\'on\'/>\n  </kvm>\n  <vmport state=\'off\'/>\n  <ioapic driver=\'kvm\'/>\n</features>\n
Run Code Online (Sandbox Code Playgroud)\n

完成编辑后,使用 CTRL+x 保存更改。

\n

步骤 15.运行访客计算机

\n

可选:如果要在附加物理磁盘上安装来宾操作系统,请启动来宾计算机并在适当的时候按 BIOS 输入键 F2。将物理磁盘设备设置为可引导。

\n
\n

笔记

\n

如果您想使用 PCI-Express 图形设备作为主引导设备,请执行以下操作:

\n
$ sudo nano /etc/modprobe.d/vfio.conf\n
Run Code Online (Sandbox Code Playgroud)\n

使用 STEP 8 中的设备 ID 更改以下行:

\n
blacklist nouveau\nblacklist snd_hda_intel\noptions vfio-pci ids=10aa:10bb,01cc:01ee\n
Run Code Online (Sandbox Code Playgroud)\n

和:

\n
#blacklist nouveau\n#blacklist snd_hda_intel\n#options vfio-pci ids=10aa:10bb,01cc:01ee\n
Run Code Online (Sandbox Code Playgroud)\n

更新现有的 initramfs

\n
$ sudo update-initramfs -u\n
Run Code Online (Sandbox Code Playgroud)\n

重新启动系统并将 BIOS 设置为使用 PCI-Express 图形设备作为主启动设备。

\n

也可以看看

\n

指南:在另一个分区上创建 qcow2 磁盘映像文件。

\n

故障排除

\n

问题:模拟器可能没有路径\'/*.qcow2\'的搜索权限

\n

行动:

\n
    \n
  • 使用 sudo 权限运行 virt-manager 或使用 chown、chgrp、chmod\n命令进行修复。请参阅本指南中的步骤。
  • \n
\n

问题:启动域时出错:无法访问存储文件\'/*.qcow2\'(如uid:10101,gid:101):权限被拒绝

\n

行动:

\n
    \n
  • 使用 sudo 权限运行 virt-manager 或使用 chown、chgrp、chmod\n命令进行修复。请参阅本指南中的步骤。
  • \n
\n

问题:重新启动系统后不显示 Gnome 登录屏幕。

\n

行动:

\n
    \n
  • 您的系统可能正在使用集成显卡启动,\n而 vaio.conf 文件丢失、为空、文本不正确或\n步骤 9 中描述的行以 # 字符开头。检查步骤 9。
  • \n
\n

问题:客户机正常启动,但我在 PCI-Express 图形设备的输出上看到黑屏。

\n

行动:

\n
    \n
  • 检查电缆连接和显示器的设置

    \n
  • \n
  • 检查步骤 1、2、14

    \n
  • \n
  • 在 Windows 上安装正确的设备驱动程序

    \n
  • \n
  • 在 Windows 上卸载并重新安装设备驱动程序

    \n
  • \n
  • 更新 Windows 上的设备驱动程序

    \n
  • \n
\n
\n

问题:使用 USB 重定向器时,网络摄像头、USB 音频接口、USB HDD/SSD 等设备无法正常工作。

\n

行动:

\n
    \n
  • 使用额外的 PCIe USB 卡,必须支持 IOMMU(PCIe\n卡直通解决方案)。
  • \n
\n
\n

问题:使用 Windows 10 操作系统的客户机上出现间歇性声音并伴有噼啪声。

\n

行动:

\n
    \n
  • 使用通用内核
  • \n
  • 在 Ubuntu 中禁用 WiFi
  • \n
  • 要提高客户机性能,请将 Ubuntu\n 操作系统上的 CPU 调节器设置为“性能”
  • \n
  • 如果您使用的是带有内置声卡的 HDA (ICH9) 或 HDA (ICH6) 型号,请将 vCPU 数量设置为逻辑主机 CPU 数量的一半
  • \n
  • 如果您使用带有USB 音频接口的附加PCIe Gen3 x4 USB 3.2 卡(PCIe 卡直通解决方案),请参考物理 CPU 拓扑手动设置处理器拓扑(插槽、核心、线程)
  • \n
  • 如果您使用带有 USB 音频接口的附加 PCIe Gen3 x4 USB 3.2 卡(PCIe 卡\n直通解决方案),请尝试\n不同的音频接口驱动程序版本
  • \n
  • 如果操作系统 Ubuntu 已转换为 Ubuntu Studio,请尝试恢复所有更改
  • \n
  • 安装干净的 Ubuntu 操作系统并重试。
  • \n
\n
\n

问题:我的客户机冻结,因此我的 USB 音频接口崩溃(使用额外的 PCIe Gen3 x4 USB 3.2 卡的直通解决方案)。

\n

行动:

\n
    \n
  • 确保根目录有大约 8 GB 的可用空间

    \n
  • \n
  • 从访客计算机中删除未使用的虚拟硬件(声音、\n网络、控制器、通道、USB 重定向)

    \n
  • \n
  • 在虚拟机管理器中,转至“编辑”>“连接详细信息”并\n通过“虚拟网络”选项卡取消选中“启动时”

    \n
  • \n
\n

启动时

\n
    \n
  • 重新启动您的系统

    \n
  • \n
  • 在 Ubuntu 中禁用 WiFi

    \n
  • \n
  • 将 Ubuntu 操作系统上的 CPU 调速器设置为“性能”

    \n
  • \n
\n

电源配置文件

\n
\n
    \n
  • 安装调优
  • \n
\n

请参阅虚拟化调整和优化指南

\n
$ sudo apt install tuned\n
Run Code Online (Sandbox Code Playgroud)\n
    \n
  • 实验性地运行以下命令
  • \n
\n

(每次启动电脑时都需要这些命令)

\n
$ sudo tuned-adm profile virtual-host && sudo systemctl enable tuned && tuned-adm active\n
Run Code Online (Sandbox Code Playgroud)\n
\n

对于 Ubuntu 23.04、23.10

\n
    \n
  • 运行以下命令
  • \n
\n
\n
$ virt-manager\n\n$ htop -t -F libvirtd\n
Run Code Online (Sandbox Code Playgroud)\n

结果应该类似于:

\n
  [Main] [I/O]\n    PID\xe2\x96\xb3USER       PRI  NI  VIRT   RES   SHR S  CPU% MEM%   TIME+  Command\n    976 root        20   0 1602M 36044 22348 S   0.0  0.2  0:01.32 \xe2\x94\x9c\xe2\x94\x80 /usr/sbin/libvirtd --timeout 120\n    .\n    .\n    999 root        20   0 1602M 36044 22348 S   0.0  0.2  0:00.00 \xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 /usr/sbin/libvirtd --timeout 120\n   1001 root        20   0 1602M 36044 22348 S   0.0  0.2  0:00.00 \xe2\x94\x82  \xe2\x94\x94\xe2\x94\x80 /usr/sbin/libvirtd --timeout 120\n   5905 username    20   0  140M  132M  3584 R  50.0  0.0  0:00.10 \xe2\x94\x82  \xe2\x94\x82     \xe2\x94\x94\xe2\x94\x80 htop -t -F libvirt\n
Run Code Online (Sandbox Code Playgroud)\n
    \n
  • 使用 libvirtd 的最低 PID 值运行以下命令
  • \n
\n
\n
$ sudo renice -20 -g <PID>\n\n$ sudo chrt -a -r -p 99 <PID>\n
Run Code Online (Sandbox Code Playgroud)\n
    \n
  • 运行以下命令
  • \n
\n
\n
$ htop -t -F libvirtd\n
Run Code Online (Sandbox Code Playgroud)\n

最终结果应该类似于:

\n
  [Main] [I/O]\n    PID\xe2\x96\xb3USER       PRI  NI  VIRT   RES   SHR S  CPU% MEM%   TIME+  Command\n    976 root        RT -20 1602M 36044 22348 S   0.0  0.2  0:01.32 \xe2\x94\x9c\xe2\x94\x80 /usr/sbin/libvirtd --timeout 120\n    .\n    .\n    999 root        RT -20 1602M 36044 22348 S   0.0  0.2  0:00.00 \xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 /usr/sbin/libvirtd --timeout 120\n   1001 root        RT -20 1602M 36044 22348 S   0.0  0.2  0:00.00 \xe2\x94\x82  \xe2\x94\x94\xe2\x94\x80 /usr/sbin/libvirtd --timeout 120\n   5905 username    20   0  140M  132M  3584 R  50.0  0.0  0:00.10 \xe2\x94\x82  \xe2\x94\x82     \xe2\x94\x94\xe2\x94\x80 htop -t -F libvirt\n
Run Code Online (Sandbox Code Playgroud)\n
    \n
  • 运行您的访客机器
  • \n
\n
\n

对于 Ubuntu 22.04 LTS、22.10

\n

注意:也许在 Ubuntu 22.04 LTS、22.10 更新过程将变得与 Ubuntu 23.04 或 23.10 的过程类似。

\n
    \n
  • 运行您的访客机器

    \n
  • \n
  • 运行以下命令

    \n
  • \n
\n
\n
$ htop -t\n
Run Code Online (Sandbox Code Playgroud)\n

结果应该类似于:

\n
  [Main] [I/O]\n    PID\xe2\x96\xbdUSER       PRI  NI  VIRT   RES   SHR S  CPU% MEM%   TIME+  Command\n      2 root        20   0     0     0     0 S   0.0  0.0  0:00.00 kthreadd\n  10011 root        20   0     0     0     0 S   0.0  0.0  0:01.17 \xe2\x94\x9c\xe2\x94\x80 9998\n  10005 root        20   0     0     0     0 S   0.0  0.0  0:00.11 \xe2\x94\x9c\xe2\x94\x80 kvm-nx-lpage-recovery-9998\n  10004 root         0 -20     0     0     0 I   0.0  0.0  0:00.00 \xe2\x94\x94\xe2\x94\x80 kvm\n      1 root        20   0  166M 13300  7344 S   0.0  0.1  0:04.02 init\n   9998 libvirt-qe  20   0 11.1G 8371M 11796 S  93.0 52.7  2h35:34 \xe2\x94\x9c\xe2\x94\x80 qemu-system-x86_64 -name guest=username,debug-threads=on -S -object {"qom-type":"secret","\n  18086 libvirt-qe  20   0 11.1G 8371M 11796 S   0.0 52.7  0:00.00 \xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 worker\n  10012 libvirt-qe  20   0 11.1G 8371M 11796 S   0.0 52.7  0:20.20 \xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 SPICE Worker\n  10010 libvirt-qe  20   0 11.1G 8371M 11796 S   9.3 52.7 18:42.97 \xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 CPU 3/KVM\n  10009 libvirt-qe  20   0 11.1G 8371M 11796 S  27.9 52.7 18:31.20 \xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 CPU 2/KVM\n  10008 libvirt-qe  20   0 11.1G 8371M 11796 R  18.6 52.7 25:01.04 \xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 CPU 1/KVM\n  10007 libvirt-qe  20   0 11.1G 8371M 11796 R   9.3 52.7  1h08:06 \xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 CPU 0/KVM\n  10006 libvirt-qe  20   0 11.1G 8371M 11796 S   0.0 52.7  0:25.50 \xe2\x94\x82  \xe2\x94\x9c\xe2\x94\x80 IO mon_iothread\n  10002 libvirt-qe  20   0 11.1G 8371M 11796 S   0.0 52.7  0:00.11 \xe2\x94\x82  \xe2