我的 Xendom0
是 Gentoo x64 pvops。我启动我的访客 Gentoo,在光伏发电模式,与我使用的内核相同的系统dom0
。当我emerge
在来宾系统中构建 CPP 包时,我遇到了 CPU 利用率低的问题。
从System Monitor
工具中dom0
,我看到两个核心的 CPU 利用率约为 12%。但在guest中,系统几乎挂起。构建一个包需要很长时间。
答案1
您可以从在 guest 虚拟机中设置 vcpu 开始。
vpus = <number of virtual cpu cores>
您还可以考虑将一些 vcpu 固定到 guest 虚拟机。
vcpu-set domain-id vcpu-count
为相关域启用 vcpu-count 虚拟 CPU。与 mem-set 一样,此命令最多只能分配域启动时配置的最大虚拟 CPU 数量。
如果 vcpu-count 小于当前活动 VCPU 数量,则热插拔最大数量的 VCPU。这对于固定目的可能很重要。
尝试将 VCPU 设置为大于初始配置的 VCPU 计数的数量是错误的。尝试将 VCPU 设置为 < 1 将被悄悄忽略。
有些客人可能需要在 vcpu-set 之后实际使新添加的 CPU 上线,请参阅“另请参阅”部分以获取信息。
vcpu-list [domain-id]
列出特定域的 VCPU 信息。如果不指定域,则提供所有域的VCPU信息。
vcpu-pin domain-id vcpu cpus
将 VCPU 固定为仅在特定 CPU 上运行。关键字 all 可用于将 cpu 列表应用于域中的所有 VCPU。
通常,每当 Xen 认为不同的运行状态合适时,VCPU 就可以在可用 CPU 之间浮动。通过确保某些 VCPU 只能在某些物理 CPU 上运行,可以使用固定来限制这一点。
http://xenbits.xen.org/docs/unstable/man/xl.1.html#domain_subcommands
http://xenbits.xen.org/docs/unstable/man/xl.1.html#cpupools_commands
http://wiki.xen.org/wiki/Credit_Scheduler
最后,最近 Xen 博客上有几篇关于调度、NUMA 和 cpupools 的文章 http://blog.xen.org/index.php/2012/04/26/numa-and-xen-part-1-introduction/