Date: Tue, 10 Mar 2009 11:14:20 -0400 From: John Baldwin <jhb@freebsd.org> To: freebsd-smp@freebsd.org Cc: Robert Heron <robert@heron.pl>, Won De Erick <won.derick@yahoo.com> Subject: Re: only one logical CPU used in Xeon Message-ID: <200903101114.20634.jhb@freebsd.org> In-Reply-To: <719357.64276.qm@web45802.mail.sp1.yahoo.com> References: <719357.64276.qm@web45802.mail.sp1.yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200903101114.20634.jhb>