SMP vs UP on single P4 CPU systems with hyperthreading

Brian Fundakowski Feldman green at freebsd.org
Sat Nov 6 18:58:46 PST 2004


On Sat, Nov 06, 2004 at 06:48:33PM -0800, Zoltan Frombach wrote:
> I just upgraded my system from a Pentium III to a Pentium 4 with 
> hyperthreading. This is not a multiprocessor system, as I only have one 
> CPU. I disabled hyperthreading in the BIOS (it is an AWARD BIOS). Then I 
> installed FreeBSD 5.3-RELEASE. The first thing I've noticed in dmesg are 
> the following lines:
> 
> CPU: Intel(R) Pentium(R) 4 CPU 2.80GHz (2806.38-MHz 686-class CPU)
>  Origin = "GenuineIntel"  Id = 0xf29  Stepping = 9
>  Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
>  Hyperthreading: 2 logical CPUs
> 
> So even though I specifically disabled hyperthreading in the BIOS, FreeBSD 
> 5.3 still detects 2 logical CPUs. Is this by design? I guess, it is. So 
> therefore my question is this: Should I compile an SMP kernel or a UP 
> kernel? To make my decision more difficult, Scott Long posted recently in a 
> message the following: "We turned off SMP on i386 and amd64 because it is a 
> serious performance penalty for UP machines."
> 
> Should I look at my single CPU system as a UP machine, as it physically is 
> a uni processor machine. Or should I enable SMP in the kernel to take 
> advantage of the "2 logical SPUs" FreeBSD detects - even when I try to 
> disable this feature of the CPU in the BIOS... What is the official word in 
> this scenario? I'd really appreciate your advice.

It will be detected that you have the capability of using it, whether
or not you have enabled SMP.  It's probably going to be no performance
gain to enable SMP, since it also requires slower locking operation to
remain safe for SMP versus what is sufficient for a UP system.

-- 
Brian Fundakowski Feldman                           \'[ FreeBSD ]''''''''''\
  <> green at FreeBSD.org                               \  The Power to Serve! \
 Opinions expressed are my own.                       \,,,,,,,,,,,,,,,,,,,,,,\


More information about the freebsd-current mailing list