Answers:
一个物理CPU可以与多个vCPU一起使用。在虚拟化解决方案中,您很少会用完CPU资源。RAM和存储始终是限制因素...
请记住,在VMware中,CPU使用率表示以MHz为单位使用,不核...除非你盯住所有的虚拟CPU在100%的时间所有的,我不认为你的供应商是正确的。
让我们看一下以下系统集群...
来自另一个活动群集-3个主机42个虚拟机
为了扩展ewwhite的内容,除非您拥有可以显式利用多个vCPU或每个vCPU多个内核的应用程序,否则将多个vCPU /内核分配给VM绝对没有任何好处。实际上,与在分配了一个核心的单个vCPU上运行相比,您实际上往往往往会获得较低的性能,部分原因是运行多个vCPU所需的调度开销。
FWIW,在VDI设置中,经常引用的数量是每个物理核心5个vCPU。当然,这要考虑到办公室台式机。如果您的VM一直很忙于编译代码,则每个物理核心可能无法容纳5个vCPU。
这么多人说“取决于”的原因是因为它确实如此。查看您的CPU Ready值,然后决定是否可以在特定系统上增加CPU负载。“ CPU就绪”是对vCPU准备执行命令的度量,但它必须等待物理CPU时间可用。
就您而言,如果您正在编译大型程序,则您的VM完全有可能实际上需要大量的CPU时间。正如ewwhite指出的那样,虚拟化通常倾向于受磁盘I / O和RAM的约束,而不是受CPU的约束。
absolutely zero benefit in allocating multiple vCPUs/cores to a VM
-并不完全正确。我们有一个单线程应用程序,该应用程序过去每周都会挂起。当单个vCPU达到100%时,无法进入该系统,我们必须对VM进行虚拟机监控程序级别的重置。我们添加了第二个vCPU,当应用程序挂起时,我们可以轻松进入并杀死有问题的线程。这有点极端,但绝对不能绝对。