Ubuntu – Why does Ubuntu 12.10 only see 8 cores

multi-core

In our lab we just bought a new machine with two 8-cores Intel(R) Xeon(R) CPU E5-2660 0 @ 2.20GHz processors which also support Hyper-Threading.

I would expect Ubuntu to see 32 processing units, however it only detects 8 of them (the equivalent of just one processor with Hyper-Threading disabled). The bios correctly reports a total of 32 processing units. I am using the i386 version of Ubuntu 12.10 desktop.

Any idea about how to solve this?

Best Answer

On 32-bit, it's how the kernel is hardwired when compiled. It includes a line in /usr/src/linux-source-3.2.0/debian.master/config/i386/config.common.i386 that reads:

CONFIG_NR_CPUS=8

which sets CPUs to 8. If you ensure you use the 64-bit (AMD64) CD, you will get up to 256 cores. If you use 32-bit(i386) version without hyper-threading, you get 8 working cores out of the total of 16, which is still a waste. So, I guess you need to use the 64-bit version if at all possible. You can try to file a bug complaining about the low limit.

I may file one later, but I'll post if I will.