0

我一直在尝试为 VM 设置 cpu 亲和性。现在,我编辑了 /etc/libvirt/qemu/$VM.xml 中存在的 VM xml 文件并放置了 cpuset 属性。我有 4 个内核,我输入了 cpuset = '1,3'。但是当我执行 virsh vcpuinfo $VM 时,它显示我的 VM 的 vcpus 仍然连接到 pcpus 0 和 2。我做错了什么?

4

2 回答 2

1

您介意粘贴您的域 xml 的元素吗?您可以参考[CPU分配]进行比较。

一个方便的工具是taskset -p <your qemu process id>查看 KVM 管理程序上的 CPU 分配的命令。

顺便说一句:您需要 qemu v0.8.5+ 才能获得此功能。

于 2013-07-06T11:16:05.690 回答
0

在 libvirt 的手下编辑/etc/libvirt/qemu/$VM.xml不是你应该做的,也不是在没有 libvirt 的情况下设置亲和力。在这种情况下,libvirt 不知道这些设置。

正确的做法是使用“virsh edit $VM”,设置您想要的内容并停止和启动域。您还可以使用virsh将每个 vCPU 固定到特定的主机 CPU:

for i in {1..X}; do   # X is the number of VCPUs
  virsh vcpupin $VM 0 1,3
done
virsh emulatorpin $VM 1,3

或者

virsh numatune $VM --nodeset 1,3  # To pin to particular

您可以使用“--config”和“--live”分别在配置或实时域中设置它。有关更多选项,请参阅 comman virsh( man virsh) 的手册。

于 2013-12-04T13:03:55.180 回答