1902ea4eeSAndi Kleen[
2902ea4eeSAndi Kleen    {
3902ea4eeSAndi Kleen        "EventCode": "0x80",
4902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
5902ea4eeSAndi Kleen        "UMask": "0x1",
6902ea4eeSAndi Kleen        "EventName": "ICACHE.HIT",
7902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
8902ea4eeSAndi Kleen        "BriefDescription": "Number of Instruction Cache, Streaming Buffer and Victim Cache Reads. both cacheable and noncacheable, including UC fetches.",
9902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
10902ea4eeSAndi Kleen    },
11902ea4eeSAndi Kleen    {
12902ea4eeSAndi Kleen        "PublicDescription": "This event counts the number of instruction cache, streaming buffer and victim cache misses. Counting includes unchacheable accesses.",
13902ea4eeSAndi Kleen        "EventCode": "0x80",
14902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
15902ea4eeSAndi Kleen        "UMask": "0x2",
16902ea4eeSAndi Kleen        "EventName": "ICACHE.MISSES",
17902ea4eeSAndi Kleen        "SampleAfterValue": "200003",
18902ea4eeSAndi Kleen        "BriefDescription": "Instruction cache, streaming buffer and victim cache misses.",
19902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
20902ea4eeSAndi Kleen    },
21902ea4eeSAndi Kleen    {
22902ea4eeSAndi Kleen        "EventCode": "0x79",
23902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
24902ea4eeSAndi Kleen        "UMask": "0x2",
25902ea4eeSAndi Kleen        "EventName": "IDQ.EMPTY",
26902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
27902ea4eeSAndi Kleen        "BriefDescription": "Instruction Decode Queue (IDQ) empty cycles.",
28902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3"
29902ea4eeSAndi Kleen    },
30902ea4eeSAndi Kleen    {
31902ea4eeSAndi Kleen        "EventCode": "0x79",
32902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
33902ea4eeSAndi Kleen        "UMask": "0x4",
34902ea4eeSAndi Kleen        "EventName": "IDQ.MITE_UOPS",
35902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
36902ea4eeSAndi Kleen        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path.",
37902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
38902ea4eeSAndi Kleen    },
39902ea4eeSAndi Kleen    {
40902ea4eeSAndi Kleen        "EventCode": "0x79",
41902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
42902ea4eeSAndi Kleen        "UMask": "0x8",
43902ea4eeSAndi Kleen        "EventName": "IDQ.DSB_UOPS",
44902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
45902ea4eeSAndi Kleen        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path.",
46902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
47902ea4eeSAndi Kleen    },
48902ea4eeSAndi Kleen    {
49902ea4eeSAndi Kleen        "EventCode": "0x79",
50902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
51902ea4eeSAndi Kleen        "UMask": "0x10",
52902ea4eeSAndi Kleen        "EventName": "IDQ.MS_DSB_UOPS",
53902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
54902ea4eeSAndi Kleen        "BriefDescription": "Uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy.",
55902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
56902ea4eeSAndi Kleen    },
57902ea4eeSAndi Kleen    {
58902ea4eeSAndi Kleen        "EventCode": "0x79",
59902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
60902ea4eeSAndi Kleen        "UMask": "0x20",
61902ea4eeSAndi Kleen        "EventName": "IDQ.MS_MITE_UOPS",
62902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
63902ea4eeSAndi Kleen        "BriefDescription": "Uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy.",
64902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
65902ea4eeSAndi Kleen    },
66902ea4eeSAndi Kleen    {
67902ea4eeSAndi Kleen        "EventCode": "0x79",
68902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
69902ea4eeSAndi Kleen        "UMask": "0x30",
70902ea4eeSAndi Kleen        "EventName": "IDQ.MS_UOPS",
71902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
72902ea4eeSAndi Kleen        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy.",
73902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
74902ea4eeSAndi Kleen    },
75902ea4eeSAndi Kleen    {
76902ea4eeSAndi Kleen        "PublicDescription": "This event counts cycles during which the microcode sequencer assisted the front-end in delivering uops.  Microcode assists are used for complex instructions or scenarios that can't be handled by the standard decoder.  Using other instructions, if possible, will usually improve performance.  See the Intel? 64 and IA-32 Architectures Optimization Reference Manual for more information.",
77902ea4eeSAndi Kleen        "EventCode": "0x79",
78902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
79902ea4eeSAndi Kleen        "UMask": "0x30",
80902ea4eeSAndi Kleen        "EventName": "IDQ.MS_CYCLES",
81902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
82902ea4eeSAndi Kleen        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy.",
83902ea4eeSAndi Kleen        "CounterMask": "1",
84902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
85902ea4eeSAndi Kleen    },
86902ea4eeSAndi Kleen    {
87902ea4eeSAndi Kleen        "PublicDescription": "This event counts the number of uops not delivered to the back-end per cycle, per thread, when the back-end was not stalled.  In the ideal case 4 uops can be delivered each cycle.  The event counts the undelivered uops - so if 3 were delivered in one cycle, the counter would be incremented by 1 for that cycle (4 - 3). If the back-end is stalled, the count for this event is not incremented even when uops were not delivered, because the back-end would not have been able to accept them.  This event is used in determining the front-end bound category of the top-down pipeline slots characterization.",
88902ea4eeSAndi Kleen        "EventCode": "0x9C",
89902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
90902ea4eeSAndi Kleen        "UMask": "0x1",
91902ea4eeSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CORE",
92902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
93902ea4eeSAndi Kleen        "BriefDescription": "Uops not delivered to Resource Allocation Table (RAT) per thread when backend of the machine is not stalled .",
94902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3"
95902ea4eeSAndi Kleen    },
96902ea4eeSAndi Kleen    {
97902ea4eeSAndi Kleen        "EventCode": "0x9C",
98902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
99902ea4eeSAndi Kleen        "UMask": "0x1",
100902ea4eeSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE",
101902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
102902ea4eeSAndi Kleen        "BriefDescription": "Cycles per thread when 4 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled.",
103902ea4eeSAndi Kleen        "CounterMask": "4",
104902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3"
105902ea4eeSAndi Kleen    },
106902ea4eeSAndi Kleen    {
107902ea4eeSAndi Kleen        "EventCode": "0x9C",
108902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
109902ea4eeSAndi Kleen        "UMask": "0x1",
110902ea4eeSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_1_UOP_DELIV.CORE",
111902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
112902ea4eeSAndi Kleen        "BriefDescription": "Cycles per thread when 3 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled.",
113902ea4eeSAndi Kleen        "CounterMask": "3",
114902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3"
115902ea4eeSAndi Kleen    },
116902ea4eeSAndi Kleen    {
117902ea4eeSAndi Kleen        "EventCode": "0xAB",
118902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
119902ea4eeSAndi Kleen        "UMask": "0x1",
120902ea4eeSAndi Kleen        "EventName": "DSB2MITE_SWITCHES.COUNT",
121902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
122902ea4eeSAndi Kleen        "BriefDescription": "Decode Stream Buffer (DSB)-to-MITE switches.",
123902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
124902ea4eeSAndi Kleen    },
125902ea4eeSAndi Kleen    {
126902ea4eeSAndi Kleen        "PublicDescription": "This event counts the cycles attributed to a switch from the Decoded Stream Buffer (DSB), which holds decoded instructions, to the legacy decode pipeline.  It excludes cycles when the back-end cannot  accept new micro-ops.  The penalty for these switches is potentially several cycles of instruction starvation, where no micro-ops are delivered to the back-end.",
127902ea4eeSAndi Kleen        "EventCode": "0xAB",
128902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
129902ea4eeSAndi Kleen        "UMask": "0x2",
130902ea4eeSAndi Kleen        "EventName": "DSB2MITE_SWITCHES.PENALTY_CYCLES",
131902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
132902ea4eeSAndi Kleen        "BriefDescription": "Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles.",
133902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
134902ea4eeSAndi Kleen    },
135902ea4eeSAndi Kleen    {
136902ea4eeSAndi Kleen        "EventCode": "0xAC",
137902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
138902ea4eeSAndi Kleen        "UMask": "0x2",
139902ea4eeSAndi Kleen        "EventName": "DSB_FILL.OTHER_CANCEL",
140902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
141902ea4eeSAndi Kleen        "BriefDescription": "Cases of cancelling valid DSB fill not because of exceeding way limit.",
142902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
143902ea4eeSAndi Kleen    },
144902ea4eeSAndi Kleen    {
145902ea4eeSAndi Kleen        "EventCode": "0xAC",
146902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
147902ea4eeSAndi Kleen        "UMask": "0x8",
148902ea4eeSAndi Kleen        "EventName": "DSB_FILL.EXCEED_DSB_LINES",
149902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
150902ea4eeSAndi Kleen        "BriefDescription": "Cycles when Decode Stream Buffer (DSB) fill encounter more than 3 Decode Stream Buffer (DSB) lines.",
151902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
152902ea4eeSAndi Kleen    },
153902ea4eeSAndi Kleen    {
154902ea4eeSAndi Kleen        "EventCode": "0x79",
155902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
156902ea4eeSAndi Kleen        "UMask": "0x4",
157902ea4eeSAndi Kleen        "EventName": "IDQ.MITE_CYCLES",
158902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
159902ea4eeSAndi Kleen        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from MITE path.",
160902ea4eeSAndi Kleen        "CounterMask": "1",
161902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
162902ea4eeSAndi Kleen    },
163902ea4eeSAndi Kleen    {
164902ea4eeSAndi Kleen        "EventCode": "0x79",
165902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
166902ea4eeSAndi Kleen        "UMask": "0x8",
167902ea4eeSAndi Kleen        "EventName": "IDQ.DSB_CYCLES",
168902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
169902ea4eeSAndi Kleen        "BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from Decode Stream Buffer (DSB) path.",
170902ea4eeSAndi Kleen        "CounterMask": "1",
171902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
172902ea4eeSAndi Kleen    },
173902ea4eeSAndi Kleen    {
174902ea4eeSAndi Kleen        "EventCode": "0x79",
175902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
176902ea4eeSAndi Kleen        "UMask": "0x10",
177902ea4eeSAndi Kleen        "EventName": "IDQ.MS_DSB_CYCLES",
178902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
179902ea4eeSAndi Kleen        "BriefDescription": "Cycles when uops initiated by Decode Stream Buffer (DSB) are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy.",
180902ea4eeSAndi Kleen        "CounterMask": "1",
181902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
182902ea4eeSAndi Kleen    },
183902ea4eeSAndi Kleen    {
184902ea4eeSAndi Kleen        "EventCode": "0x79",
185902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
186902ea4eeSAndi Kleen        "UMask": "0x10",
187902ea4eeSAndi Kleen        "EdgeDetect": "1",
188902ea4eeSAndi Kleen        "EventName": "IDQ.MS_DSB_OCCUR",
189902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
190902ea4eeSAndi Kleen        "BriefDescription": "Deliveries to Instruction Decode Queue (IDQ) initiated by Decode Stream Buffer (DSB) while Microcode Sequenser (MS) is busy.",
191902ea4eeSAndi Kleen        "CounterMask": "1",
192902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
193902ea4eeSAndi Kleen    },
194902ea4eeSAndi Kleen    {
195902ea4eeSAndi Kleen        "EventCode": "0x9C",
196902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
197902ea4eeSAndi Kleen        "UMask": "0x1",
198902ea4eeSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_2_UOP_DELIV.CORE",
199902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
200902ea4eeSAndi Kleen        "BriefDescription": "Cycles with less than 2 uops delivered by the front end.",
201902ea4eeSAndi Kleen        "CounterMask": "2",
202902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3"
203902ea4eeSAndi Kleen    },
204902ea4eeSAndi Kleen    {
205902ea4eeSAndi Kleen        "EventCode": "0x9C",
206902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
207902ea4eeSAndi Kleen        "UMask": "0x1",
208902ea4eeSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_3_UOP_DELIV.CORE",
209902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
210902ea4eeSAndi Kleen        "BriefDescription": "Cycles with less than 3 uops delivered by the front end.",
211902ea4eeSAndi Kleen        "CounterMask": "1",
212902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3"
213902ea4eeSAndi Kleen    },
214902ea4eeSAndi Kleen    {
215902ea4eeSAndi Kleen        "EventCode": "0x9C",
216902ea4eeSAndi Kleen        "Invert": "1",
217902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
218902ea4eeSAndi Kleen        "UMask": "0x1",
219902ea4eeSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_GE_1_UOP_DELIV.CORE",
220902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
221902ea4eeSAndi Kleen        "BriefDescription": "Cycles when 1 or more uops were delivered to the by the front end.",
222902ea4eeSAndi Kleen        "CounterMask": "4",
223902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3"
224902ea4eeSAndi Kleen    },
225902ea4eeSAndi Kleen    {
226902ea4eeSAndi Kleen        "EventCode": "0x79",
227902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
228902ea4eeSAndi Kleen        "UMask": "0x18",
229902ea4eeSAndi Kleen        "EventName": "IDQ.ALL_DSB_CYCLES_4_UOPS",
230902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
231902ea4eeSAndi Kleen        "BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering 4 Uops.",
232902ea4eeSAndi Kleen        "CounterMask": "4",
233902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
234902ea4eeSAndi Kleen    },
235902ea4eeSAndi Kleen    {
236902ea4eeSAndi Kleen        "EventCode": "0x79",
237902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
238902ea4eeSAndi Kleen        "UMask": "0x18",
239902ea4eeSAndi Kleen        "EventName": "IDQ.ALL_DSB_CYCLES_ANY_UOPS",
240902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
241902ea4eeSAndi Kleen        "BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering any Uop.",
242902ea4eeSAndi Kleen        "CounterMask": "1",
243902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
244902ea4eeSAndi Kleen    },
245902ea4eeSAndi Kleen    {
246902ea4eeSAndi Kleen        "EventCode": "0x79",
247902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
248902ea4eeSAndi Kleen        "UMask": "0x24",
249902ea4eeSAndi Kleen        "EventName": "IDQ.ALL_MITE_CYCLES_4_UOPS",
250902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
251902ea4eeSAndi Kleen        "BriefDescription": "Cycles MITE is delivering 4 Uops.",
252902ea4eeSAndi Kleen        "CounterMask": "4",
253902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
254902ea4eeSAndi Kleen    },
255902ea4eeSAndi Kleen    {
256902ea4eeSAndi Kleen        "EventCode": "0x79",
257902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
258902ea4eeSAndi Kleen        "UMask": "0x24",
259902ea4eeSAndi Kleen        "EventName": "IDQ.ALL_MITE_CYCLES_ANY_UOPS",
260902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
261902ea4eeSAndi Kleen        "BriefDescription": "Cycles MITE is delivering any Uop.",
262902ea4eeSAndi Kleen        "CounterMask": "1",
263902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
264902ea4eeSAndi Kleen    },
265902ea4eeSAndi Kleen    {
266902ea4eeSAndi Kleen        "EventCode": "0xAC",
267902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
268902ea4eeSAndi Kleen        "UMask": "0xa",
269902ea4eeSAndi Kleen        "EventName": "DSB_FILL.ALL_CANCEL",
270902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
271902ea4eeSAndi Kleen        "BriefDescription": "Cases of cancelling valid Decode Stream Buffer (DSB) fill not because of exceeding way limit.",
272902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
273902ea4eeSAndi Kleen    },
274902ea4eeSAndi Kleen    {
275902ea4eeSAndi Kleen        "EventCode": "0x9C",
276902ea4eeSAndi Kleen        "Invert": "1",
277902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
278902ea4eeSAndi Kleen        "UMask": "0x1",
279902ea4eeSAndi Kleen        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_FE_WAS_OK",
280902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
281902ea4eeSAndi Kleen        "BriefDescription": "Counts cycles FE delivered 4 uops or Resource Allocation Table (RAT) was stalling FE.",
282902ea4eeSAndi Kleen        "CounterMask": "1",
283902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3"
284902ea4eeSAndi Kleen    },
285902ea4eeSAndi Kleen    {
286902ea4eeSAndi Kleen        "EventCode": "0x79",
287902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
288902ea4eeSAndi Kleen        "UMask": "0x3c",
289902ea4eeSAndi Kleen        "EventName": "IDQ.MITE_ALL_UOPS",
290902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
291902ea4eeSAndi Kleen        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path.",
292902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
293902ea4eeSAndi Kleen    },
294902ea4eeSAndi Kleen    {
295902ea4eeSAndi Kleen        "EventCode": "0x79",
296902ea4eeSAndi Kleen        "Counter": "0,1,2,3",
297902ea4eeSAndi Kleen        "UMask": "0x30",
298902ea4eeSAndi Kleen        "EdgeDetect": "1",
299902ea4eeSAndi Kleen        "EventName": "IDQ.MS_SWITCHES",
300902ea4eeSAndi Kleen        "SampleAfterValue": "2000003",
301902ea4eeSAndi Kleen        "BriefDescription": "Number of switches from DSB (Decode Stream Buffer) or MITE (legacy decode pipeline) to the Microcode Sequencer.",
302902ea4eeSAndi Kleen        "CounterMask": "1",
303902ea4eeSAndi Kleen        "CounterHTOff": "0,1,2,3,4,5,6,7"
304902ea4eeSAndi Kleen    }
305902ea4eeSAndi Kleen]