Intel 253668-032US User Manual

Page of 806
Vol. 3   8-35
MULTIPLE-PROCESSOR MANAGEMENT
8.5 INTEL
®
 HYPER-THREADING TECHNOLOGY AND 
INTEL
®
 MULTI-CORE TECHNOLOGY
Intel Hyper-Threading Technology and Intel multi-core technology are extensions to 
Intel 64 and IA-32 architectures that enable a single physical processor to execute 
two or more separate code streams (called threads) concurrently. In Intel Hyper-
Threading Technology, a single processor core provides two logical processors that 
share execution resources (see Section 8.7, “Intel
Architecture”). In Intel multi-core technology, a physical processor package provides 
two or more processor cores. Both configurations require chipsets and a BIOS that 
support the technologies.
Software should not rely on processor names to determine whether a processor 
supports Intel Hyper-Threading Technology or Intel multi-core technology. Use the 
CPUID instruction to determine processor capability (see Section 8.6.2, “Initializing 
Multi-Core Processors”
). 
8.6 
DETECTING HARDWARE MULTI-THREADING 
SUPPORT AND TOPOLOGY
Use the CPUID instruction to detect the presence of hardware multi-threading 
support in a physical processor. Hardware multi-threading can support several vari-
eties of multigrade and/or Intel Hyper-Threading Technology. CPUID instruction 
provides several sets of parameter information to aid software enumerating topology 
information. The relevant topology enumeration parameters provided by CPUID 
include:
Hardware Multi-Threading feature flag (CPUID.1:EDX[28] = 1) — 
Indicates when set that the physical package is capable of supporting Intel 
Hyper-Threading Technology and/or multiple cores. 
Processor topology enumeration parameters for 8-bit APIC ID:
— Addressable IDs for Logical processors in the same Package 
(CPUID.1:EBX[23:16]) — Indicates the maximum number of addressable 
ID for logical processors in a physical package. Within a physical package, 
there may be addressable IDs that are not occupied by any logical 
processors. This parameter does not represents the hardware capability of 
the physical processor.
2
Addressable IDs for processor cores in the same Package
3
 
(CPUID.(EAX=4, ECX=0
4
):EAX[31:26] + 1 = Y) — Indicates the maximum 
2. Operating system and BIOS may implement features that reduce the number of logical proces-
sors available in a platform to applications at runtime to less than the number of physical pack-
ages times the number of hardware-capable logical processors per package.