Date: Thu, 13 Jan 2005 02:11:27 +0100 From: Anthony Atkielski <atkielski.anthony@wanadoo.fr> To: freebsd-questions@freebsd.org Subject: Re: Hyperthreading hurts 5.3? Message-ID: <14810050413.20050113021127@wanadoo.fr> In-Reply-To: <200501122129.j0CLTSQo008877@mp.cs.niu.edu> References: <200501122129.j0CLTSQo008877@mp.cs.niu.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
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. -- Anthony
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?14810050413.20050113021127>