March 1, 2004

Intel Hyper-Threading on Linux: Fact or Myth

What is Hyper-Threading?

The short answer is an Intel P4 processor that fools software into thinking that there are two processors present. Hyper-Threading is a form of
simultaneous multithreading technology(SMT), where multiple threads of software applications can be run simultaneously on one processor. This is
achieved by duplicating the architectural state on each processor, while sharing one set of processor execution resources. The architectural state
tracks the flow of a program or thread, and the execution resources are the units on the processor that do the work: add, multiply, load, etc.
Hyper-Threading is a performance enhancement that was an after thought of the original P4 design. Real world performance showed that the P4 had some
performance penalties (dead time) caused by the optimizations and algorithms implemented in the pentium4 advanced architecture. With the fast L1 cache
and some additional registers, Intel put this dead time to good use. Hence, Hyper-Threading.


Click Here!