Intel 64 and IA-32 Architectures Software Developers Manual Volume 1, Basic Architecture

2-18 Vol. 1
INTEL
®
64 AND IA-32 ARCHITECTURES
engine and the system bus interface. After power up and initialization, each logical
processor can be independently directed to execute a specified thread, interrupted,
or halted.
HT Technology leverages the process and thread-level parallelism found in contem-
porary operating systems and high-performance applications by providing two or
more logical processors on a single chip. This configuration allows two or more
threads
1
to be executed simultaneously on each a physical processor. Each logical
processor executes instructions from an application thread using the resources in the
processor core. The core executes these threads concurrently, using out-of-order
instruction scheduling to maximize the use of execution units during each clock cycle.
2.2.5.1 Some Implementation Notes
All HT Technology configurations require:
A processor that supports HT Technology
A chipset and BIOS that utilize the technology
Operating system optimizations
See http://www.intel.com/products/ht/hyperthreading_more.htm for information.
At the firmware (BIOS) level, the basic procedures to initialize the logical processors
in a processor supporting HT Technology are the same as those for a traditional DP or
MP platform. The mechanisms that are described in the Multiprocessor Specification,
Version 1.4 to power-up and initialize physical processors in an MP system also apply
to logical processors in a processor that supports HT Technology.
An operating system designed to run on a traditional DP or MP platform may use
CPUID to determine the presence of hardware multi-threading support feature and
the number of logical processors they provide.
Although existing operating system and application code should run correctly on a
processor that supports HT Technology, some code modifications are recommended
to get the optimum benefit. These modifications are discussed in Chapter 7,
“Multiple-Processor Management,Intel® 64 and IA-32 Architectures Software
Developer’s Manual, Volume 3A.
2.2.6 Multi-Core Technology
Multi-core technology is another form of hardware multi-threading capability in IA-32
processor families. Multi-core technology enhances hardware multi-threading capa-
bility by providing two or more execution cores in a physical package.
The Intel Pentium processor Extreme Edition is the first member in the IA-32
processor family to introduce multi-core technology. The processor provides hard-
1. In the remainder of this document, the term “thread” will be used as a general term for the terms
“process” and “thread.