only one logical CPU used in Xeon

John Baldwin jhb at freebsd.org
Tue Mar 10 08:14:39 PDT 2009


On Tuesday 10 March 2009 10:43:01 am Won De Erick wrote:
> 
> Hi,
> 
> I also have boxes with several Intel Xeon dual-core processors, and also got 
same results. 
> 
> With FreeBSD 6.2R:
> #sysctl -a | grep pci.enable
> hw.pci.enable_io_modes: 1    
> 
> I think 6.2 uses legacy interrupt (INTx) which allows sharing of IRQs and is 
CPU bounded(?). It is also probable that even MSI/MSIX-supported NIC drivers 
are used here, 6.2R still used the traditional interrupt mechanism.
> 
> With FreeBSD 7.1:
> #sysctl -a | grep pci.enable
> hw.pci.enable_msix: 1
> hw.pci.enable_msi: 1
> hw.pci.enable_io_modes: 1
> 
> Google would tell us that MSI/MSI-X allows control over which processor is 
chosen as the interrupt target. Does this explain the result?

MSI won't determine which CPUs are used.  Probably the submitter needs to try 
6.4.  My guess is that 6.2 thinks his extra cores are hyperthreads and thus 
has them disabled by default.  You can toggle machdep.hyperthreading_allowed 
(sysctl) if that is the case, but upgrading to 6.4 is probably better.

-- 
John Baldwin


More information about the freebsd-smp mailing list