What is Multi-threading

When symmetric multiprocessing (SMP) first becameimplements hyper-threading; this analysis should give
cheap enough to come within reach of the averageus a pretty good idea of what’s in store for
PC user, many hardware enthusiasts eager to get inPrescott. Also, it’s rumored that the current crop
on the SMP craze were asking what exactly (besidesof Pentium 4’s actually has SMT hardware
winning them the admiration and envy of their peers)built-in, it’s just disabled. (If you add this to the
a dual-processing rig could do for them. It was in thisrumor about x86-64 support being present but
context that the PC crowd started seriously talkingdisabled as well, then you can get some idea of just
about the advantages of multi threading. Years laterhow cautious Intel is when it comes to introducing
when Apple brought dual-processing to its PowerMacnew features. I’d kill to get my hands on a 2.8
line, SMP was officially mainstream, and with it multiGHz P4 with both SMT and x86-64 support turned
threading became a concern for the mainstream useron.)
as the ensuing round of benchmarks brought out theSMT, in a nutshell, allows the CPU to do what most
fact you really needed multi threaded applications tousers think it’s doing anyway: run more than one
get the full benefits of two processors.program at the same time. This might sound odd, so
Even though the PC enthusiast SMP craze has longin order to understand how it works this article will
since died down and, in an odd twist of fate, Macfirst look at how the current crop of CPUs handles
users are now many times more likely to be sportingmultitasking. Then, we’ll discuss a technique called
an SMP rig than their x86-using peers, multi threadingsuper threading before finally moving on to explain
is once again about to increase in importance for PChyper-threading in the last section. So if you’re
users. Intel’s next major IA-32 processorlooking to understand more about multi threading,
release, codenamed Prescott, will include a featuresymmetric multiprocessing systems, and
called simultaneous multi threading (SMT), also knownhyper-threading then this article is for you.
as hyper-threading. To take full advantage of SMT,As always, if you’ve read some of my previous
applications will need to be multi threaded; and justtech articles you’ll be well equipped to
like with SMP, the higher the degree of multiunderstand the discussion that follows. From here on
threading the more performance an application canout, I’ll assume you know the basics of pipelined
wring out of Prescott’s hardware.execution and are familiar with the general
Intel actually already uses SMT in a shipping design:architectural division between a processor’s front
the Pentium 4 Xeon. Near the end of this articleend and its execution core.
we’ll take a look at the way the Xeon