SMP detection

Skylar Thompson skylar at
Wed Aug 30 21:31:08 UTC 2006

Jordi Carrillo wrote:
> 2006/8/30, backyard <backyard1454-bsd at>:
>> --- Jordi Carrillo <jordilin at> wrote:
>> > I've read that SMP should be disabled for
>> > performance issues (I did not know
>> > that before installing freebsd). I have a P4 3GHz
>> > with hyperthreading
>> > technology. I have the SMP-GENERIC kernel and it
>> > only launches one cpu. So,
>> > I've decided to disable SMP from BIOS. Is that ok?,
>> > knowing that I have a
>> > Smp enabled kernel? or should I install one without
>> > smp? If so, is there a
>> > way to install one already precompiled?
>> > Thanks in advance
>> >
>> > --
>> >
>> > _______________________________________________
>> > freebsd-questions at mailing list
>> >
>> > To unsubscribe, send any mail to
>> > "freebsd-questions-unsubscribe at"
>> >
>> if the system runs with one cpu now and you don't
>> enable smp with HT with the sysctl variable then you
>> should be ok. If your not doing SMP then recompiling
>> the kernel for single processor mode will make things
>> run a little quicker because the SMP code won't come
>> into play.
>> with HT disabling in FreeBSD is more for the security
>> issues about a potential exploit whereby one process
>> in one pipe can access the priveledged information of
>> a process in another pipe because the two cores share
>> one processor cache and thus one cache table. To my
>> knowledge this hasn't been exploited yet.
>> If you just install the generic kernel you it should
>> be only the uniprocessor one. I would just do a:
>> cd /usr/src && make buildworld && make
>> installkernel
>> as opposed to a binary version assuming you haven't
>> updated yet you won't have to install world but I
>> believe it must have the build in the source tree to
>> build a kernel. On your P4 though the difference
>> between SMP and uniproc may not be worth the trouble
>> because I don't think much of a gain would be made. on
>> a P1 a much different story...
>> if you aren't concerned with bad users or hackers
>> hitting the box I would just enable HT with the sysctl
>> variable. This will not make things run slower at all,
>> just (in theory) less secure, which is why the
>> veriable was created in the first place as I recall.
>> If you are concerned I would wait until you update
>> your system and then just build a GENERIC/CUSTOM
>> kernel without the SMP option set.
>> -brian
> I will disable smp from bios. If I have a smp kernel, I suppose there
> will
> be no problem after all. Would that be ok?
> The problem with having SMP enabled is that the smp kernel only
> detects one
> cpu and the system monitor only features one cpu as well as gkrellm (in
> Linux it shows two cpus). When compiling the system monitor shows the
> cpu at
> a maximum of 50%, so what's going on with the other 50%?
> writing machdep.hlt_logical_cpus to 2 in loader.conf does not solve
> anything.
I believe FreeBSD uses the other logical CPU to handle hardware
interrupts, which can still help performance. You can check dmesg to see
how it's actually handling it.

-- Skylar Thompson (skylar at

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 248 bytes
Desc: OpenPGP digital signature
Url :

More information about the freebsd-questions mailing list