windows – 具有2个CPU的VM是否真的比具有4个CPU的VM快?

我们的IT创建了一个分配了2个cpu而不是我要求的4个虚拟机.他们的原因是VM使用2个cpu而不是4个(根据它们)表现更好.基本原理是VM虚拟机管理程序(在这种情况下为VMWare)在使用任何cpu之前等待所有cpu可用.因此,等待4个而不是2个cpu需要更长的时间.

这个陈述有意义吗?

这曾经是真实的,但不再是唯一的.

他们所指的是Strict Co-Scheduling.

Most important of all,while in the strict co-scheduling algorithm,the existence of a lagging vcpu causes the
entire virtual machine to be co-stopped. In the relaxed co-scheduling algorithm,a leading vcpu decides whether
it should co-stop itself based on the skew against the slowest sibling vcpu

现在,如果主机只有4个线程,那么分配所有线程都是愚蠢的.如果它有两个处理器和每个处理器4个线程,那么您可能不希望分配单个处理器的所有内容,因为您的虚拟机管理程序应该尝试将vcpu保持在同一个NUMA节点上以更快地访问内存,并且您是通过将整个套接字分配给单个VM,使这项工作更加困难(参见上面PDF的第12页).

因此,有些情况下,较少的vcpu可以表现得更好,但在100%的情况下都不是这样.

所有这一切,我很少为每位客人分配超过3个vcpu.认情况下,每个人获得2,如果工作负载繁重,则为3;对于sql Server或非常繁重的批处理VM​​,或者具有大量用户的终端服务器,每个人获得4个.

相关文章

Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...
Windows文件操作基础代码 Windows下对文件进行操作使用的一段...
Winpcap基础代码 使用Winpcap进行网络数据的截获和发送都需要...
使用vbs脚本进行批量编码转换 最近需要使用SourceInsight查看...