Commit af34a16d authored by Ian Rogers's avatar Ian Rogers Committed by Arnaldo Carvalho de Melo

perf vendor events intel: Remove info metrics erroneously in TopdownL1

Bug affected server metrics only. This doesn't impact default metrics
but if the TopdownL1 metric group is specified. Passes on the fix in:

  https://github.com/intel/perfmon/commit/b09f0a3953234ec592b4a872b87764c78da05d8bReviewed-by: default avatarKan Liang <kan.liang@linux.intel.com>
Signed-off-by: default avatarIan Rogers <irogers@google.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Caleb Biggers <caleb.biggers@intel.com>
Cc: Edward Baker <edward.baker@intel.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Perry Taylor <perry.taylor@intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Samantha Alt <samantha.alt@intel.com>
Cc: Weilin Wang <weilin.wang@intel.com>
Link: https://lore.kernel.org/r/20240321060016.1464787-13-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 7bce27f8
...@@ -732,9 +732,8 @@ ...@@ -732,9 +732,8 @@
{ {
"BriefDescription": "Average Parallel L2 cache miss data reads", "BriefDescription": "Average Parallel L2 cache miss data reads",
"MetricExpr": "tma_info_memory_latency_data_l2_mlp", "MetricExpr": "tma_info_memory_latency_data_l2_mlp",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_data_l2_mlp", "MetricName": "tma_info_memory_data_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "", "BriefDescription": "",
...@@ -745,9 +744,8 @@ ...@@ -745,9 +744,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]",
"MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l1d_cache_fill_bw_2t", "MetricName": "tma_info_memory_l1d_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads",
...@@ -764,9 +762,8 @@ ...@@ -764,9 +762,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]",
"MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l2_cache_fill_bw_2t", "MetricName": "tma_info_memory_l2_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L2 cache hits per kilo instruction for all request types (including speculative)", "BriefDescription": "L2 cache hits per kilo instruction for all request types (including speculative)",
...@@ -807,9 +804,8 @@ ...@@ -807,9 +804,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]",
"MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l3_cache_fill_bw_2t", "MetricName": "tma_info_memory_l3_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads",
...@@ -838,16 +834,14 @@ ...@@ -838,16 +834,14 @@
{ {
"BriefDescription": "Average Latency for L2 cache miss demand Loads", "BriefDescription": "Average Latency for L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD",
"MetricGroup": "Memory_Lat;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_Lat;Offcore",
"MetricName": "tma_info_memory_load_l2_miss_latency", "MetricName": "tma_info_memory_load_l2_miss_latency"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average Parallel L2 cache miss demand Loads", "BriefDescription": "Average Parallel L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_load_l2_mlp", "MetricName": "tma_info_memory_load_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)", "BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)",
...@@ -867,9 +861,8 @@ ...@@ -867,9 +861,8 @@
{ {
"BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses", "BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses",
"MetricExpr": "tma_info_memory_tlb_page_walks_utilization", "MetricExpr": "tma_info_memory_tlb_page_walks_utilization",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_page_walks_utilization", "MetricName": "tma_info_memory_page_walks_utilization"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses", "BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses",
......
...@@ -670,23 +670,20 @@ ...@@ -670,23 +670,20 @@
{ {
"BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts", "BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts",
"MetricExpr": "(100 * (1 - tma_core_bound / (((EXE_ACTIVITY.EXE_BOUND_0_PORTS + tma_core_bound * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) if tma_core_bound < (((EXE_ACTIVITY.EXE_BOUND_0_PORTS + tma_core_bound * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) else 1) if tma_info_system_smt_2t_utilization > 0.5 else 0)", "MetricExpr": "(100 * (1 - tma_core_bound / (((EXE_ACTIVITY.EXE_BOUND_0_PORTS + tma_core_bound * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) if tma_core_bound < (((EXE_ACTIVITY.EXE_BOUND_0_PORTS + tma_core_bound * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) else 1) if tma_info_system_smt_2t_utilization > 0.5 else 0)",
"MetricGroup": "Cor;SMT;TopdownL1;tma_L1_group", "MetricGroup": "Cor;SMT",
"MetricName": "tma_info_botlnk_core_bound_likely", "MetricName": "tma_info_botlnk_core_bound_likely"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Total pipeline cost of DSB (uop cache) misses - subset of the Instruction_Fetch_BW Bottleneck.", "BriefDescription": "Total pipeline cost of DSB (uop cache) misses - subset of the Instruction_Fetch_BW Bottleneck.",
"MetricExpr": "100 * (100 * (tma_fetch_latency * (DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) / ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 9 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(2 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) + tma_fetch_bandwidth * tma_mite / (tma_mite + tma_dsb)))", "MetricExpr": "100 * (100 * (tma_fetch_latency * (DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) / ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 9 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(2 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) + tma_fetch_bandwidth * tma_mite / (tma_mite + tma_dsb)))",
"MetricGroup": "DSBmiss;Fed;TopdownL1;tma_L1_group", "MetricGroup": "DSBmiss;Fed",
"MetricName": "tma_info_botlnk_dsb_misses", "MetricName": "tma_info_botlnk_dsb_misses"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Total pipeline cost of Instruction Cache misses - subset of the Big_Code Bottleneck.", "BriefDescription": "Total pipeline cost of Instruction Cache misses - subset of the Big_Code Bottleneck.",
"MetricExpr": "100 * (100 * (tma_fetch_latency * ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD) / ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 9 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(2 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD)))", "MetricExpr": "100 * (100 * (tma_fetch_latency * ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD) / ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 9 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(2 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD)))",
"MetricGroup": "Fed;FetchLat;IcMiss;TopdownL1;tma_L1_group", "MetricGroup": "Fed;FetchLat;IcMiss",
"MetricName": "tma_info_botlnk_ic_misses", "MetricName": "tma_info_botlnk_ic_misses"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts", "BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts",
...@@ -1045,9 +1042,8 @@ ...@@ -1045,9 +1042,8 @@
{ {
"BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_code_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_code_stlb_mpki",
"MetricGroup": "Fed;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Fed;MemoryTLB",
"MetricName": "tma_info_memory_code_stlb_mpki", "MetricName": "tma_info_memory_code_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]",
...@@ -1088,9 +1084,8 @@ ...@@ -1088,9 +1084,8 @@
{ {
"BriefDescription": "Average Parallel L2 cache miss data reads", "BriefDescription": "Average Parallel L2 cache miss data reads",
"MetricExpr": "tma_info_memory_latency_data_l2_mlp", "MetricExpr": "tma_info_memory_latency_data_l2_mlp",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_data_l2_mlp", "MetricName": "tma_info_memory_data_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Fill Buffer (FB) hits per kilo instructions for retired demand loads (L1D misses that merge into ongoing miss-handling entries)", "BriefDescription": "Fill Buffer (FB) hits per kilo instructions for retired demand loads (L1D misses that merge into ongoing miss-handling entries)",
...@@ -1107,9 +1102,8 @@ ...@@ -1107,9 +1102,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]",
"MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l1d_cache_fill_bw_2t", "MetricName": "tma_info_memory_l1d_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads",
...@@ -1132,23 +1126,20 @@ ...@@ -1132,23 +1126,20 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]",
"MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l2_cache_fill_bw_2t", "MetricName": "tma_info_memory_l2_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Rate of non silent evictions from the L2 cache per Kilo instruction", "BriefDescription": "Rate of non silent evictions from the L2 cache per Kilo instruction",
"MetricExpr": "1e3 * L2_LINES_OUT.NON_SILENT / INST_RETIRED.ANY", "MetricExpr": "1e3 * L2_LINES_OUT.NON_SILENT / INST_RETIRED.ANY",
"MetricGroup": "L2Evicts;Mem;Server;TopdownL1;tma_L1_group", "MetricGroup": "L2Evicts;Mem;Server",
"MetricName": "tma_info_memory_l2_evictions_nonsilent_pki", "MetricName": "tma_info_memory_l2_evictions_nonsilent_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Rate of silent evictions from the L2 cache per Kilo instruction where the evicted lines are dropped (no writeback to L3 or memory)", "BriefDescription": "Rate of silent evictions from the L2 cache per Kilo instruction where the evicted lines are dropped (no writeback to L3 or memory)",
"MetricExpr": "1e3 * L2_LINES_OUT.SILENT / INST_RETIRED.ANY", "MetricExpr": "1e3 * L2_LINES_OUT.SILENT / INST_RETIRED.ANY",
"MetricGroup": "L2Evicts;Mem;Server;TopdownL1;tma_L1_group", "MetricGroup": "L2Evicts;Mem;Server",
"MetricName": "tma_info_memory_l2_evictions_silent_pki", "MetricName": "tma_info_memory_l2_evictions_silent_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L2 cache hits per kilo instruction for all request types (including speculative)", "BriefDescription": "L2 cache hits per kilo instruction for all request types (including speculative)",
...@@ -1189,9 +1180,8 @@ ...@@ -1189,9 +1180,8 @@
{ {
"BriefDescription": "Average per-core data access bandwidth to the L3 cache [GB / sec]", "BriefDescription": "Average per-core data access bandwidth to the L3 cache [GB / sec]",
"MetricExpr": "64 * OFFCORE_REQUESTS.ALL_REQUESTS / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * OFFCORE_REQUESTS.ALL_REQUESTS / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW;Offcore",
"MetricName": "tma_info_memory_l3_cache_access_bw_2t", "MetricName": "tma_info_memory_l3_cache_access_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "", "BriefDescription": "",
...@@ -1202,9 +1192,8 @@ ...@@ -1202,9 +1192,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]",
"MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l3_cache_fill_bw_2t", "MetricName": "tma_info_memory_l3_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads",
...@@ -1233,16 +1222,14 @@ ...@@ -1233,16 +1222,14 @@
{ {
"BriefDescription": "Average Latency for L2 cache miss demand Loads", "BriefDescription": "Average Latency for L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD",
"MetricGroup": "Memory_Lat;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_Lat;Offcore",
"MetricName": "tma_info_memory_load_l2_miss_latency", "MetricName": "tma_info_memory_load_l2_miss_latency"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average Parallel L2 cache miss demand Loads", "BriefDescription": "Average Parallel L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_load_l2_mlp", "MetricName": "tma_info_memory_load_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)", "BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)",
...@@ -1253,9 +1240,8 @@ ...@@ -1253,9 +1240,8 @@
{ {
"BriefDescription": "STLB (2nd level TLB) data load speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) data load speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_load_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_load_stlb_mpki",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_load_stlb_mpki", "MetricName": "tma_info_memory_load_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Un-cacheable retired load per kilo instruction", "BriefDescription": "Un-cacheable retired load per kilo instruction",
...@@ -1273,16 +1259,14 @@ ...@@ -1273,16 +1259,14 @@
{ {
"BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses", "BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses",
"MetricExpr": "tma_info_memory_tlb_page_walks_utilization", "MetricExpr": "tma_info_memory_tlb_page_walks_utilization",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_page_walks_utilization", "MetricName": "tma_info_memory_page_walks_utilization"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "STLB (2nd level TLB) data store speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) data store speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_store_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_store_stlb_mpki",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_store_stlb_mpki", "MetricName": "tma_info_memory_store_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
...@@ -1313,9 +1297,8 @@ ...@@ -1313,9 +1297,8 @@
{ {
"BriefDescription": "Un-cacheable retired load per kilo instruction", "BriefDescription": "Un-cacheable retired load per kilo instruction",
"MetricExpr": "1e3 * MEM_LOAD_MISC_RETIRED.UC / INST_RETIRED.ANY", "MetricExpr": "1e3 * MEM_LOAD_MISC_RETIRED.UC / INST_RETIRED.ANY",
"MetricGroup": "Mem;TopdownL1;tma_L1_group", "MetricGroup": "Mem",
"MetricName": "tma_info_memory_uc_load_pki", "MetricName": "tma_info_memory_uc_load_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "", "BriefDescription": "",
......
...@@ -618,9 +618,8 @@ ...@@ -618,9 +618,8 @@
{ {
"BriefDescription": "Average Parallel L2 cache miss data reads", "BriefDescription": "Average Parallel L2 cache miss data reads",
"MetricExpr": "tma_info_memory_latency_data_l2_mlp", "MetricExpr": "tma_info_memory_latency_data_l2_mlp",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_data_l2_mlp", "MetricName": "tma_info_memory_data_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "", "BriefDescription": "",
...@@ -631,9 +630,8 @@ ...@@ -631,9 +630,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]",
"MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l1d_cache_fill_bw_2t", "MetricName": "tma_info_memory_l1d_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads",
...@@ -650,9 +648,8 @@ ...@@ -650,9 +648,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]",
"MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l2_cache_fill_bw_2t", "MetricName": "tma_info_memory_l2_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L2 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L2 cache true misses per kilo instruction for retired demand loads",
...@@ -669,9 +666,8 @@ ...@@ -669,9 +666,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]",
"MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l3_cache_fill_bw_2t", "MetricName": "tma_info_memory_l3_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads",
...@@ -700,16 +696,14 @@ ...@@ -700,16 +696,14 @@
{ {
"BriefDescription": "Average Latency for L2 cache miss demand Loads", "BriefDescription": "Average Latency for L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD",
"MetricGroup": "Memory_Lat;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_Lat;Offcore",
"MetricName": "tma_info_memory_load_l2_miss_latency", "MetricName": "tma_info_memory_load_l2_miss_latency"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average Parallel L2 cache miss demand Loads", "BriefDescription": "Average Parallel L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_load_l2_mlp", "MetricName": "tma_info_memory_load_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)", "BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)",
...@@ -729,9 +723,8 @@ ...@@ -729,9 +723,8 @@
{ {
"BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses", "BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses",
"MetricExpr": "tma_info_memory_tlb_page_walks_utilization", "MetricExpr": "tma_info_memory_tlb_page_walks_utilization",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_page_walks_utilization", "MetricName": "tma_info_memory_page_walks_utilization"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses", "BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses",
......
...@@ -667,23 +667,20 @@ ...@@ -667,23 +667,20 @@
{ {
"BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts", "BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts",
"MetricExpr": "(100 * (1 - max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots - (CYCLE_ACTIVITY.STALLS_MEM_ANY + EXE_ACTIVITY.BOUND_ON_STORES) / (CYCLE_ACTIVITY.STALLS_TOTAL + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) + EXE_ACTIVITY.BOUND_ON_STORES) * (topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots)) / (((cpu@EXE_ACTIVITY.3_PORTS_UTIL\\,umask\\=0x80@ + max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots - (CYCLE_ACTIVITY.STALLS_MEM_ANY + EXE_ACTIVITY.BOUND_ON_STORES) / (CYCLE_ACTIVITY.STALLS_TOTAL + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) + EXE_ACTIVITY.BOUND_ON_STORES) * (topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots)) * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) if max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots - (CYCLE_ACTIVITY.STALLS_MEM_ANY + EXE_ACTIVITY.BOUND_ON_STORES) / (CYCLE_ACTIVITY.STALLS_TOTAL + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) + EXE_ACTIVITY.BOUND_ON_STORES) * (topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots)) < (((cpu@EXE_ACTIVITY.3_PORTS_UTIL\\,umask\\=0x80@ + max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots - (CYCLE_ACTIVITY.STALLS_MEM_ANY + EXE_ACTIVITY.BOUND_ON_STORES) / (CYCLE_ACTIVITY.STALLS_TOTAL + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) + EXE_ACTIVITY.BOUND_ON_STORES) * (topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots)) * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) else 1) if tma_info_system_smt_2t_utilization > 0.5 else 0)", "MetricExpr": "(100 * (1 - max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots - (CYCLE_ACTIVITY.STALLS_MEM_ANY + EXE_ACTIVITY.BOUND_ON_STORES) / (CYCLE_ACTIVITY.STALLS_TOTAL + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) + EXE_ACTIVITY.BOUND_ON_STORES) * (topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots)) / (((cpu@EXE_ACTIVITY.3_PORTS_UTIL\\,umask\\=0x80@ + max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots - (CYCLE_ACTIVITY.STALLS_MEM_ANY + EXE_ACTIVITY.BOUND_ON_STORES) / (CYCLE_ACTIVITY.STALLS_TOTAL + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) + EXE_ACTIVITY.BOUND_ON_STORES) * (topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots)) * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) if max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots - (CYCLE_ACTIVITY.STALLS_MEM_ANY + EXE_ACTIVITY.BOUND_ON_STORES) / (CYCLE_ACTIVITY.STALLS_TOTAL + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) + EXE_ACTIVITY.BOUND_ON_STORES) * (topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots)) < (((cpu@EXE_ACTIVITY.3_PORTS_UTIL\\,umask\\=0x80@ + max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots - (CYCLE_ACTIVITY.STALLS_MEM_ANY + EXE_ACTIVITY.BOUND_ON_STORES) / (CYCLE_ACTIVITY.STALLS_TOTAL + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) + EXE_ACTIVITY.BOUND_ON_STORES) * (topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) + 5 * INT_MISC.CLEARS_COUNT / slots)) * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) else 1) if tma_info_system_smt_2t_utilization > 0.5 else 0)",
"MetricGroup": "Cor;SMT;TopdownL1;tma_L1_group", "MetricGroup": "Cor;SMT",
"MetricName": "tma_info_botlnk_core_bound_likely", "MetricName": "tma_info_botlnk_core_bound_likely"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Total pipeline cost of DSB (uop cache) misses - subset of the Instruction_Fetch_BW Bottleneck.", "BriefDescription": "Total pipeline cost of DSB (uop cache) misses - subset of the Instruction_Fetch_BW Bottleneck.",
"MetricExpr": "100 * (100 * ((5 * IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE - INT_MISC.UOP_DROPPING) / slots * (DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) / (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 10 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(3 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) + max(0, topdown\\-fe\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - INT_MISC.UOP_DROPPING / slots - (5 * IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE - INT_MISC.UOP_DROPPING) / slots) * ((IDQ.MITE_CYCLES_ANY - IDQ.MITE_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2) / ((IDQ.MITE_CYCLES_ANY - IDQ.MITE_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2 + (IDQ.DSB_CYCLES_ANY - IDQ.DSB_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2)))", "MetricExpr": "100 * (100 * ((5 * IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE - INT_MISC.UOP_DROPPING) / slots * (DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) / (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 10 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(3 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) + max(0, topdown\\-fe\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - INT_MISC.UOP_DROPPING / slots - (5 * IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE - INT_MISC.UOP_DROPPING) / slots) * ((IDQ.MITE_CYCLES_ANY - IDQ.MITE_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2) / ((IDQ.MITE_CYCLES_ANY - IDQ.MITE_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2 + (IDQ.DSB_CYCLES_ANY - IDQ.DSB_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2)))",
"MetricGroup": "DSBmiss;Fed;TopdownL1;tma_L1_group", "MetricGroup": "DSBmiss;Fed",
"MetricName": "tma_info_botlnk_dsb_misses", "MetricName": "tma_info_botlnk_dsb_misses"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Total pipeline cost of Instruction Cache misses - subset of the Big_Code Bottleneck.", "BriefDescription": "Total pipeline cost of Instruction Cache misses - subset of the Big_Code Bottleneck.",
"MetricExpr": "100 * (100 * ((5 * IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE - INT_MISC.UOP_DROPPING) / slots * (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD) / (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 10 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(3 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD)))", "MetricExpr": "100 * (100 * ((5 * IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE - INT_MISC.UOP_DROPPING) / slots * (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD) / (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 10 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(3 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD)))",
"MetricGroup": "Fed;FetchLat;IcMiss;TopdownL1;tma_L1_group", "MetricGroup": "Fed;FetchLat;IcMiss",
"MetricName": "tma_info_botlnk_ic_misses", "MetricName": "tma_info_botlnk_ic_misses"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts", "BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts",
...@@ -1045,16 +1042,14 @@ ...@@ -1045,16 +1042,14 @@
{ {
"BriefDescription": "\"Bus lock\" per kilo instruction", "BriefDescription": "\"Bus lock\" per kilo instruction",
"MetricExpr": "tma_info_memory_mix_bus_lock_pki", "MetricExpr": "tma_info_memory_mix_bus_lock_pki",
"MetricGroup": "Mem;TopdownL1;tma_L1_group", "MetricGroup": "Mem",
"MetricName": "tma_info_memory_bus_lock_pki", "MetricName": "tma_info_memory_bus_lock_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_code_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_code_stlb_mpki",
"MetricGroup": "Fed;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Fed;MemoryTLB",
"MetricName": "tma_info_memory_code_stlb_mpki", "MetricName": "tma_info_memory_code_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]",
...@@ -1095,9 +1090,8 @@ ...@@ -1095,9 +1090,8 @@
{ {
"BriefDescription": "Average Parallel L2 cache miss data reads", "BriefDescription": "Average Parallel L2 cache miss data reads",
"MetricExpr": "tma_info_memory_latency_data_l2_mlp", "MetricExpr": "tma_info_memory_latency_data_l2_mlp",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_data_l2_mlp", "MetricName": "tma_info_memory_data_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Fill Buffer (FB) hits per kilo instructions for retired demand loads (L1D misses that merge into ongoing miss-handling entries)", "BriefDescription": "Fill Buffer (FB) hits per kilo instructions for retired demand loads (L1D misses that merge into ongoing miss-handling entries)",
...@@ -1114,9 +1108,8 @@ ...@@ -1114,9 +1108,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]",
"MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l1d_cache_fill_bw_2t", "MetricName": "tma_info_memory_l1d_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads",
...@@ -1139,23 +1132,20 @@ ...@@ -1139,23 +1132,20 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]",
"MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l2_cache_fill_bw_2t", "MetricName": "tma_info_memory_l2_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Rate of non silent evictions from the L2 cache per Kilo instruction", "BriefDescription": "Rate of non silent evictions from the L2 cache per Kilo instruction",
"MetricExpr": "1e3 * L2_LINES_OUT.NON_SILENT / INST_RETIRED.ANY", "MetricExpr": "1e3 * L2_LINES_OUT.NON_SILENT / INST_RETIRED.ANY",
"MetricGroup": "L2Evicts;Mem;Server;TopdownL1;tma_L1_group", "MetricGroup": "L2Evicts;Mem;Server",
"MetricName": "tma_info_memory_l2_evictions_nonsilent_pki", "MetricName": "tma_info_memory_l2_evictions_nonsilent_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Rate of silent evictions from the L2 cache per Kilo instruction where the evicted lines are dropped (no writeback to L3 or memory)", "BriefDescription": "Rate of silent evictions from the L2 cache per Kilo instruction where the evicted lines are dropped (no writeback to L3 or memory)",
"MetricExpr": "1e3 * L2_LINES_OUT.SILENT / INST_RETIRED.ANY", "MetricExpr": "1e3 * L2_LINES_OUT.SILENT / INST_RETIRED.ANY",
"MetricGroup": "L2Evicts;Mem;Server;TopdownL1;tma_L1_group", "MetricGroup": "L2Evicts;Mem;Server",
"MetricName": "tma_info_memory_l2_evictions_silent_pki", "MetricName": "tma_info_memory_l2_evictions_silent_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L2 cache hits per kilo instruction for all demand loads (including speculative)", "BriefDescription": "L2 cache hits per kilo instruction for all demand loads (including speculative)",
...@@ -1190,9 +1180,8 @@ ...@@ -1190,9 +1180,8 @@
{ {
"BriefDescription": "Average per-core data access bandwidth to the L3 cache [GB / sec]", "BriefDescription": "Average per-core data access bandwidth to the L3 cache [GB / sec]",
"MetricExpr": "64 * OFFCORE_REQUESTS.ALL_REQUESTS / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * OFFCORE_REQUESTS.ALL_REQUESTS / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW;Offcore",
"MetricName": "tma_info_memory_l3_cache_access_bw_2t", "MetricName": "tma_info_memory_l3_cache_access_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "", "BriefDescription": "",
...@@ -1203,9 +1192,8 @@ ...@@ -1203,9 +1192,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]",
"MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l3_cache_fill_bw_2t", "MetricName": "tma_info_memory_l3_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads",
...@@ -1240,23 +1228,20 @@ ...@@ -1240,23 +1228,20 @@
{ {
"BriefDescription": "Average Latency for L2 cache miss demand Loads", "BriefDescription": "Average Latency for L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD",
"MetricGroup": "Memory_Lat;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_Lat;Offcore",
"MetricName": "tma_info_memory_load_l2_miss_latency", "MetricName": "tma_info_memory_load_l2_miss_latency"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average Parallel L2 cache miss demand Loads", "BriefDescription": "Average Parallel L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / cpu@OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD\\,cmask\\=0x1@", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / cpu@OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD\\,cmask\\=0x1@",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_load_l2_mlp", "MetricName": "tma_info_memory_load_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average Latency for L3 cache miss demand Loads", "BriefDescription": "Average Latency for L3 cache miss demand Loads",
"MetricExpr": "cpu@OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD\\,umask\\=0x10@ / OFFCORE_REQUESTS.L3_MISS_DEMAND_DATA_RD", "MetricExpr": "cpu@OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD\\,umask\\=0x10@ / OFFCORE_REQUESTS.L3_MISS_DEMAND_DATA_RD",
"MetricGroup": "Memory_Lat;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_Lat;Offcore",
"MetricName": "tma_info_memory_load_l3_miss_latency", "MetricName": "tma_info_memory_load_l3_miss_latency"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)", "BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)",
...@@ -1267,9 +1252,8 @@ ...@@ -1267,9 +1252,8 @@
{ {
"BriefDescription": "STLB (2nd level TLB) data load speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) data load speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_load_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_load_stlb_mpki",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_load_stlb_mpki", "MetricName": "tma_info_memory_load_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "\"Bus lock\" per kilo instruction", "BriefDescription": "\"Bus lock\" per kilo instruction",
...@@ -1293,16 +1277,14 @@ ...@@ -1293,16 +1277,14 @@
{ {
"BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses", "BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses",
"MetricExpr": "(ITLB_MISSES.WALK_PENDING + DTLB_LOAD_MISSES.WALK_PENDING + DTLB_STORE_MISSES.WALK_PENDING) / (2 * (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD))", "MetricExpr": "(ITLB_MISSES.WALK_PENDING + DTLB_LOAD_MISSES.WALK_PENDING + DTLB_STORE_MISSES.WALK_PENDING) / (2 * (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD))",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_page_walks_utilization", "MetricName": "tma_info_memory_page_walks_utilization"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "STLB (2nd level TLB) data store speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) data store speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_store_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_store_stlb_mpki",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_store_stlb_mpki", "MetricName": "tma_info_memory_store_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
...@@ -1332,9 +1314,8 @@ ...@@ -1332,9 +1314,8 @@
{ {
"BriefDescription": "Un-cacheable retired load per kilo instruction", "BriefDescription": "Un-cacheable retired load per kilo instruction",
"MetricExpr": "1e3 * MEM_LOAD_MISC_RETIRED.UC / INST_RETIRED.ANY", "MetricExpr": "1e3 * MEM_LOAD_MISC_RETIRED.UC / INST_RETIRED.ANY",
"MetricGroup": "Mem;TopdownL1;tma_L1_group", "MetricGroup": "Mem",
"MetricName": "tma_info_memory_uc_load_pki", "MetricName": "tma_info_memory_uc_load_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "", "BriefDescription": "",
......
...@@ -727,23 +727,20 @@ ...@@ -727,23 +727,20 @@
{ {
"BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts", "BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts",
"MetricExpr": "(100 * (1 - max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - topdown\\-mem\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound)) / (((cpu@EXE_ACTIVITY.3_PORTS_UTIL\\,umask\\=0x80@ + cpu@RS.EMPTY\\,umask\\=0x1@) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - EXE_ACTIVITY.BOUND_ON_LOADS) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * cpu@EXE_ACTIVITY.2_PORTS_UTIL\\,umask\\=0xc@)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIV_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - EXE_ACTIVITY.BOUND_ON_LOADS else (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * cpu@EXE_ACTIVITY.2_PORTS_UTIL\\,umask\\=0xc@) / CPU_CLK_UNHALTED.THREAD) if max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - topdown\\-mem\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound)) < (((cpu@EXE_ACTIVITY.3_PORTS_UTIL\\,umask\\=0x80@ + cpu@RS.EMPTY\\,umask\\=0x1@) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - EXE_ACTIVITY.BOUND_ON_LOADS) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * cpu@EXE_ACTIVITY.2_PORTS_UTIL\\,umask\\=0xc@)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIV_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - EXE_ACTIVITY.BOUND_ON_LOADS else (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * cpu@EXE_ACTIVITY.2_PORTS_UTIL\\,umask\\=0xc@) / CPU_CLK_UNHALTED.THREAD) else 1) if tma_info_system_smt_2t_utilization > 0.5 else 0) + 0 * slots", "MetricExpr": "(100 * (1 - max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - topdown\\-mem\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound)) / (((cpu@EXE_ACTIVITY.3_PORTS_UTIL\\,umask\\=0x80@ + cpu@RS.EMPTY\\,umask\\=0x1@) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - EXE_ACTIVITY.BOUND_ON_LOADS) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * cpu@EXE_ACTIVITY.2_PORTS_UTIL\\,umask\\=0xc@)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIV_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - EXE_ACTIVITY.BOUND_ON_LOADS else (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * cpu@EXE_ACTIVITY.2_PORTS_UTIL\\,umask\\=0xc@) / CPU_CLK_UNHALTED.THREAD) if max(0, topdown\\-be\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - topdown\\-mem\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound)) < (((cpu@EXE_ACTIVITY.3_PORTS_UTIL\\,umask\\=0x80@ + cpu@RS.EMPTY\\,umask\\=0x1@) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - EXE_ACTIVITY.BOUND_ON_LOADS) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * cpu@EXE_ACTIVITY.2_PORTS_UTIL\\,umask\\=0xc@)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIV_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - EXE_ACTIVITY.BOUND_ON_LOADS else (EXE_ACTIVITY.1_PORTS_UTIL + topdown\\-retiring / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) * cpu@EXE_ACTIVITY.2_PORTS_UTIL\\,umask\\=0xc@) / CPU_CLK_UNHALTED.THREAD) else 1) if tma_info_system_smt_2t_utilization > 0.5 else 0) + 0 * slots",
"MetricGroup": "Cor;SMT;TopdownL1;tma_L1_group", "MetricGroup": "Cor;SMT",
"MetricName": "tma_info_botlnk_core_bound_likely", "MetricName": "tma_info_botlnk_core_bound_likely"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Total pipeline cost of DSB (uop cache) misses - subset of the Instruction_Fetch_BW Bottleneck.", "BriefDescription": "Total pipeline cost of DSB (uop cache) misses - subset of the Instruction_Fetch_BW Bottleneck.",
"MetricExpr": "100 * (100 * ((topdown\\-fetch\\-lat / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - INT_MISC.UOP_DROPPING / slots) * (DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) / (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + INT_MISC.UNKNOWN_BRANCH_CYCLES / CPU_CLK_UNHALTED.THREAD) + min(3 * cpu@UOPS_RETIRED.MS\\,cmask\\=0x1\\,edge\\=0x1@ / (UOPS_RETIRED.SLOTS / UOPS_ISSUED.ANY) / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) + max(0, topdown\\-fe\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - INT_MISC.UOP_DROPPING / slots - (topdown\\-fetch\\-lat / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - INT_MISC.UOP_DROPPING / slots)) * ((IDQ.MITE_CYCLES_ANY - IDQ.MITE_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2) / ((IDQ.MITE_CYCLES_ANY - IDQ.MITE_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2 + (IDQ.DSB_CYCLES_ANY - IDQ.DSB_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2)))", "MetricExpr": "100 * (100 * ((topdown\\-fetch\\-lat / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - INT_MISC.UOP_DROPPING / slots) * (DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) / (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + INT_MISC.UNKNOWN_BRANCH_CYCLES / CPU_CLK_UNHALTED.THREAD) + min(3 * cpu@UOPS_RETIRED.MS\\,cmask\\=0x1\\,edge\\=0x1@ / (UOPS_RETIRED.SLOTS / UOPS_ISSUED.ANY) / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) + max(0, topdown\\-fe\\-bound / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - INT_MISC.UOP_DROPPING / slots - (topdown\\-fetch\\-lat / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - INT_MISC.UOP_DROPPING / slots)) * ((IDQ.MITE_CYCLES_ANY - IDQ.MITE_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2) / ((IDQ.MITE_CYCLES_ANY - IDQ.MITE_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2 + (IDQ.DSB_CYCLES_ANY - IDQ.DSB_CYCLES_OK) / (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD) / 2)))",
"MetricGroup": "DSBmiss;Fed;TopdownL1;tma_L1_group", "MetricGroup": "DSBmiss;Fed",
"MetricName": "tma_info_botlnk_dsb_misses", "MetricName": "tma_info_botlnk_dsb_misses"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Total pipeline cost of Instruction Cache misses - subset of the Big_Code Bottleneck.", "BriefDescription": "Total pipeline cost of Instruction Cache misses - subset of the Big_Code Bottleneck.",
"MetricExpr": "100 * (100 * ((topdown\\-fetch\\-lat / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - INT_MISC.UOP_DROPPING / slots) * (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD) / (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + INT_MISC.UNKNOWN_BRANCH_CYCLES / CPU_CLK_UNHALTED.THREAD) + min(3 * cpu@UOPS_RETIRED.MS\\,cmask\\=0x1\\,edge\\=0x1@ / (UOPS_RETIRED.SLOTS / UOPS_ISSUED.ANY) / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD)))", "MetricExpr": "100 * (100 * ((topdown\\-fetch\\-lat / (topdown\\-fe\\-bound + topdown\\-bad\\-spec + topdown\\-retiring + topdown\\-be\\-bound) - INT_MISC.UOP_DROPPING / slots) * (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD) / (ICACHE_DATA.STALLS / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + INT_MISC.UNKNOWN_BRANCH_CYCLES / CPU_CLK_UNHALTED.THREAD) + min(3 * cpu@UOPS_RETIRED.MS\\,cmask\\=0x1\\,edge\\=0x1@ / (UOPS_RETIRED.SLOTS / UOPS_ISSUED.ANY) / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD)))",
"MetricGroup": "Fed;FetchLat;IcMiss;TopdownL1;tma_L1_group", "MetricGroup": "Fed;FetchLat;IcMiss",
"MetricName": "tma_info_botlnk_ic_misses", "MetricName": "tma_info_botlnk_ic_misses"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts", "BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts",
...@@ -1113,16 +1110,14 @@ ...@@ -1113,16 +1110,14 @@
{ {
"BriefDescription": "\"Bus lock\" per kilo instruction", "BriefDescription": "\"Bus lock\" per kilo instruction",
"MetricExpr": "tma_info_memory_mix_bus_lock_pki", "MetricExpr": "tma_info_memory_mix_bus_lock_pki",
"MetricGroup": "Mem;TopdownL1;tma_L1_group", "MetricGroup": "Mem",
"MetricName": "tma_info_memory_bus_lock_pki", "MetricName": "tma_info_memory_bus_lock_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_code_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_code_stlb_mpki",
"MetricGroup": "Fed;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Fed;MemoryTLB",
"MetricName": "tma_info_memory_code_stlb_mpki", "MetricName": "tma_info_memory_code_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]",
...@@ -1163,9 +1158,8 @@ ...@@ -1163,9 +1158,8 @@
{ {
"BriefDescription": "Average Parallel L2 cache miss data reads", "BriefDescription": "Average Parallel L2 cache miss data reads",
"MetricExpr": "tma_info_memory_latency_data_l2_mlp", "MetricExpr": "tma_info_memory_latency_data_l2_mlp",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_data_l2_mlp", "MetricName": "tma_info_memory_data_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Fill Buffer (FB) hits per kilo instructions for retired demand loads (L1D misses that merge into ongoing miss-handling entries)", "BriefDescription": "Fill Buffer (FB) hits per kilo instructions for retired demand loads (L1D misses that merge into ongoing miss-handling entries)",
...@@ -1182,9 +1176,8 @@ ...@@ -1182,9 +1176,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]",
"MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l1d_cache_fill_bw_2t", "MetricName": "tma_info_memory_l1d_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads",
...@@ -1207,23 +1200,20 @@ ...@@ -1207,23 +1200,20 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]",
"MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l2_cache_fill_bw_2t", "MetricName": "tma_info_memory_l2_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Rate of non silent evictions from the L2 cache per Kilo instruction", "BriefDescription": "Rate of non silent evictions from the L2 cache per Kilo instruction",
"MetricExpr": "1e3 * L2_LINES_OUT.NON_SILENT / INST_RETIRED.ANY", "MetricExpr": "1e3 * L2_LINES_OUT.NON_SILENT / INST_RETIRED.ANY",
"MetricGroup": "L2Evicts;Mem;Server;TopdownL1;tma_L1_group", "MetricGroup": "L2Evicts;Mem;Server",
"MetricName": "tma_info_memory_l2_evictions_nonsilent_pki", "MetricName": "tma_info_memory_l2_evictions_nonsilent_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Rate of silent evictions from the L2 cache per Kilo instruction where the evicted lines are dropped (no writeback to L3 or memory)", "BriefDescription": "Rate of silent evictions from the L2 cache per Kilo instruction where the evicted lines are dropped (no writeback to L3 or memory)",
"MetricExpr": "1e3 * L2_LINES_OUT.SILENT / INST_RETIRED.ANY", "MetricExpr": "1e3 * L2_LINES_OUT.SILENT / INST_RETIRED.ANY",
"MetricGroup": "L2Evicts;Mem;Server;TopdownL1;tma_L1_group", "MetricGroup": "L2Evicts;Mem;Server",
"MetricName": "tma_info_memory_l2_evictions_silent_pki", "MetricName": "tma_info_memory_l2_evictions_silent_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L2 cache hits per kilo instruction for all request types (including speculative)", "BriefDescription": "L2 cache hits per kilo instruction for all request types (including speculative)",
...@@ -1264,9 +1254,8 @@ ...@@ -1264,9 +1254,8 @@
{ {
"BriefDescription": "Average per-core data access bandwidth to the L3 cache [GB / sec]", "BriefDescription": "Average per-core data access bandwidth to the L3 cache [GB / sec]",
"MetricExpr": "64 * OFFCORE_REQUESTS.ALL_REQUESTS / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * OFFCORE_REQUESTS.ALL_REQUESTS / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW;Offcore",
"MetricName": "tma_info_memory_l3_cache_access_bw_2t", "MetricName": "tma_info_memory_l3_cache_access_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "", "BriefDescription": "",
...@@ -1277,9 +1266,8 @@ ...@@ -1277,9 +1266,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]",
"MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l3_cache_fill_bw_2t", "MetricName": "tma_info_memory_l3_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads",
...@@ -1314,23 +1302,20 @@ ...@@ -1314,23 +1302,20 @@
{ {
"BriefDescription": "Average Latency for L2 cache miss demand Loads", "BriefDescription": "Average Latency for L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD",
"MetricGroup": "Memory_Lat;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_Lat;Offcore",
"MetricName": "tma_info_memory_load_l2_miss_latency", "MetricName": "tma_info_memory_load_l2_miss_latency"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average Parallel L2 cache miss demand Loads", "BriefDescription": "Average Parallel L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / cpu@OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD\\,cmask\\=0x1@", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / cpu@OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD\\,cmask\\=0x1@",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_load_l2_mlp", "MetricName": "tma_info_memory_load_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average Latency for L3 cache miss demand Loads", "BriefDescription": "Average Latency for L3 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.L3_MISS_DEMAND_DATA_RD / OFFCORE_REQUESTS.L3_MISS_DEMAND_DATA_RD", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.L3_MISS_DEMAND_DATA_RD / OFFCORE_REQUESTS.L3_MISS_DEMAND_DATA_RD",
"MetricGroup": "Memory_Lat;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_Lat;Offcore",
"MetricName": "tma_info_memory_load_l3_miss_latency", "MetricName": "tma_info_memory_load_l3_miss_latency"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)", "BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)",
...@@ -1341,9 +1326,8 @@ ...@@ -1341,9 +1326,8 @@
{ {
"BriefDescription": "STLB (2nd level TLB) data load speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) data load speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_load_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_load_stlb_mpki",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_load_stlb_mpki", "MetricName": "tma_info_memory_load_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "\"Bus lock\" per kilo instruction", "BriefDescription": "\"Bus lock\" per kilo instruction",
...@@ -1385,53 +1369,46 @@ ...@@ -1385,53 +1369,46 @@
{ {
"BriefDescription": "Off-core accesses per kilo instruction for modified write requests", "BriefDescription": "Off-core accesses per kilo instruction for modified write requests",
"MetricExpr": "1e3 * OCR.MODIFIED_WRITE.ANY_RESPONSE / INST_RETIRED.ANY", "MetricExpr": "1e3 * OCR.MODIFIED_WRITE.ANY_RESPONSE / INST_RETIRED.ANY",
"MetricGroup": "Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Offcore",
"MetricName": "tma_info_memory_offcore_mwrite_any_pki", "MetricName": "tma_info_memory_offcore_mwrite_any_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Off-core accesses per kilo instruction for reads-to-core requests (speculative; including in-core HW prefetches)", "BriefDescription": "Off-core accesses per kilo instruction for reads-to-core requests (speculative; including in-core HW prefetches)",
"MetricExpr": "1e3 * OCR.READS_TO_CORE.ANY_RESPONSE / INST_RETIRED.ANY", "MetricExpr": "1e3 * OCR.READS_TO_CORE.ANY_RESPONSE / INST_RETIRED.ANY",
"MetricGroup": "CacheHits;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "CacheHits;Offcore",
"MetricName": "tma_info_memory_offcore_read_any_pki", "MetricName": "tma_info_memory_offcore_read_any_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L3 cache misses per kilo instruction for reads-to-core requests (speculative; including in-core HW prefetches)", "BriefDescription": "L3 cache misses per kilo instruction for reads-to-core requests (speculative; including in-core HW prefetches)",
"MetricExpr": "1e3 * OCR.READS_TO_CORE.L3_MISS / INST_RETIRED.ANY", "MetricExpr": "1e3 * OCR.READS_TO_CORE.L3_MISS / INST_RETIRED.ANY",
"MetricGroup": "Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Offcore",
"MetricName": "tma_info_memory_offcore_read_l3m_pki", "MetricName": "tma_info_memory_offcore_read_l3m_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses", "BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses",
"MetricExpr": "(ITLB_MISSES.WALK_PENDING + DTLB_LOAD_MISSES.WALK_PENDING + DTLB_STORE_MISSES.WALK_PENDING) / (4 * (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD))", "MetricExpr": "(ITLB_MISSES.WALK_PENDING + DTLB_LOAD_MISSES.WALK_PENDING + DTLB_STORE_MISSES.WALK_PENDING) / (4 * (CPU_CLK_UNHALTED.DISTRIBUTED if #SMT_on else CPU_CLK_UNHALTED.THREAD))",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_page_walks_utilization", "MetricName": "tma_info_memory_page_walks_utilization"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average DRAM BW for Reads-to-Core (R2C) covering for memory attached to local- and remote-socket", "BriefDescription": "Average DRAM BW for Reads-to-Core (R2C) covering for memory attached to local- and remote-socket",
"MetricExpr": "64 * OCR.READS_TO_CORE.DRAM / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * OCR.READS_TO_CORE.DRAM / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "HPC;Mem;MemoryBW;SoC;TopdownL1;tma_L1_group", "MetricGroup": "HPC;Mem;MemoryBW;SoC",
"MetricName": "tma_info_memory_r2c_dram_bw", "MetricName": "tma_info_memory_r2c_dram_bw",
"MetricgroupNoGroup": "TopdownL1",
"PublicDescription": "Average DRAM BW for Reads-to-Core (R2C) covering for memory attached to local- and remote-socket. See R2C_Offcore_BW." "PublicDescription": "Average DRAM BW for Reads-to-Core (R2C) covering for memory attached to local- and remote-socket. See R2C_Offcore_BW."
}, },
{ {
"BriefDescription": "Average L3-cache miss BW for Reads-to-Core (R2C)", "BriefDescription": "Average L3-cache miss BW for Reads-to-Core (R2C)",
"MetricExpr": "64 * OCR.READS_TO_CORE.L3_MISS / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * OCR.READS_TO_CORE.L3_MISS / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "HPC;Mem;MemoryBW;SoC;TopdownL1;tma_L1_group", "MetricGroup": "HPC;Mem;MemoryBW;SoC",
"MetricName": "tma_info_memory_r2c_l3m_bw", "MetricName": "tma_info_memory_r2c_l3m_bw",
"MetricgroupNoGroup": "TopdownL1",
"PublicDescription": "Average L3-cache miss BW for Reads-to-Core (R2C). This covering going to DRAM or other memory off-chip memory tears. See R2C_Offcore_BW." "PublicDescription": "Average L3-cache miss BW for Reads-to-Core (R2C). This covering going to DRAM or other memory off-chip memory tears. See R2C_Offcore_BW."
}, },
{ {
"BriefDescription": "Average Off-core access BW for Reads-to-Core (R2C)", "BriefDescription": "Average Off-core access BW for Reads-to-Core (R2C)",
"MetricExpr": "64 * OCR.READS_TO_CORE.ANY_RESPONSE / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * OCR.READS_TO_CORE.ANY_RESPONSE / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "HPC;Mem;MemoryBW;SoC;TopdownL1;tma_L1_group", "MetricGroup": "HPC;Mem;MemoryBW;SoC",
"MetricName": "tma_info_memory_r2c_offcore_bw", "MetricName": "tma_info_memory_r2c_offcore_bw",
"MetricgroupNoGroup": "TopdownL1",
"PublicDescription": "Average Off-core access BW for Reads-to-Core (R2C). R2C account for demand or prefetch load/RFO/code access that fill data into the Core caches." "PublicDescription": "Average Off-core access BW for Reads-to-Core (R2C). R2C account for demand or prefetch load/RFO/code access that fill data into the Core caches."
}, },
{ {
...@@ -1458,9 +1435,8 @@ ...@@ -1458,9 +1435,8 @@
{ {
"BriefDescription": "STLB (2nd level TLB) data store speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) data store speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_store_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_store_stlb_mpki",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_store_stlb_mpki", "MetricName": "tma_info_memory_store_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
...@@ -1490,9 +1466,8 @@ ...@@ -1490,9 +1466,8 @@
{ {
"BriefDescription": "Un-cacheable retired load per kilo instruction", "BriefDescription": "Un-cacheable retired load per kilo instruction",
"MetricExpr": "1e3 * MEM_LOAD_MISC_RETIRED.UC / INST_RETIRED.ANY", "MetricExpr": "1e3 * MEM_LOAD_MISC_RETIRED.UC / INST_RETIRED.ANY",
"MetricGroup": "Mem;TopdownL1;tma_L1_group", "MetricGroup": "Mem",
"MetricName": "tma_info_memory_uc_load_pki", "MetricName": "tma_info_memory_uc_load_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "", "BriefDescription": "",
......
...@@ -652,23 +652,20 @@ ...@@ -652,23 +652,20 @@
{ {
"BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts", "BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts",
"MetricExpr": "(100 * (1 - tma_core_bound / (((EXE_ACTIVITY.EXE_BOUND_0_PORTS + tma_core_bound * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) if tma_core_bound < (((EXE_ACTIVITY.EXE_BOUND_0_PORTS + tma_core_bound * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) else 1) if tma_info_system_smt_2t_utilization > 0.5 else 0)", "MetricExpr": "(100 * (1 - tma_core_bound / (((EXE_ACTIVITY.EXE_BOUND_0_PORTS + tma_core_bound * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) if tma_core_bound < (((EXE_ACTIVITY.EXE_BOUND_0_PORTS + tma_core_bound * RS_EVENTS.EMPTY_CYCLES) / CPU_CLK_UNHALTED.THREAD * (CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY) / CPU_CLK_UNHALTED.THREAD * CPU_CLK_UNHALTED.THREAD + (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL)) / CPU_CLK_UNHALTED.THREAD if ARITH.DIVIDER_ACTIVE < CYCLE_ACTIVITY.STALLS_TOTAL - CYCLE_ACTIVITY.STALLS_MEM_ANY else (EXE_ACTIVITY.1_PORTS_UTIL + tma_retiring * EXE_ACTIVITY.2_PORTS_UTIL) / CPU_CLK_UNHALTED.THREAD) else 1) if tma_info_system_smt_2t_utilization > 0.5 else 0)",
"MetricGroup": "Cor;SMT;TopdownL1;tma_L1_group", "MetricGroup": "Cor;SMT",
"MetricName": "tma_info_botlnk_core_bound_likely", "MetricName": "tma_info_botlnk_core_bound_likely"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Total pipeline cost of DSB (uop cache) misses - subset of the Instruction_Fetch_BW Bottleneck.", "BriefDescription": "Total pipeline cost of DSB (uop cache) misses - subset of the Instruction_Fetch_BW Bottleneck.",
"MetricExpr": "100 * (100 * (tma_fetch_latency * (DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) / ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 9 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(2 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) + tma_fetch_bandwidth * tma_mite / (tma_mite + tma_dsb)))", "MetricExpr": "100 * (100 * (tma_fetch_latency * (DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) / ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 9 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(2 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD) + tma_fetch_bandwidth * tma_mite / (tma_mite + tma_dsb)))",
"MetricGroup": "DSBmiss;Fed;TopdownL1;tma_L1_group", "MetricGroup": "DSBmiss;Fed",
"MetricName": "tma_info_botlnk_dsb_misses", "MetricName": "tma_info_botlnk_dsb_misses"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Total pipeline cost of Instruction Cache misses - subset of the Big_Code Bottleneck.", "BriefDescription": "Total pipeline cost of Instruction Cache misses - subset of the Big_Code Bottleneck.",
"MetricExpr": "100 * (100 * (tma_fetch_latency * ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD) / ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 9 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(2 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD)))", "MetricExpr": "100 * (100 * (tma_fetch_latency * ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD) / ((ICACHE_16B.IFDATA_STALL + 2 * cpu@ICACHE_16B.IFDATA_STALL\\,cmask\\=0x1\\,edge\\=0x1@) / CPU_CLK_UNHALTED.THREAD + ICACHE_TAG.STALLS / CPU_CLK_UNHALTED.THREAD + (INT_MISC.CLEAR_RESTEER_CYCLES / CPU_CLK_UNHALTED.THREAD + 9 * BACLEARS.ANY / CPU_CLK_UNHALTED.THREAD) + min(2 * IDQ.MS_SWITCHES / CPU_CLK_UNHALTED.THREAD, 1) + DECODE.LCP / CPU_CLK_UNHALTED.THREAD + DSB2MITE_SWITCHES.PENALTY_CYCLES / CPU_CLK_UNHALTED.THREAD)))",
"MetricGroup": "Fed;FetchLat;IcMiss;TopdownL1;tma_L1_group", "MetricGroup": "Fed;FetchLat;IcMiss",
"MetricName": "tma_info_botlnk_ic_misses", "MetricName": "tma_info_botlnk_ic_misses"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts", "BriefDescription": "Probability of Core Bound bottleneck hidden by SMT-profiling artifacts",
...@@ -1021,9 +1018,8 @@ ...@@ -1021,9 +1018,8 @@
{ {
"BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_code_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_code_stlb_mpki",
"MetricGroup": "Fed;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Fed;MemoryTLB",
"MetricName": "tma_info_memory_code_stlb_mpki", "MetricName": "tma_info_memory_code_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]",
...@@ -1064,9 +1060,8 @@ ...@@ -1064,9 +1060,8 @@
{ {
"BriefDescription": "Average Parallel L2 cache miss data reads", "BriefDescription": "Average Parallel L2 cache miss data reads",
"MetricExpr": "tma_info_memory_latency_data_l2_mlp", "MetricExpr": "tma_info_memory_latency_data_l2_mlp",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_data_l2_mlp", "MetricName": "tma_info_memory_data_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Fill Buffer (FB) hits per kilo instructions for retired demand loads (L1D misses that merge into ongoing miss-handling entries)", "BriefDescription": "Fill Buffer (FB) hits per kilo instructions for retired demand loads (L1D misses that merge into ongoing miss-handling entries)",
...@@ -1083,9 +1078,8 @@ ...@@ -1083,9 +1078,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L1 data cache [GB / sec]",
"MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L1D.REPLACEMENT / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l1d_cache_fill_bw_2t", "MetricName": "tma_info_memory_l1d_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L1 cache true misses per kilo instruction for retired demand loads",
...@@ -1108,23 +1102,20 @@ ...@@ -1108,23 +1102,20 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L2 cache [GB / sec]",
"MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * L2_LINES_IN.ALL / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l2_cache_fill_bw_2t", "MetricName": "tma_info_memory_l2_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Rate of non silent evictions from the L2 cache per Kilo instruction", "BriefDescription": "Rate of non silent evictions from the L2 cache per Kilo instruction",
"MetricExpr": "1e3 * L2_LINES_OUT.NON_SILENT / INST_RETIRED.ANY", "MetricExpr": "1e3 * L2_LINES_OUT.NON_SILENT / INST_RETIRED.ANY",
"MetricGroup": "L2Evicts;Mem;Server;TopdownL1;tma_L1_group", "MetricGroup": "L2Evicts;Mem;Server",
"MetricName": "tma_info_memory_l2_evictions_nonsilent_pki", "MetricName": "tma_info_memory_l2_evictions_nonsilent_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Rate of silent evictions from the L2 cache per Kilo instruction where the evicted lines are dropped (no writeback to L3 or memory)", "BriefDescription": "Rate of silent evictions from the L2 cache per Kilo instruction where the evicted lines are dropped (no writeback to L3 or memory)",
"MetricExpr": "1e3 * L2_LINES_OUT.SILENT / INST_RETIRED.ANY", "MetricExpr": "1e3 * L2_LINES_OUT.SILENT / INST_RETIRED.ANY",
"MetricGroup": "L2Evicts;Mem;Server;TopdownL1;tma_L1_group", "MetricGroup": "L2Evicts;Mem;Server",
"MetricName": "tma_info_memory_l2_evictions_silent_pki", "MetricName": "tma_info_memory_l2_evictions_silent_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L2 cache hits per kilo instruction for all request types (including speculative)", "BriefDescription": "L2 cache hits per kilo instruction for all request types (including speculative)",
...@@ -1165,9 +1156,8 @@ ...@@ -1165,9 +1156,8 @@
{ {
"BriefDescription": "Average per-core data access bandwidth to the L3 cache [GB / sec]", "BriefDescription": "Average per-core data access bandwidth to the L3 cache [GB / sec]",
"MetricExpr": "64 * OFFCORE_REQUESTS.ALL_REQUESTS / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * OFFCORE_REQUESTS.ALL_REQUESTS / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW;Offcore",
"MetricName": "tma_info_memory_l3_cache_access_bw_2t", "MetricName": "tma_info_memory_l3_cache_access_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "", "BriefDescription": "",
...@@ -1178,9 +1168,8 @@ ...@@ -1178,9 +1168,8 @@
{ {
"BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]", "BriefDescription": "Average per-core data fill bandwidth to the L3 cache [GB / sec]",
"MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)", "MetricExpr": "64 * LONGEST_LAT_CACHE.MISS / 1e9 / (duration_time * 1e3 / 1e3)",
"MetricGroup": "Mem;MemoryBW;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryBW",
"MetricName": "tma_info_memory_l3_cache_fill_bw_2t", "MetricName": "tma_info_memory_l3_cache_fill_bw_2t"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads", "BriefDescription": "L3 cache true misses per kilo instruction for retired demand loads",
...@@ -1209,16 +1198,14 @@ ...@@ -1209,16 +1198,14 @@
{ {
"BriefDescription": "Average Latency for L2 cache miss demand Loads", "BriefDescription": "Average Latency for L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS.DEMAND_DATA_RD",
"MetricGroup": "Memory_Lat;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_Lat;Offcore",
"MetricName": "tma_info_memory_load_l2_miss_latency", "MetricName": "tma_info_memory_load_l2_miss_latency"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Average Parallel L2 cache miss demand Loads", "BriefDescription": "Average Parallel L2 cache miss demand Loads",
"MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD", "MetricExpr": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD / OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD",
"MetricGroup": "Memory_BW;Offcore;TopdownL1;tma_L1_group", "MetricGroup": "Memory_BW;Offcore",
"MetricName": "tma_info_memory_load_l2_mlp", "MetricName": "tma_info_memory_load_l2_mlp"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)", "BriefDescription": "Actual Average Latency for L1 data-cache miss demand load operations (in core cycles)",
...@@ -1229,9 +1216,8 @@ ...@@ -1229,9 +1216,8 @@
{ {
"BriefDescription": "STLB (2nd level TLB) data load speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) data load speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_load_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_load_stlb_mpki",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_load_stlb_mpki", "MetricName": "tma_info_memory_load_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "Un-cacheable retired load per kilo instruction", "BriefDescription": "Un-cacheable retired load per kilo instruction",
...@@ -1249,16 +1235,14 @@ ...@@ -1249,16 +1235,14 @@
{ {
"BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses", "BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses",
"MetricExpr": "tma_info_memory_tlb_page_walks_utilization", "MetricExpr": "tma_info_memory_tlb_page_walks_utilization",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_page_walks_utilization", "MetricName": "tma_info_memory_page_walks_utilization"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "STLB (2nd level TLB) data store speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) data store speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
"MetricExpr": "tma_info_memory_tlb_store_stlb_mpki", "MetricExpr": "tma_info_memory_tlb_store_stlb_mpki",
"MetricGroup": "Mem;MemoryTLB;TopdownL1;tma_L1_group", "MetricGroup": "Mem;MemoryTLB",
"MetricName": "tma_info_memory_store_stlb_mpki", "MetricName": "tma_info_memory_store_stlb_mpki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)", "BriefDescription": "STLB (2nd level TLB) code speculative misses per kilo instruction (misses of any page-size that complete the page walk)",
...@@ -1289,9 +1273,8 @@ ...@@ -1289,9 +1273,8 @@
{ {
"BriefDescription": "Un-cacheable retired load per kilo instruction", "BriefDescription": "Un-cacheable retired load per kilo instruction",
"MetricExpr": "1e3 * MEM_LOAD_MISC_RETIRED.UC / INST_RETIRED.ANY", "MetricExpr": "1e3 * MEM_LOAD_MISC_RETIRED.UC / INST_RETIRED.ANY",
"MetricGroup": "Mem;TopdownL1;tma_L1_group", "MetricGroup": "Mem",
"MetricName": "tma_info_memory_uc_load_pki", "MetricName": "tma_info_memory_uc_load_pki"
"MetricgroupNoGroup": "TopdownL1"
}, },
{ {
"BriefDescription": "", "BriefDescription": "",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment