Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 9 Jun 2004 12:22:43 -0400
From:      John Baldwin <jhb@FreeBSD.org>
To:        freebsd-hackers@FreeBSD.org
Subject:   Re: Hyperthreading question
Message-ID:  <200406091222.43436.jhb@FreeBSD.org>
In-Reply-To: <40C726EA.9060704@xwave.com>
References:  <20040609115052.D24917@lycra.luckie.org.nz> <40C726EA.9060704@xwave.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 09 June 2004 11:04 am, Dwayne MacKinnon wrote:
> Hello,
>
> 	I'm in charge of upgrading a number of boxes from 4.8-RELEASE from
> 4.10-RELEASE. My problem is this section of notes from the 4.9-RELEASE
> errata:
>
> (28 Oct 2003) Very late in the release cycle, a change was made to the
> HyperThreading (HTT) support on Intel=AE processors. HTT support is now
> enabled by default on SMP-capable kernels; as a result, the HTT kernel
> option is unnecessary and has been removed. The extra logical CPUs are
> always started so that they can handle interrupts, but are prevented
> from executing user processes by default. To enable the logical CPUs,
> change the value of the machdep.hlt_logical_cpus sysctl(8) variable from
> 1 to 0. This value can also be set from the loader as a tunable of the
> same name. This behavior is now identical to FreeBSD 5.X.
>
> 	My boss is pretty adamant about not wanting the logical CPUs started at
> all, let alone having them available for user processes. So, I'm
> wondering if there's any straightforward way to disable them. Kernel
> hacking is not a problem... we use custom kernels in our work anyway.
> But I'd really appreciate a pointer in the right direction, as well as a
> general idea of how difficult my life will get if I attempt this.
>
> 	(Note that I attempted to disable HT support in the BIOS. It didn't
> have any effect. The logical CPUs still launched.)

The CPUs are not used to schedule any user processes.  Unfortunately, if yo=
u=20
completely turn them off the box will lock up due to the way interrupts are=
=20
fielded in FreeBSD 4.x.  If you really don't want to use them, you can turn=
=20
off the use of TPR (there's some #define in a header, LOPRIO something I=20
think), but it will send your performance into the toilet.

=2D-=20
John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =3D  http://www.FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200406091222.43436.jhb>