1705ed549SIlkka Koskinen[
2705ed549SIlkka Koskinen    {
3fe9d8c08SIlkka Koskinen	"MetricName": "branch_miss_pred_rate",
4705ed549SIlkka Koskinen	"MetricExpr": "BR_MIS_PRED / BR_PRED",
5705ed549SIlkka Koskinen	"BriefDescription": "Branch predictor misprediction rate. May not count branches that are never resolved because they are in the misprediction shadow of an earlier branch",
6fe9d8c08SIlkka Koskinen	"MetricGroup": "branch",
7fe9d8c08SIlkka Koskinen        "ScaleUnit": "100%"
8705ed549SIlkka Koskinen    },
9705ed549SIlkka Koskinen    {
10fe9d8c08SIlkka Koskinen	"MetricName": "bus_utilization",
11fe9d8c08SIlkka Koskinen	"MetricExpr": "((BUS_ACCESS / (BUS_CYCLES * 1)) * 100)",
12705ed549SIlkka Koskinen	"BriefDescription": "Core-to-uncore bus utilization",
13705ed549SIlkka Koskinen	"MetricGroup": "Bus",
14fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of bus cycles"
15705ed549SIlkka Koskinen    },
16705ed549SIlkka Koskinen    {
17fe9d8c08SIlkka Koskinen        "MetricName": "l1d_cache_miss_ratio",
18fe9d8c08SIlkka Koskinen        "MetricExpr": "(L1D_CACHE_REFILL / L1D_CACHE)",
19fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures the ratio of level 1 data cache accesses missed to the total number of level 1 data cache accesses. This gives an indication of the effectiveness of the level 1 data cache.",
20fe9d8c08SIlkka Koskinen        "MetricGroup": "Miss_Ratio;L1D_Cache_Effectiveness",
21fe9d8c08SIlkka Koskinen        "ScaleUnit": "1per cache access"
22705ed549SIlkka Koskinen    },
23705ed549SIlkka Koskinen    {
24fe9d8c08SIlkka Koskinen        "MetricName": "l1i_cache_miss_ratio",
25fe9d8c08SIlkka Koskinen        "MetricExpr": "(L1I_CACHE_REFILL / L1I_CACHE)",
26fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures the ratio of level 1 instruction cache accesses missed to the total number of level 1 instruction cache accesses. This gives an indication of the effectiveness of the level 1 instruction cache.",
27fe9d8c08SIlkka Koskinen        "MetricGroup": "Miss_Ratio;L1I_Cache_Effectiveness",
28fe9d8c08SIlkka Koskinen        "ScaleUnit": "1per cache access"
29fe9d8c08SIlkka Koskinen    },
30fe9d8c08SIlkka Koskinen    {
31fe9d8c08SIlkka Koskinen	"MetricName": "Miss_Ratio;l1d_cache_read_miss",
32705ed549SIlkka Koskinen	"MetricExpr": "L1D_CACHE_LMISS_RD / L1D_CACHE_RD",
33705ed549SIlkka Koskinen	"BriefDescription": "L1D cache read miss rate",
34705ed549SIlkka Koskinen	"MetricGroup": "Cache",
35fe9d8c08SIlkka Koskinen        "ScaleUnit": "1per cache read access"
36705ed549SIlkka Koskinen    },
37705ed549SIlkka Koskinen    {
38fe9d8c08SIlkka Koskinen        "MetricName": "l2_cache_miss_ratio",
39fe9d8c08SIlkka Koskinen        "MetricExpr": "(L2D_CACHE_REFILL / L2D_CACHE)",
40fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures the ratio of level 2 cache accesses missed to the total number of level 2 cache accesses. This gives an indication of the effectiveness of the level 2 cache, which is a unified cache that stores both data and instruction. Note that cache accesses in this cache are either data memory access or instruction fetch as this is a unified cache.",
41fe9d8c08SIlkka Koskinen        "MetricGroup": "Miss_Ratio;L2_Cache_Effectiveness",
42fe9d8c08SIlkka Koskinen        "ScaleUnit": "1per cache access"
43705ed549SIlkka Koskinen    },
44705ed549SIlkka Koskinen    {
45fe9d8c08SIlkka Koskinen	"MetricName": "l1i_cache_read_miss_rate",
46705ed549SIlkka Koskinen	"MetricExpr": "L1I_CACHE_LMISS / L1I_CACHE",
47705ed549SIlkka Koskinen	"BriefDescription": "L1I cache read miss rate",
48705ed549SIlkka Koskinen	"MetricGroup": "Cache",
49fe9d8c08SIlkka Koskinen        "ScaleUnit": "1per cache access"
50705ed549SIlkka Koskinen    },
51705ed549SIlkka Koskinen    {
52fe9d8c08SIlkka Koskinen	"MetricName": "l2d_cache_read_miss_rate",
53705ed549SIlkka Koskinen	"MetricExpr": "L2D_CACHE_LMISS_RD / L2D_CACHE_RD",
54705ed549SIlkka Koskinen	"BriefDescription": "L2 cache read miss rate",
55705ed549SIlkka Koskinen	"MetricGroup": "Cache",
56fe9d8c08SIlkka Koskinen        "ScaleUnit": "1per cache read access"
57705ed549SIlkka Koskinen    },
58705ed549SIlkka Koskinen    {
59fe9d8c08SIlkka Koskinen	"MetricName": "l1d_cache_miss_mpki",
60fe9d8c08SIlkka Koskinen	"MetricExpr": "(L1D_CACHE_LMISS_RD * 1e3) / INST_RETIRED",
61705ed549SIlkka Koskinen	"BriefDescription": "Misses per thousand instructions (data)",
62705ed549SIlkka Koskinen	"MetricGroup": "Cache",
63fe9d8c08SIlkka Koskinen        "ScaleUnit": "1MPKI"
64705ed549SIlkka Koskinen    },
65705ed549SIlkka Koskinen    {
66fe9d8c08SIlkka Koskinen	"MetricName": "l1i_cache_miss_mpki",
67fe9d8c08SIlkka Koskinen	"MetricExpr": "(L1I_CACHE_LMISS * 1e3) / INST_RETIRED",
68705ed549SIlkka Koskinen	"BriefDescription": "Misses per thousand instructions (instruction)",
69705ed549SIlkka Koskinen	"MetricGroup": "Cache",
70fe9d8c08SIlkka Koskinen        "ScaleUnit": "1MPKI"
71705ed549SIlkka Koskinen    },
72705ed549SIlkka Koskinen    {
73fe9d8c08SIlkka Koskinen        "MetricName": "simd_percentage",
74fe9d8c08SIlkka Koskinen        "MetricExpr": "((ASE_SPEC / INST_SPEC) * 100)",
75fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures advanced SIMD operations as a percentage of total operations speculatively executed.",
76fe9d8c08SIlkka Koskinen        "MetricGroup": "Operation_Mix",
77fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of operations"
78705ed549SIlkka Koskinen    },
79705ed549SIlkka Koskinen    {
80fe9d8c08SIlkka Koskinen        "MetricName": "crypto_percentage",
81fe9d8c08SIlkka Koskinen        "MetricExpr": "((CRYPTO_SPEC / INST_SPEC) * 100)",
82fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures crypto operations as a percentage of operations speculatively executed.",
83fe9d8c08SIlkka Koskinen        "MetricGroup": "Operation_Mix",
84fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of operations"
85705ed549SIlkka Koskinen    },
86705ed549SIlkka Koskinen    {
87fe9d8c08SIlkka Koskinen	"MetricName": "gflops",
88fe9d8c08SIlkka Koskinen	"MetricExpr": "VFP_SPEC / (duration_time * 1e9)",
89705ed549SIlkka Koskinen	"BriefDescription": "Giga-floating point operations per second",
90fe9d8c08SIlkka Koskinen	"MetricGroup": "InstructionMix"
91705ed549SIlkka Koskinen    },
92705ed549SIlkka Koskinen    {
93fe9d8c08SIlkka Koskinen        "MetricName": "integer_dp_percentage",
94fe9d8c08SIlkka Koskinen        "MetricExpr": "((DP_SPEC / INST_SPEC) * 100)",
95fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures scalar integer operations as a percentage of operations speculatively executed.",
96fe9d8c08SIlkka Koskinen        "MetricGroup": "Operation_Mix",
97fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of operations"
98705ed549SIlkka Koskinen    },
99705ed549SIlkka Koskinen    {
100fe9d8c08SIlkka Koskinen        "MetricName": "ipc",
101fe9d8c08SIlkka Koskinen        "MetricExpr": "(INST_RETIRED / CPU_CYCLES)",
102fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures the number of instructions retired per cycle.",
103fe9d8c08SIlkka Koskinen        "MetricGroup": "General",
104fe9d8c08SIlkka Koskinen        "ScaleUnit": "1per cycle"
105705ed549SIlkka Koskinen    },
106705ed549SIlkka Koskinen    {
107fe9d8c08SIlkka Koskinen        "MetricName": "load_percentage",
108fe9d8c08SIlkka Koskinen        "MetricExpr": "((LD_SPEC / INST_SPEC) * 100)",
109fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures load operations as a percentage of operations speculatively executed.",
110fe9d8c08SIlkka Koskinen        "MetricGroup": "Operation_Mix",
111fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of operations"
112705ed549SIlkka Koskinen    },
113705ed549SIlkka Koskinen    {
114fe9d8c08SIlkka Koskinen	"MetricName": "load_store_spec_rate",
115fe9d8c08SIlkka Koskinen	"MetricExpr": "((LDST_SPEC / INST_SPEC) * 100)",
116fe9d8c08SIlkka Koskinen	"BriefDescription": "The rate of load or store instructions speculatively executed to overall instructions speclatively executed",
117fe9d8c08SIlkka Koskinen        "MetricGroup": "Operation_Mix",
118fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of operations"
119705ed549SIlkka Koskinen    },
120705ed549SIlkka Koskinen    {
121fe9d8c08SIlkka Koskinen	"MetricName": "retired_mips",
122fe9d8c08SIlkka Koskinen	"MetricExpr": "INST_RETIRED / (duration_time * 1e6)",
123705ed549SIlkka Koskinen	"BriefDescription": "Millions of instructions per second",
124fe9d8c08SIlkka Koskinen	"MetricGroup": "InstructionMix"
125705ed549SIlkka Koskinen    },
126705ed549SIlkka Koskinen    {
127fe9d8c08SIlkka Koskinen	"MetricName": "spec_utilization_mips",
128fe9d8c08SIlkka Koskinen	"MetricExpr": "INST_SPEC / (duration_time * 1e6)",
129705ed549SIlkka Koskinen	"BriefDescription": "Millions of instructions per second",
130fe9d8c08SIlkka Koskinen	"MetricGroup": "PEutilization"
131705ed549SIlkka Koskinen    },
132705ed549SIlkka Koskinen    {
133fe9d8c08SIlkka Koskinen	"MetricName": "pc_write_spec_rate",
134fe9d8c08SIlkka Koskinen	"MetricExpr": "((PC_WRITE_SPEC / INST_SPEC) * 100)",
135fe9d8c08SIlkka Koskinen	"BriefDescription": "The rate of software change of the PC speculatively executed to overall instructions speclatively executed",
136fe9d8c08SIlkka Koskinen        "MetricGroup": "Operation_Mix",
137fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of operations"
138705ed549SIlkka Koskinen    },
139705ed549SIlkka Koskinen    {
140fe9d8c08SIlkka Koskinen        "MetricName": "store_percentage",
141fe9d8c08SIlkka Koskinen        "MetricExpr": "((ST_SPEC / INST_SPEC) * 100)",
142fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures store operations as a percentage of operations speculatively executed.",
143fe9d8c08SIlkka Koskinen        "MetricGroup": "Operation_Mix",
144fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of operations"
145705ed549SIlkka Koskinen    },
146705ed549SIlkka Koskinen    {
147fe9d8c08SIlkka Koskinen        "MetricName": "scalar_fp_percentage",
148fe9d8c08SIlkka Koskinen        "MetricExpr": "((VFP_SPEC / INST_SPEC) * 100)",
149fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures scalar floating point operations as a percentage of operations speculatively executed.",
150fe9d8c08SIlkka Koskinen        "MetricGroup": "Operation_Mix",
151fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of operations"
152705ed549SIlkka Koskinen    },
153705ed549SIlkka Koskinen    {
154fe9d8c08SIlkka Koskinen        "MetricName": "retired_rate",
155705ed549SIlkka Koskinen        "MetricExpr": "OP_RETIRED / OP_SPEC",
156fe9d8c08SIlkka Koskinen        "BriefDescription": "Of all the micro-operations issued, what percentage are retired(committed)",
157fe9d8c08SIlkka Koskinen        "MetricGroup": "General",
158fe9d8c08SIlkka Koskinen        "ScaleUnit": "100%"
159705ed549SIlkka Koskinen    },
160705ed549SIlkka Koskinen    {
161fe9d8c08SIlkka Koskinen	"MetricName": "wasted",
162fe9d8c08SIlkka Koskinen	"MetricExpr": "1 - (OP_RETIRED / (CPU_CYCLES * #slots))",
163fe9d8c08SIlkka Koskinen        "BriefDescription": "Of all the micro-operations issued, what proportion are lost",
164fe9d8c08SIlkka Koskinen	"MetricGroup": "General",
165fe9d8c08SIlkka Koskinen	"ScaleUnit": "100%"
166fe9d8c08SIlkka Koskinen    },
167fe9d8c08SIlkka Koskinen    {
168fe9d8c08SIlkka Koskinen        "MetricName": "wasted_rate",
169fe9d8c08SIlkka Koskinen        "MetricExpr": "1 - OP_RETIRED / OP_SPEC",
170fe9d8c08SIlkka Koskinen        "BriefDescription": "Of all the micro-operations issued, what percentage are not retired(committed)",
171fe9d8c08SIlkka Koskinen        "MetricGroup": "General",
172fe9d8c08SIlkka Koskinen        "ScaleUnit": "100%"
173fe9d8c08SIlkka Koskinen    },
174fe9d8c08SIlkka Koskinen    {
175fe9d8c08SIlkka Koskinen	"MetricName": "stall_backend_cache_rate",
176fe9d8c08SIlkka Koskinen	"MetricExpr": "((STALL_BACKEND_CACHE / CPU_CYCLES) * 100)",
177705ed549SIlkka Koskinen	"BriefDescription": "Proportion of cycles stalled and no operations issued to backend and cache miss",
178705ed549SIlkka Koskinen	"MetricGroup": "Stall",
179fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
180705ed549SIlkka Koskinen    },
181705ed549SIlkka Koskinen    {
182fe9d8c08SIlkka Koskinen	"MetricName": "stall_backend_resource_rate",
183fe9d8c08SIlkka Koskinen	"MetricExpr": "((STALL_BACKEND_RESOURCE / CPU_CYCLES) * 100)",
184705ed549SIlkka Koskinen	"BriefDescription": "Proportion of cycles stalled and no operations issued to backend and resource full",
185705ed549SIlkka Koskinen	"MetricGroup": "Stall",
186fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
187705ed549SIlkka Koskinen    },
188705ed549SIlkka Koskinen    {
189fe9d8c08SIlkka Koskinen	"MetricName": "stall_backend_tlb_rate",
190fe9d8c08SIlkka Koskinen	"MetricExpr": "((STALL_BACKEND_TLB / CPU_CYCLES) * 100)",
191705ed549SIlkka Koskinen	"BriefDescription": "Proportion of cycles stalled and no operations issued to backend and TLB miss",
192705ed549SIlkka Koskinen	"MetricGroup": "Stall",
193fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
194705ed549SIlkka Koskinen    },
195705ed549SIlkka Koskinen    {
196fe9d8c08SIlkka Koskinen	"MetricName": "stall_frontend_cache_rate",
197fe9d8c08SIlkka Koskinen	"MetricExpr": "((STALL_FRONTEND_CACHE / CPU_CYCLES) * 100)",
198705ed549SIlkka Koskinen	"BriefDescription": "Proportion of cycles stalled and no ops delivered from frontend and cache miss",
199705ed549SIlkka Koskinen	"MetricGroup": "Stall",
200fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
201705ed549SIlkka Koskinen    },
202705ed549SIlkka Koskinen    {
203fe9d8c08SIlkka Koskinen	"MetricName": "stall_frontend_tlb_rate",
204fe9d8c08SIlkka Koskinen	"MetricExpr": "((STALL_FRONTEND_TLB / CPU_CYCLES) * 100)",
205705ed549SIlkka Koskinen	"BriefDescription": "Proportion of cycles stalled and no ops delivered from frontend and TLB miss",
206705ed549SIlkka Koskinen	"MetricGroup": "Stall",
207fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
208705ed549SIlkka Koskinen    },
209705ed549SIlkka Koskinen    {
210fe9d8c08SIlkka Koskinen        "MetricName": "dtlb_walk_ratio",
211fe9d8c08SIlkka Koskinen        "MetricExpr": "(DTLB_WALK / L1D_TLB)",
212fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures the ratio of data TLB Walks to the total number of data TLB accesses. This gives an indication of the effectiveness of the data TLB accesses.",
213fe9d8c08SIlkka Koskinen        "MetricGroup": "Miss_Ratio;DTLB_Effectiveness",
214fe9d8c08SIlkka Koskinen        "ScaleUnit": "1per TLB access"
215705ed549SIlkka Koskinen    },
216705ed549SIlkka Koskinen    {
217fe9d8c08SIlkka Koskinen        "MetricName": "itlb_walk_ratio",
218fe9d8c08SIlkka Koskinen        "MetricExpr": "(ITLB_WALK / L1I_TLB)",
219fe9d8c08SIlkka Koskinen        "BriefDescription": "This metric measures the ratio of instruction TLB Walks to the total number of instruction TLB accesses. This gives an indication of the effectiveness of the instruction TLB accesses.",
220fe9d8c08SIlkka Koskinen        "MetricGroup": "Miss_Ratio;ITLB_Effectiveness",
221fe9d8c08SIlkka Koskinen        "ScaleUnit": "1per TLB access"
222705ed549SIlkka Koskinen    },
223705ed549SIlkka Koskinen    {
224fe9d8c08SIlkka Koskinen        "ArchStdEvent": "backend_bound"
225705ed549SIlkka Koskinen    },
226705ed549SIlkka Koskinen    {
227fe9d8c08SIlkka Koskinen        "ArchStdEvent": "frontend_bound",
228fe9d8c08SIlkka Koskinen        "MetricExpr": "100 - (retired_fraction + slots_lost_misspeculation_fraction + backend_bound)"
229705ed549SIlkka Koskinen    },
230705ed549SIlkka Koskinen    {
231fe9d8c08SIlkka Koskinen        "MetricName": "slots_lost_misspeculation_fraction",
232fe9d8c08SIlkka Koskinen        "MetricExpr": "100 * ((OP_SPEC - OP_RETIRED) / (CPU_CYCLES * #slots))",
233705ed549SIlkka Koskinen        "BriefDescription": "Fraction of slots lost due to misspeculation",
234*0fdd1b88SIlkka Koskinen        "DefaultMetricgroupName": "TopdownL1",
235fe9d8c08SIlkka Koskinen        "MetricGroup": "Default;TopdownL1",
236fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of slots"
237705ed549SIlkka Koskinen    },
238705ed549SIlkka Koskinen    {
239fe9d8c08SIlkka Koskinen        "MetricName": "retired_fraction",
240fe9d8c08SIlkka Koskinen        "MetricExpr": "100 * (OP_RETIRED / (CPU_CYCLES * #slots))",
241705ed549SIlkka Koskinen        "BriefDescription": "Fraction of slots retiring, useful work",
242*0fdd1b88SIlkka Koskinen        "DefaultMetricgroupName": "TopdownL1",
243fe9d8c08SIlkka Koskinen        "MetricGroup": "Default;TopdownL1",
244fe9d8c08SIlkka Koskinen	"ScaleUnit": "1percent of slots"
245705ed549SIlkka Koskinen    },
246705ed549SIlkka Koskinen    {
247fe9d8c08SIlkka Koskinen        "MetricName": "backend_core",
248fe9d8c08SIlkka Koskinen        "MetricExpr": "(backend_bound / 100) - backend_memory",
249705ed549SIlkka Koskinen        "BriefDescription": "Fraction of slots the CPU was stalled due to backend non-memory subsystem issues",
250fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL2",
251fe9d8c08SIlkka Koskinen        "ScaleUnit": "100%"
252705ed549SIlkka Koskinen    },
253705ed549SIlkka Koskinen    {
254fe9d8c08SIlkka Koskinen        "MetricName": "backend_memory",
255fe9d8c08SIlkka Koskinen        "MetricExpr": "(STALL_BACKEND_TLB + STALL_BACKEND_CACHE) / CPU_CYCLES",
256705ed549SIlkka Koskinen        "BriefDescription": "Fraction of slots the CPU was stalled due to backend memory subsystem issues (cache/tlb miss)",
257fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL2",
258fe9d8c08SIlkka Koskinen        "ScaleUnit": "100%"
259705ed549SIlkka Koskinen    },
260705ed549SIlkka Koskinen    {
261fe9d8c08SIlkka Koskinen        "MetricName": "branch_mispredict",
262fe9d8c08SIlkka Koskinen        "MetricExpr": "(BR_MIS_PRED_RETIRED / GPC_FLUSH) * slots_lost_misspeculation_fraction",
263705ed549SIlkka Koskinen        "BriefDescription": "Fraction of slots lost due to branch misprediciton",
264fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL2",
265fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of slots"
266705ed549SIlkka Koskinen    },
267705ed549SIlkka Koskinen    {
268fe9d8c08SIlkka Koskinen        "MetricName": "frontend_bandwidth",
269fe9d8c08SIlkka Koskinen        "MetricExpr": "frontend_bound - frontend_latency",
270705ed549SIlkka Koskinen        "BriefDescription": "Fraction of slots the CPU did not dispatch at full bandwidth - able to dispatch partial slots only (1, 2, or 3 uops)",
271fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL2",
272fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of slots"
273705ed549SIlkka Koskinen    },
274705ed549SIlkka Koskinen    {
275fe9d8c08SIlkka Koskinen        "MetricName": "frontend_latency",
276fe9d8c08SIlkka Koskinen        "MetricExpr": "((STALL_FRONTEND - ((STALL_SLOT_FRONTEND - ((frontend_bound / 100) * CPU_CYCLES * #slots)) / #slots)) / CPU_CYCLES) * 100",
277705ed549SIlkka Koskinen        "BriefDescription": "Fraction of slots the CPU was stalled due to frontend latency issues (cache/tlb miss); nothing to dispatch",
278fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL2",
279fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of slots"
280705ed549SIlkka Koskinen    },
281705ed549SIlkka Koskinen    {
282fe9d8c08SIlkka Koskinen        "MetricName": "other_miss_pred",
283fe9d8c08SIlkka Koskinen        "MetricExpr": "slots_lost_misspeculation_fraction - branch_mispredict",
284705ed549SIlkka Koskinen        "BriefDescription": "Fraction of slots lost due to other/non-branch misprediction misspeculation",
285fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL2",
286fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of slots"
287705ed549SIlkka Koskinen    },
288705ed549SIlkka Koskinen    {
289fe9d8c08SIlkka Koskinen        "MetricName": "pipe_utilization",
290fe9d8c08SIlkka Koskinen        "MetricExpr": "100 * ((IXU_NUM_UOPS_ISSUED + FSU_ISSUED) / (CPU_CYCLES * 6))",
291705ed549SIlkka Koskinen        "BriefDescription": "Fraction of execute slots utilized",
292fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL2",
293fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of slots"
294705ed549SIlkka Koskinen    },
295705ed549SIlkka Koskinen    {
296fe9d8c08SIlkka Koskinen        "MetricName": "d_cache_l2_miss_rate",
297fe9d8c08SIlkka Koskinen        "MetricExpr": "((STALL_BACKEND_MEM / CPU_CYCLES) * 100)",
298705ed549SIlkka Koskinen        "BriefDescription": "Fraction of cycles the CPU was stalled due to data L2 cache miss",
299fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL3",
300fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
301705ed549SIlkka Koskinen    },
302705ed549SIlkka Koskinen    {
303fe9d8c08SIlkka Koskinen        "MetricName": "d_cache_miss_rate",
304fe9d8c08SIlkka Koskinen        "MetricExpr": "((STALL_BACKEND_CACHE / CPU_CYCLES) * 100)",
305705ed549SIlkka Koskinen        "BriefDescription": "Fraction of cycles the CPU was stalled due to data cache miss",
306fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL3",
307fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
308705ed549SIlkka Koskinen    },
309705ed549SIlkka Koskinen    {
310fe9d8c08SIlkka Koskinen        "MetricName": "d_tlb_miss_rate",
311fe9d8c08SIlkka Koskinen        "MetricExpr": "((STALL_BACKEND_TLB / CPU_CYCLES) * 100)",
312705ed549SIlkka Koskinen        "BriefDescription": "Fraction of cycles the CPU was stalled due to data TLB miss",
313fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL3",
314fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
315705ed549SIlkka Koskinen    },
316705ed549SIlkka Koskinen    {
317fe9d8c08SIlkka Koskinen        "MetricName": "fsu_pipe_utilization",
318fe9d8c08SIlkka Koskinen        "MetricExpr": "((FSU_ISSUED / (CPU_CYCLES * 2)) * 100)",
319705ed549SIlkka Koskinen        "BriefDescription": "Fraction of FSU execute slots utilized",
320fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL3",
321fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of slots"
322705ed549SIlkka Koskinen    },
323705ed549SIlkka Koskinen    {
324fe9d8c08SIlkka Koskinen        "MetricName": "i_cache_miss_rate",
325fe9d8c08SIlkka Koskinen        "MetricExpr": "((STALL_FRONTEND_CACHE / CPU_CYCLES) * 100)",
326705ed549SIlkka Koskinen        "BriefDescription": "Fraction of cycles the CPU was stalled due to instruction cache miss",
327fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL3",
328fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of slots"
329705ed549SIlkka Koskinen    },
330705ed549SIlkka Koskinen    {
331fe9d8c08SIlkka Koskinen        "MetricName": "i_tlb_miss_rate",
332fe9d8c08SIlkka Koskinen        "MetricExpr": "((STALL_FRONTEND_TLB / CPU_CYCLES) * 100)",
333705ed549SIlkka Koskinen        "BriefDescription": "Fraction of cycles the CPU was stalled due to instruction TLB miss",
334fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL3",
335fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of slots"
336705ed549SIlkka Koskinen    },
337705ed549SIlkka Koskinen    {
338fe9d8c08SIlkka Koskinen        "MetricName": "ixu_pipe_utilization",
339fe9d8c08SIlkka Koskinen        "MetricExpr": "((IXU_NUM_UOPS_ISSUED / (CPU_CYCLES * #slots)) * 100)",
340705ed549SIlkka Koskinen        "BriefDescription": "Fraction of IXU execute slots utilized",
341fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL3",
342fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of slots"
343705ed549SIlkka Koskinen    },
344705ed549SIlkka Koskinen    {
345fe9d8c08SIlkka Koskinen        "MetricName": "stall_recovery_rate",
346fe9d8c08SIlkka Koskinen        "MetricExpr": "((IDR_STALL_FLUSH / CPU_CYCLES) * 100)",
347705ed549SIlkka Koskinen        "BriefDescription": "Fraction of cycles the CPU was stalled due to flush recovery",
348fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL3",
349fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of slots"
350705ed549SIlkka Koskinen    },
351705ed549SIlkka Koskinen    {
352fe9d8c08SIlkka Koskinen        "MetricName": "stall_fsu_sched_rate",
353fe9d8c08SIlkka Koskinen        "MetricExpr": "((IDR_STALL_FSU_SCHED / CPU_CYCLES) * 100)",
354705ed549SIlkka Koskinen        "BriefDescription": "Fraction of cycles the CPU was stalled and FSU was full",
355fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL4",
356fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
357705ed549SIlkka Koskinen    },
358705ed549SIlkka Koskinen    {
359fe9d8c08SIlkka Koskinen        "MetricName": "stall_ixu_sched_rate",
360fe9d8c08SIlkka Koskinen        "MetricExpr": "((IDR_STALL_IXU_SCHED / CPU_CYCLES) * 100)",
361705ed549SIlkka Koskinen        "BriefDescription": "Fraction of cycles the CPU was stalled and IXU was full",
362fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL4",
363fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
364705ed549SIlkka Koskinen    },
365705ed549SIlkka Koskinen    {
366fe9d8c08SIlkka Koskinen        "MetricName": "stall_lob_id_rate",
367fe9d8c08SIlkka Koskinen        "MetricExpr": "((IDR_STALL_LOB_ID / CPU_CYCLES) * 100)",
368705ed549SIlkka Koskinen        "BriefDescription": "Fraction of cycles the CPU was stalled and LOB was full",
369fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL4",
370fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
371705ed549SIlkka Koskinen    },
372705ed549SIlkka Koskinen    {
373fe9d8c08SIlkka Koskinen        "MetricName": "stall_rob_id_rate",
374fe9d8c08SIlkka Koskinen        "MetricExpr": "((IDR_STALL_ROB_ID / CPU_CYCLES) * 100)",
375705ed549SIlkka Koskinen        "BriefDescription": "Fraction of cycles the CPU was stalled and ROB was full",
376fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL4",
377fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
378705ed549SIlkka Koskinen    },
379705ed549SIlkka Koskinen    {
380fe9d8c08SIlkka Koskinen        "MetricName": "stall_sob_id_rate",
381fe9d8c08SIlkka Koskinen        "MetricExpr": "((IDR_STALL_SOB_ID / CPU_CYCLES) * 100)",
382705ed549SIlkka Koskinen        "BriefDescription": "Fraction of cycles the CPU was stalled and SOB was full",
383fe9d8c08SIlkka Koskinen        "MetricGroup": "TopdownL4",
384fe9d8c08SIlkka Koskinen        "ScaleUnit": "1percent of cycles"
385705ed549SIlkka Koskinen    }
386705ed549SIlkka Koskinen]
387