我对Linux负载平均值的粗略理解是,每一个整数,CPU核心就一直在工作。例如,1意味着在一个4个核心系统上,一个核心正在以容量工作。HyperThreading是如何影响这一点的?在负荷平均值中是否考虑到了这一点?
发布于 2013-01-21 17:38:58
我通常认为HyperThreaded内核是一个真实内核的20%-30%,这取决于应用程序如何有效地利用多个线程。它们被考虑在负载平均和负载平均阈值中。
下面是一个双套接字英特尔X5570 Nehalem系统在启用超线程之前和之后的示例。操作系统是CentOS 5.8。实际的平均系统运行队列/负载平均值并没有发生很大的变化(应用程序几乎是单线程的),但是加载阈值改变了。

尽管如此,我有很多次禁用HyperThreading.对于我的低延迟和确定性应用程序,我希望更好地控制应用程序资源的调度位置。在这些情况下,访问HyperThread核心是要受到惩罚的。另外,我有一种特殊情况,即应用程序运行在4套接字8核CPU上,其中有HyperThreading。它的核心太多了。所以我刚刚禁用了HT,将逻辑CPU从64个减少到32个。

https://serverfault.com/questions/471100
复制相似问题