background image

Vol. 3B 17-55

DEBUG, BRANCH PROFILE, TSC, AND RESOURCE MONITORING FEATURES

IA32_PQR_ASSOC.CLOS: The IA32_PQR_ASSOC MSR provides a COS field that OS/VMM can use to assign a 
logical processor to an available COS. The set of COS are common across all allocation features, meaning that 
multiple features may be supported in the same processor without additional software COS management 
overhead at context swap time. See Section 17.17.3.4 for details. 

17.17.3.2   Cache Allocation Technology: Resource Type and Capability Enumeration

CPUID leaf function 10H (Cache Allocation Technology Enumeration leaf) provides two or more sub-functions:

CAT Enumeration leaf sub-function 0 enumerates available resource types that support allocation control, i.e. 
by executing CPUID with EAX=10H and ECX=0H. Each supported resource type is represented by a bit field in 
CPUID.(EAX=10H, ECX=0):EBX[31:1]. The bit position of each set bit corresponds to a Resource ID (ResID), 
for instance ResID=1 is used to indicate L3 CAT support, and ResID=2 indicates L2 CAT support. The ResID is 
also the sub-leaf index that software must use to query details of the CAT capability of that resource type (see 
Figure 17-31). 

— EAX[4:0] reports the length of the capacity bitmask length using minus-one notation, i.e. a value of 15 

corresponds to the capability bitmask having length of 16 bits. Bits 31:5 of EAX are reserved.

Sub-functions of CPUID.EAX=10H with a non-zero ECX input matching a supported ResID enumerate the 
specific enforcement details of the corresponding ResID. The capabilities enumerated include the length of the 
capacity bitmasks and the number of Classes of Service for a given ResID. Software should query the capability 
of each available ResID that supports CAT from a sub-leaf of leaf 10H using the sub-leaf index reported by the 
corresponding non-zero bit in CPUID.(EAX=10H, ECX=0):EBX[31:1] in order to obtain additional feature 
details. 

CAT capability for L3 is enumerated by CPUID.(EAX=10H, ECX=1H), see Figure 17-32. The specific CAT 
capabilities reported by CPUID.(EAX=10H, ECX=1) are:

Figure 17-31.  CPUID.(EAX=10H, ECX=0H) Available Resource Type Identification

Figure 17-32.  L3 Cache Allocation Technology and CDP Enumeration 

0

2

31

CPUID.(EAX=10H, ECX=0H) Output: (EAX: Reserved; ECX: Reserved; EDX: Reserved)

EBX

L
3

1

Reserved

L

2

3

0

16

31

CPUID.(EAX=10H, ECX=ResID=1) Output: 

EDX

ECX

0

31

Reserved

15

EBX

0

31

Bitmask of Shareable Resource with Other executing entities

Reserved

COS_MAX

0

5

31

EAX

4

Reserved

CBM_LEN

1

2

CDP