我已经看了所有的东西,阅读了一堆关于这个文档,但没有find一个直接的答案,所以在这里:
在vCenter的“资源”选项卡中有一个设置,可让您configuration超线程核心共享。 我有这个设置为“任何”。
我的问题是调度亲和力。 如果将文本字段留空,您将分配特定内核,会发生什么情况?
VMWare是否处理跨所有逻辑核心的超线程,或者是否禁用超线程?
注意:排程亲和组框说
超线程状态:主动
可用的CPU:##(逻辑CPU)
UI在这里可能会让人困惑,但是超线程核心共享和调度相关性是单独的项目。
taskset样式的CPU关联掩码。
超线程共享
选项是:
任何 – (默认)此虚拟机的虚拟CPU可以与该虚拟机或其他虚拟机的其他虚拟CPU自由共享内核。
无 – 此虚拟机的虚拟CPU只要安排了该虚拟机,就会独占使用处理器内核。 核心的另一个超线程在这个虚拟机正在使用核心的时候被“暂停”了。
内部 – 在具有两个虚拟处理器的虚拟机上,允许两个虚拟处理器共享一个物理内核(由ESXi调度程序决定),但是此虚拟机永远不会与任何其他虚拟机共享一个内核。 如果此虚拟机的处理器数量超过两个,则此设置与“无”设置相同。
无论哪种情况,我都不build议在99%的用例中更改这些设置中的任何一个,因为存在性能问题或争用增加的风险。 Scheduling Affinity框应该是空白的。
是否有特定的效果或情况,你正在处理?
我只是检查了Adobe ColdFusion许可证的语言。 对于您的使用情况,“CPU”是指物理插槽(可能是多核)。 许可证以2-CPU数量销售。 因此,每个双路ESXi主机需要一个许可证。
超线程系统上所有虚拟机的默认值都是ANY。 具有此设置的虚拟机的虚拟CPU可以随时与此虚拟机或其他任何虚拟机自由共享其他虚拟CPU。 更改此设置可能会导致性能问题,您将不会真正使用它的好处。 此外,超线程取决于处理器types,并在系统BIOS中启用。
超线程的激活设置在主机级别,但是是否将给定虚拟机使用HT的决定设置为VM级别。
因此,如果将超线程核心共享设置为ANY ,则将Scheduling Affinity框保留为空将不会有任何影响。