Linux

是否有可能影響在 Linux 下列舉 CPU 的方式?

  • December 10, 2014

我有一個 HP DL380 G7,裡面有 2 個不匹配的 CPU。一種是核心速度更快的四核 CPU,一種是核心速度較慢的 6 核 CPU。

在這個盒子上,我執行了一個應用程序,由於許可原因,它只使用 CPU0-CPU3。

對我來說,希望四核 CPU 上更快的核心列舉到作業系統中的 CPU0-CPU3,這給我一個性能獎勵 a) 使用更快的時鐘核心,以及 b) 將所有執行緒保持在同一個物理 CPU 上.

有沒有辦法在 BIOS 中,或者在 Linux 的配​​置文件或引導選項中實現這一點?

具體的CPU型號有:

Intel(R) Xeon(R) CPU E5649 @ 2.53GHz(六核)

Intel(R) Xeon(R) CPU E5640 @ 2.67GHz(四核)

憤怒?!?

太瘋狂了,你知道嗎?它不受支持,可能對您的硬體不利。您應該在伺服器中使用同等規格的處理器。

我想您只需在taskset僅包含您希望使用的 CPU 核心的 cgroup 或 shield(或 via )中執行您的應用程序。您還可以使用numactl. 但實際上,您為什麼不完全移除較慢的 CPU,或者支付使系統符合規範所需的費用。

如果您的應用程序被硬編碼為使用 CPU0-CPU3,那麼顯而易見的事情可能就是物理交換套接字……但實際上,這裡只使用一個 CPU 執行。

如果您指的是 ProLiant DL380 G7 硬體,您的“更快” CPU 可能是 Nehalem 5500 系列 proc,而速度較慢的六核 CPU 是 Westmere。你有基準測試嗎?安裝了哪些特定的 CPU?

編輯:

好的,所以這些至少是同一代/步進的 CPU。但這仍然是個壞主意… CPU 規格的差異甚至不是那麼大(與諸如 3.47GHz 的 Intel X5690 之類的東西相比)。

引用自:https://serverfault.com/questions/618974