我有一些运行ESXi的戴尔2950双4核3Ghz处理器。 我注意到在VSpherepipe理控制台上,服务器说它没有启用超线程(“非活动”)
显然这是默认情况下在BIOS中closures。
我知道我可以closures所有的虚拟机,并重新启动并编辑该设置,但我应该吗? 在这种types的设置上启用超线程是否有真正的好处,或者是性能增益边际,如果有的话?
我只读了很多次这个话题。 我在这里发现了一篇在www.vmguy.com的文章,总结了这个HT问题的共识(直接来自文章):
在ESX中使用HT有利有弊。
优点
更好地协调SMP虚拟机的调度
超线程提供了更多的CPU上下文,正因为如此,SMP虚拟机可以安排在没有超线程的情况下运行。
- 典型应用程序的性能在0-20%范围内有所提高(与非虚拟化工作负载相同)。
缺点
- 处理器资源与启用的超线程共享
处理器资源是共享的,例如L2和L3caching。 这意味着在同一个处理器上运行的两个线程竞争同样的资源,如果他们对它们都有很高的需求的话。 这可能反过来降低性能。
所有的事情都考虑到了,超线程的性能影响是很难概括的。 这高度依赖于虚拟机的工作负载。 还有一点是,您可以始终在每个虚拟机或资源池的基础上利用CPU最小值和最大值来为最关键的工作负载预留一定数量的CPU。 与我所提到的大部分性能项目一样,testing,testing,testing。 尝试一下工作负载,看看你有什么可用的硬件最好。
再次,这是直接从文章。 我不确定HT是否值得,因为我也使用AMD Opteron,所以我不能从经验中发言。
你确定你的CPU甚至有超线程吗? 我认为大多数四核CPU不。 我的ESX服务器也报告说HyperThreading是“不活跃的”,而且我有AMD CPU,它们从来没有HT。
支持超线程技术的唯一英特尔CPU是Netburst(Pre Core \ Core Duo)架构和最新的基于Nehalem的CPU(即目前服务器仅支持至强5500)。 2950系列不支持至强5500,但支持早期的5000,5100,5200,5300和5400系列(精确的CPU支持在各种2950型号之间有所不同)。 在那些只有最古老的,5000系列(登普西),支持超线程,因为它是基于Netburst架构。
所有四核至强5xxx都基于Core或Nehalem架构,因此在您的情况下,您的CPU不支持超线程。