1 或 2 个 vCPU 之间的 vCPU 性能

esx*_*n18 7 virtualization central-processing-unit cpu-usage vmware-vsphere

在虚拟化(主要是 VMware)中,使用 1 个 4 核 CPU 或 2 个 2 核 CPU 是否具有性能优势?让我们假设在 VM 上运行的应用程序可以使用两个 CPU。

Nat*_*n C 9

不足以产生影响。调整更多是针对许可的。例如,Windows Server 是按处理器插槽授权的,因此拥有 1 个核心和 4 个 CPU 的费用要比拥有 1 个 CPU 和 4 个核心的费用高。

其他产品的成本随着处理器数量的增加而迅速上升(看看你,甲骨文)也是如此。

  • 振作起来……甲骨文报价来了…… (7认同)
  • @RyanRies 上次我查看时,Oracle 让您基于管理程序中的物理 CPU 而不是来宾中的虚拟 CPU 许可他们的产品,这使您无法避免 Oracle 的全部约束。不确定是否仍然如此,但这不会让我感到惊讶。 (4认同)

Rya*_*ies 5

简短回答:您可能不会注意到。

长答案:也许吧。我首先想到的问题是现代 CPU 的运行速度比它们使用的主内存快得多。这就是发明NUMA(非均匀内存访问)的主要原因。同一芯片上的 CPU(例如,同一芯片上的两个内核)将共享同一个 NUMA 节点......并且它们都将从该节点访问内存比从另一个 NUMA 节点访问内存的速度更快。因此,如果您正在构建将拥有多个内核多个物理处理器的计算机,请牢记 NUMA 节点位置。如果处理器必须访问很远的内存,它会变慢。

如果你的机器只有一个或两个处理器,NUMA 对你来说不会成为问题,但我想我还是会提到它,只是为了完整起见。


dya*_*sny 5

虽然这里应该没有区别,但我的基准测试显示,在使用单核多插槽仿真(例如,4 个 vCPU 映射为 4 个插槽、单核、单线程)时,Windows 客户机的性能略有提高(但仍然很干净) . 但是在 Linux 来宾中没有明显的区别。

测试是在 KVM 上完成的,在 Linux 方面使用 Windows 2003R2 和 2008R2 来宾以及 RHEL5 和 RHEL6 来宾。我的猜测是 Windows 试图做一些额外的调度技巧,要么在多个套接字上表现出色,要么在多核上失败。