background image

14-36 Vol. 3B

POWER AND THERMAL MANAGEMENT

Enable Power Limit (bit 15): 0 = disabled; 1 = enabled.

Clamping Limitation (bit 16): Allow going below OS-requested P/T state setting during time window specified 
by bits 23:17.

Time Window for Power Limit (bits 23:17): Indicates the length of time window over which the power limit 
#1 will be used by the processor. The numeric value encoded by bits 23:17 is represented by the product of 
2^Y *F; where F is a single-digit decimal floating-point value between 1.0 and 1.3 with the fraction digit 
represented by bits 23:22, Y is an unsigned integer represented by bits 21:17. The unit of this field is specified 
by the “Time Units” field of MSR_RAPL_POWER_UNIT.

Lock (bit 31): If set, all write attempts to the MSR and corresponding policy 
MSR_PP0_POLICY/MSR_PP1_POLICY are ignored until next RESET.

MSR_PP0_ENERGY_STATUS/MSR_PP1_ENERGY_STATUS are read-only MSRs. They report the actual energy use 
for the respective power plane domains. These MSRs are updated every ~1msec. 

Total Energy Consumed (bits 31:0): The unsigned integer value represents the total amount of energy 
consumed since the last time this register was cleared. The unit of this field is specified by the “Energy Status 
Units” field of MSR_RAPL_POWER_UNIT. 

MSR_PP0_POLICY/MSR_PP1_POLICY provide balance power policy control for each power plane by providing 
inputs to the power budgeting management algorithm. On platforms that support PP0 (IA cores) and PP1 (uncore 
graphic device), the default values give priority to the non-IA power plane. These MSRs enable the PCU to balance 
power consumption between the IA cores and uncore graphic device. 

Priority Level (bits 4:0): Priority level input to the PCU for respective power plane. PP0 covers the IA 
processor cores, PP1 covers the uncore graphic device. The value 31 is considered highest priority.

MSR_PP0_PERF_STATUS is a read-only MSR. It reports the total time for which the PP0 domain was throttled due 
to the power limits. This MSR is supported only in server platform. Throttling in this context is defined as going 
below the OS-requested P-state or T-state. 

Figure 14-37.  MSR_PP0_ENERGY_STATUS/MSR_PP1_ENERGY_STATUS MSR

Figure 14-38.  MSR_PP0_POLICY/MSR_PP1_POLICY Register

63

0

Reserved

Total Energy Consumed

31

32

Reserved

63

4

0

Priority Level

5