Hyperthreading hurts 5.3?

Anthony Atkielski atkielski.anthony at wanadoo.fr
Wed Jan 12 17:11:29 PST 2005

Scott Bennett writes:

SB> I notice that the 5.2.1 boot messages refer to the second core as an
SB> AP, which I'm guessing stands for "attached processor". If that
SB> guess is correct, then it means that only the first core is able to
SB> perform certain functions, and the AP core has to get the first core
SB> to do those things for it when it needs them done.

AP just stands for "application processor," from what I've seen. My
impression from snooping in the code and looking elsewhere is that an AP
is just a processor that is halted during system boot. The processor
that executes the boot sequence is the bootstrap processor (BSP). Once
the boot proceeds far enough to allow synchronization of multiple
processors, the other processors (APs all) are started by the BSP.

This doesn't necessarily mean that the BSP is special in any other way
outside of startup or shutdown, and hopefully it is not, as that would
defeat much of the conceptual purpose behind SMP. I know that on
operating systems that insist on keeping one processor special for
certain tasks, the speed of this processor often becomes a bottleneck on
heavily loaded systems, as it tops out trying to handle all the
"restricted" stuff for the other processors and itself.

SB> What Intel claims is essentially that the HT-enabled CPUs allow
SB> snappier responses in interactive processes when a CPU-bound process
SB> is running.

That I can believe.  One of the great advantages to a multiple-processor
system is that it's much less likely to bog down if a process decides to
hog a processor (unless the process runs multiple threads).  I think MP
is more interesting for its ability to run completely independent
processes or threads than it is for its ability to run multiple
threads doing the same thing.  Few applications require multiple
high-speed processors churning through code all at once.


More information about the freebsd-questions mailing list