IA-32 Intel® Architecture Optimization
7-50
initial APIC_ID (See Section 7.10 of
IA-32 Intel Architecture Software
Developer’s Manual
, Volume 3A for more details) associated with a
logical processor. The three levels are:
•
physical processor package. A PACKAGE_ID label can be used to
distinguish different physical packages within a cluster.
•
core: A physical processor package consists of one or more
processor cores. A CORE_ID label can be used to distinguish
different processor cores within a package.
•
SMT: A processor core provides one or more logical processors
sharing execution resources. A SMT_ID label can be used to
distinguish different logical processors in the same processor core.
Typically, each logical processor that is enabled by the operating system
and made available to application for thread-scheduling is represented
by a bit in an OS construct, commonly referred to as an affinity mask
8
.
Software can use an affinity mask to control the binding of a software
thread to a specific logical processor at runtime.
Software can query CPUID on each enabled logical processor to
assemble a table for each level of the three-level identifiers. These tables
can be used to track the topological relationships between
PACKAGE_ID, CORE_ID, and SMT_ID and to construct look-up tables
of initial APIC_ID and affinity masks. The sequence to assemble tables
of PACKAGE_ID, CORE_ID, and SMT_ID is shown in Example 7-11.
The example uses support routines described in Chapter 7 in the
Intel® Architecture Software Developer’s Manual, Volume 3A
8.
The number of non-zero bits in the affinity mask provided by the OS at runtime may be less
than the total number of logical processors available in the platform hardware, due to
various features implemented either in the BIOS or OS.
Summary of Contents for ARCHITECTURE IA-32
Page 1: ...IA 32 Intel Architecture Optimization Reference Manual Order Number 248966 013US April 2006...
Page 220: ...IA 32 Intel Architecture Optimization 3 40...
Page 434: ...IA 32 Intel Architecture Optimization 9 20...
Page 514: ...IA 32 Intel Architecture Optimization B 60...
Page 536: ...IA 32 Intel Architecture Optimization C 22...