Linux负载平均和超线程

我对Linux负载平均值的粗略理解是CPU核心一直在工作的每个整数。 例如,1意味着在一个4核心系统上,1个核心正在工作。 超线程是如何影响这个的? 它甚至考虑在负载平均值?

我通常认为HyperThreaded核心是真正核心的20%-30%,这取决于应用程序如何有效利用多个线程。 它们认为是平均负载和平均负载阈值。

以下是启用超线程之前和之后的双插槽Intel X5570 Nehalem系统示例。 操作系统是CentOS 5.8。 实际的平均系统运行队列/负载平均值没有大的变化(应用程序几乎是单线程的),但负载阈值没有。

在这里输入图像说明

也就是说,有很多时候我禁用超线程…对于我的低延迟和确定性的应用程序,我想更好地控制应用程序资源的安排位置。 在这些情况下,有一个超线程核心的惩罚。 此外,我有一个特殊情况,应用程序运行在具有超线程的4插槽8核CPU上。 这是太多核心…所以我只是禁用HT从64个逻辑CPU削减到32。

在这里输入图像说明