ESXi 和 Windows Server CPU 停放

Chr*_*s J 10 windows central-processing-unit vmware-esxi

对于那些不知道的人来说,CPU 停放是最近的 Windows Server 版本中的一项功能,它允许 Windows 几乎将 CPU 核心降低到零使用,并且没有任何东西使用它。它被引入作为一种节能措施。还有更多关于它的细节在这里,除其他地方。

然而,我很好奇的是,这是否在虚拟化客户机上有问题 - 或者 CPU 停放更像是一种障碍而不是帮助,因为物理 CPU 是由 ESXi 管理的,而不是 Windows,并且停放的 CPU 不太可能除非调度程序认为有足够的工作来解除 CPU 的停放,否则处理流量?

我没有找到任何关于此的信息 - 我确实怀疑它很大程度上基于给定的工作负载,但我没有看到任何讨论(不像超线程是否有任何影响,这似乎经常被讨论)。虽然我确实理解“用你的工作量进行测试”,但我想知道是否有任何我错过的建议/指南。

eww*_*ite 11

一定要尝试调整您的 VM 的大小

如果您有足够的空闲虚拟 CPU 来担心“CPU 停放”,则可能分配给 VM 的数量太多。

这不是一个常见的请求,所以除非您目前遇到性能问题,否则我只会依赖传统的资源管理工具。

编辑:

有性能问题。

  • 确保已安装 VMware 工具。
  • 将 Windows VM电源选项设置为高性能

在此处输入图片说明

  • 这是我们在 CPU 负载相当高的设备上看到的事情——多线程应用程序似乎没有利用所有 vCPU,资源管理器将几个标记为“停放”(尽管有足够多的线程)排队运行)。这是我们第一次不得不考虑停车和 VM 是否真的是一个问题:他的机器(物理)上的开发人员看到相同的代码使用所有内核(比 VM 上的内核更多)。我们有点摸不着头脑,只是想探索这个特定的方面。 (2认同)