On my Fujitsu Primergy RX300S6 i got 2x Intel Xeon CPU X5650
and the Out-Of-The-Box-Xen-Kernel shows me 24 CPU’s.
Also the virt-manager offers me 24 CPU’s to use for my virtual machines.
When i start the machine with the Standard-Dektop-Kernel the kernel
only sees 12 CPU’s.
Below is the output of lscpu for both kernels.
According to /boot/config-3.1.9-1.4-desktop and /boot/config-3.1.9-1.4-xen
the number of CPU’s is set to 512 (CONFIG_NR_CPUS=512).
How can i teach my kernel to see the rest of the CPU’s ?
On 06/27/2012 07:06 AM, senblue wrote:
>
> On my Fujitsu Primergy RX300S6 i got 2x Intel Xeon CPU X5650
> and the Out-Of-The-Box-Xen-Kernel shows me 24 CPU’s.
> Also the virt-manager offers me 24 CPU’s to use for my virtual
> machines.
>
> When i start the machine with the Standard-Dektop-Kernel the kernel
> only sees 12 CPU’s.
>
> Below is the output of lscpu for both kernels.
>
> According to /boot/config-3.1.9-1.4-desktop and
> /boot/config-3.1.9-1.4-xen
> the number of CPU’s is set to 512 (CONFIG_NR_CPUS=512).
>
> How can i teach my kernel to see the rest of the CPU’s ?
>
> Any hint will be greatly appreciated.
You should compare the two versions of dmesg for a clue regarding why the
desktop only sees half of the CPUs. It may be a kernel bug.
I dont want to spam this board with excessive listings
therefore below only some of the output of dmesg concerning cpus.
And only from the desktop-kernel.
The kernel sees only one cpu (CPU0).
There is no obvious error message, while booting
the desktop-kernel.
Or am i missing something ?
As of my initial posting lscpu shows
two sockets, six cores per socket an one thread
per core , so 2x6x1 => 12 logical cpus
I made an online update to kernel 3.1.10-1.9
and tried the default-kernel and the vanilla-kernel.
Always the same result.
Booting an ubuntu-12.04-live-system with kernel 3.2.0-23-generic
gives me the 24 cpus like the xen-kernel of opensuse 12.1.
One can say, why not use the opensuse-xen-kernel ?
I changed to kvm because of totally unpredictable and
unexplainable system freezes with the xen-kernel.
Possibly these freezes where caused by bugs in the acpi-code,
because a second RX300 running stable for two month with acpi=off.
But i invested lot of time in buildding the virtual machines under
KVM. So i would prefer to stay with it.
On 06/28/2012 11:36 AM, senblue wrote:
>
> lwfinger;2471612 Wrote:
>> You should compare the two versions of dmesg for a clue regarding why
>> the
>> desktop only sees half of the CPUs. It may be a kernel bug.
>
>
> I dont want to spam this board with excessive listings
> therefore below only some of the output of dmesg concerning cpus.
If you read carefully, I never asked for you to post the dmesg output, but
recommended that you look at it carefully.
> Booting an ubuntu-12.04-live-system with kernel 3.2.0-23-generic
> gives me the 24 cpus like the xen-kernel of opensuse 12.1.
Obviously, that kernel bug was fixed between 3.1.0 and 3.2.0. You need to
implement a later version, either by installing one from the openSuSE kernel
repos, or by downloading the kernel source for 3.4.4 and building your own kernel.
Unfortunately it seemed not to b a kernel bug. I installed kernel-default-3.4.4-1.1.x86_64.rpm
and the problem remains.
I read the dmesg output, found the line:
0.000000] setup_percpu: NR_CPUS:512 nr_cpumask_bits:512 nr_cpu_ids:12 nr_node_ids:1
The NR_CPUS expands to CONFIG_NR_CPUS in the kernel-config. But i did not find something
like CONFIG_NR_CPU_IDS. After some googling i assumed that its somehow related to or controlled
by acpi. Since my machine is booted with “acpi=off” i changed that and voila got the
full numeber of 24 cpus.
But acpi was off for a reason (unpredictable server freezes). So i will give acpi=ht a shot.
It should disable ACPI system almost completely, but allows hyperthreading.
I wonder why the xen-kernel gives me my full 24 cpus in spite of acpi=off.
It must be some kernel-configuration i am not aware of. And i think there is lot of it .
On 06/29/2012 10:36 AM, senblue wrote:
>
> lwfinger;2471785 Wrote:
>> On 06/28/2012 11:36 AM, senblue wrote:
>>>
>>> lwfinger;2471612 Wrote:
>>
>>>> You should compare the two versions of dmesg for a clue regarding
>> why
>>>> the
>>>> desktop only sees half of the CPUs. It may be a kernel bug.
>>>
>>>
>>> I dont want to spam this board with excessive listings
>>> therefore below only some of the output of dmesg concerning cpus.
>>
>> If you read carefully, I never asked for you to post the dmesg output,
>> but
>> recommended that you look at it carefully.
>>
>> I thought the with the (minimal) dmesg output you or somebody
>> else would get a clue what is wrong.
>>
>>> Booting an ubuntu-12.04-live-system with kernel 3.2.0-23-generic
>>> gives me the 24 cpus like the xen-kernel of opensuse 12.1.
>>
>> Obviously, that kernel bug was fixed between 3.1.0 and 3.2.0. You need
>> to
>> implement a later version, either by installing one from the openSuSE
>> kernel
>> repos, or by downloading the kernel source for 3.4.4 and building your
>> own kernel.
>
>
> Unfortunately it seemed not to b a kernel bug. I installed
> kernel-default-3.4.4-1.1.x86_64.rpm
> and the problem remains.
> I read the dmesg output, found the line:
> 0.000000] setup_percpu: NR_CPUS:512 nr_cpumask_bits:512 nr_cpu_ids:12
> nr_node_ids:1
> CONFIG_NR_CPUS
> The NR_CPUS expands to CONFIG_NR_CPUS in the kernel-config. But i did
> not find something
> like CONFIG_NR_CPU_IDS. After some googling i assumed that its somehow
> related to or controlled
> by acpi. Since my machine is booted with “acpi=off” i changed that and
> voila got the
> full numeber of 24 cpus.
> But acpi was off for a reason (unpredictable server freezes). So i will
> give acpi=ht a shot.
> It should disable ACPI system almost completely, but allows
> hyperthreading.
The CONFIG_NR_CPUS parameter controls the maximum number that are allowed. The
discovery process while booting tells you how many there are. The standard
setting for the kernel parameter CONFIG_SCHED_SMT is “y”, thus they should be
enabled.