As I was toying around with my fit-PC2, I noticed that the default kernel is limited to one CPU, even though the Atom seems to properly support hyperthreading. In particular, I get a message in dmesg saying that a second CPU was found but not used.
Is there a good reason for this? It does seem a bit odd to leave such a hardware capability unused.
Thanks,
nha
NR_CPUS limited to 1 - why?
Re: NR_CPUS limited to 1 - why?
1) Have you got Ubuntu 8.04 or Ubuntu 9.04 ?
2) If Ubuntu 8.04, can you please post the result of "cat /proc/cpuinfo" ?
==> see prj's research : http://www.fit-pc2.com/forum/viewtopic.php?f=9&t=361
2) If Ubuntu 8.04, can you please post the result of "cat /proc/cpuinfo" ?
==> see prj's research : http://www.fit-pc2.com/forum/viewtopic.php?f=9&t=361
Re: NR_CPUS limited to 1 - why?
I find this a bit annoying as well. Having linux pre-installed by compulab I've expected that the OS supports all the announced components. This is not true for at least the following (and I'd say it is only partly true for the GMA500):
1. CPU (hyperthreading disabled)
2. LIRC (and no, I don't want to compile my own kernel)
Below you can find the /proc/cpuinfo on the pre-installed ubuntu 8.04:
1. CPU (hyperthreading disabled)
2. LIRC (and no, I don't want to compile my own kernel)
Below you can find the /proc/cpuinfo on the pre-installed ubuntu 8.04:
Code: Select all
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 28
model name : Intel(R) Atom(TM) CPU Z530 @ 1.60GHz
stepping : 2
cpu MHz : 1600.000
cache size : 512 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx est tm2 ssse3 xtpr lahf_lm
bogomips : 3194.09
clflush size : 64
Re: NR_CPUS limited to 1 - why?
SMP seems to be disabled because it triggers a bug in the PSB driver. There is also a problem with the c-states support and SMP.
I'm guessing that the ACPI is broken (read: not following the specifications) so a BIOS upgrade might fix this.
Perhaps Compulab was a bit quick in announcing Linux support but I do think they have done a great job in putting together a cool platform. There are very few platforms that has 100% open source support. Intel is getting a lot better at handing out specifications but in the case of the poulsbo chipset they've licensed the technology from Imagination Technologies which aren't open source friendly. In cases like this we have to resort to reverse engineering. It's sad the IP holders don't understand the benefits of open software (both theirs and ours).
Getting the IR driver working with 8.04 shouldn't be impossible but since I don't have IR in my FIT-PC2 I can't help you any further. Compulab has stated they are working on this but It's probably not that easy since nothing has turned up yet. The best we can do at the moment is reading up on the technical stuff and sending bug reports to compulab and the linux kernel people. Linux is a community thing you know
I'm guessing that the ACPI is broken (read: not following the specifications) so a BIOS upgrade might fix this.
Perhaps Compulab was a bit quick in announcing Linux support but I do think they have done a great job in putting together a cool platform. There are very few platforms that has 100% open source support. Intel is getting a lot better at handing out specifications but in the case of the poulsbo chipset they've licensed the technology from Imagination Technologies which aren't open source friendly. In cases like this we have to resort to reverse engineering. It's sad the IP holders don't understand the benefits of open software (both theirs and ours).
Getting the IR driver working with 8.04 shouldn't be impossible but since I don't have IR in my FIT-PC2 I can't help you any further. Compulab has stated they are working on this but It's probably not that easy since nothing has turned up yet. The best we can do at the moment is reading up on the technical stuff and sending bug reports to compulab and the linux kernel people. Linux is a community thing you know

Re: NR_CPUS limited to 1 - why?
Indeed, disabling SMP helps to overcome buffer overrun errors in PSB module (that cause display flickering on high resolutions).
Compulab's Linux support
Re: NR_CPUS limited to 1 - why?
Assuming my application is server only (X is not activated).
Can it performance benefit from changing this setting and re-compile of the kernel?
Can it performance benefit from changing this setting and re-compile of the kernel?
Re: NR_CPUS limited to 1 - why?
I'm running a 2.6.30 kernel (not Ubuntu though), with the SMP enabled, and compiling with multiple jobs (-j2 or -j3) does reduce compile times by about 5 to 20%. It isn't much, but that's because it isn't really an extra core but hyperthreading.
So yes it does increase performance slightly, but it probably isn't very noticeable in daily operation, just under high loads, so it might not be worth the effort.
So yes it does increase performance slightly, but it probably isn't very noticeable in daily operation, just under high loads, so it might not be worth the effort.