Skip to content

Commit 5dd5610

Browse files
committed
add comments/docs
1 parent 7f005db commit 5dd5610

File tree

1 file changed

+21
-20
lines changed

1 file changed

+21
-20
lines changed

src/pcm-power.cpp

Lines changed: 21 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ double getNormalizedPCUCounter(uint32 unit, uint32 counter, const ServerUncoreCo
9494
namespace PERF_LIMIT_REASON_TPMI
9595
{
9696
// from https://github.com/intel/tpmi_power_management
97+
// https://github.com/intel/tpmi_power_management/blob/main/TPMI_Perf_Limit_reasons_rev3.pdf
9798
const auto PERF_LIMIT_REASON_TPMI_ID = 0xC;
9899
const auto PERF_LIMIT_REASON_TPMI_HEADER = 0x0;
99100
const auto PERF_LIMIT_REASON_TPMI_MAILBOX_INTERFACE = 0x8;
@@ -234,16 +235,16 @@ namespace PERF_LIMIT_REASON_TPMI
234235
MAX = 10
235236
};
236237
const char * Coarse_Grained_PLR_Bit_Definition_Strings[] = {
237-
"FREQUENCY",
238-
"CURRENT",
239-
"POWER",
240-
"THERMAL",
241-
"PLATFORM",
242-
"MCP",
243-
"RAS",
244-
"MISC",
245-
"QOS",
246-
"DFC"
238+
"FREQUENCY", // Limitation due to Turbo Ratio Limit (TRL)
239+
"CURRENT", // Package ICCmax or MT-Pmax
240+
"POWER", // Socket or Platform RAPL
241+
"THERMAL", // Thermal Throttling
242+
"PLATFORM", // Prochot or Hot VR
243+
"MCP", // freq limit due to a companion die like PCH
244+
"RAS", // freq limit due to RAS
245+
"MISC", // Freq limit from out-of-band SW (e.g. BMC)
246+
"QOS", // SST-CP, SST-BF, SST-TF
247+
"DFC" // Freq limitation due to Dynamic Freq Capping
247248
};
248249
enum Fine_Grained_PLR_Bit_Definition
249250
{
@@ -286,14 +287,14 @@ namespace PERF_LIMIT_REASON_TPMI
286287
FGData(const char * n, int c) : name(n), coarse_grained_mapping(c) {}
287288
};
288289
const FGData Fine_Grained_PLR_Bit_Definition_Data[] = {
289-
FGData("CDYN0", FREQUENCY),
290-
FGData("CDYN1", FREQUENCY),
291-
FGData("CDYN2", FREQUENCY),
292-
FGData("CDYN3", FREQUENCY),
293-
FGData("CDYN4", FREQUENCY),
294-
FGData("CDYN5", FREQUENCY),
295-
FGData("FCT", FREQUENCY),
296-
FGData("PCS_TRL", FREQUENCY),
290+
FGData("TRL/CDYN0", FREQUENCY), // Turbo Ratio Limit 0
291+
FGData("TRL/CDYN1", FREQUENCY), // Turbo Ratio Limit 1
292+
FGData("TRL/CDYN2", FREQUENCY), // Turbo Ratio Limit 2
293+
FGData("TRL/CDYN3", FREQUENCY), // Turbo Ratio Limit 3
294+
FGData("TRL/CDYN4", FREQUENCY), // Turbo Ratio Limit 4
295+
FGData("TRL/CDYN5", FREQUENCY), // Turbo Ratio Limit 5
296+
FGData("FCT", FREQUENCY), // Favored Core Turbo
297+
FGData("PCS_TRL", FREQUENCY), // Turbo Ratio Limit from out-of-band (BMC)
297298
FGData("MTPMAX", CURRENT),
298299
FGData("FAST_RAPL", POWER),
299300
FGData("PKG_PL1_MSR_TPMI", POWER),
@@ -309,8 +310,8 @@ namespace PERF_LIMIT_REASON_TPMI
309310
FGData("PLATFORM_PL2_MMIO", POWER),
310311
FGData("PLATFORM_PL2_PCS", POWER),
311312
FGData("RSVD", POWER),
312-
FGData("PER_CORE_THERMAL", THERMAL),
313-
FGData("UFS_DFC", DFC),
313+
FGData("PER_CORE_THERMAL", THERMAL), // Thermal Throttling
314+
FGData("UFS_DFC", DFC), // Dynamic Freq Capping
314315
FGData("XXPROCHOT", PLATFORM),
315316
FGData("HOT_VR", PLATFORM),
316317
FGData("RSVD2", PLATFORM),

0 commit comments

Comments
 (0)