在我们的实验室中,我们刚刚购买了一台新机器,该机器配备两个 8 核 Intel(R) Xeon(R) CPU E5-2660 0 @ 2.20GHz 处理器,该处理器也支持超线程。
我期望 Ubuntu 能够看到 32 个处理单元,但它仅检测到其中的 8 个(相当于一个禁用超线程的处理器)。BIOS 正确报告了总共 32 个处理单元。我使用的是 i386 版本的 Ubuntu 12.10 桌面。
有什么想法可以解决这个问题吗?
答案1
在 32 位上,这是内核在编译时硬编码的方式。它包含一行内容/usr/src/linux-source-3.2.0/debian.master/config/i386/config.common.i386
:
CONFIG_NR_CPUS=8
它将 CPU 设置为 8。如果您确保使用 64 位 (AMD64) CD,您将获得最多 256 个核心。如果您使用没有超线程的 32 位 (i386) 版本,您将获得总共 16 个工作核心中的 8 个,这仍然是一种浪费。所以,我猜你需要尽可能使用 64 位版本。你可以尝试提交错误抱怨限制太低。
我可能会稍后提交,但如果愿意的话,我会发布。