1f9900dd0SZhengjun Xing[
2f9900dd0SZhengjun Xing    {
3f9900dd0SZhengjun Xing        "BriefDescription": "Counts the total number of BACLEARS due to all branch types including conditional and unconditional jumps, returns, and indirect branches.",
4f9900dd0SZhengjun Xing        "EventCode": "0xe6",
5f9900dd0SZhengjun Xing        "EventName": "BACLEARS.ANY",
64c12f41aSZhengjun Xing        "PublicDescription": "Counts the total number of BACLEARS, which occur when the Branch Target Buffer (BTB) prediction or lack thereof, was corrected by a later branch predictor in the frontend.  Includes BACLEARS due to all branch types including conditional and unconditional jumps, returns, and indirect branches.",
7f9900dd0SZhengjun Xing        "SampleAfterValue": "100003",
8f9900dd0SZhengjun Xing        "UMask": "0x1",
9f9900dd0SZhengjun Xing        "Unit": "cpu_atom"
10f9900dd0SZhengjun Xing    },
11f9900dd0SZhengjun Xing    {
12*ad10c920SIan Rogers        "BriefDescription": "Clears due to Unknown Branches.",
13*ad10c920SIan Rogers        "EventCode": "0x60",
14*ad10c920SIan Rogers        "EventName": "BACLEARS.ANY",
15*ad10c920SIan Rogers        "PublicDescription": "Number of times the front-end is resteered when it finds a branch instruction in a fetch line. This is called Unknown Branch which occurs for the first time a branch instruction is fetched or when the branch is not tracked by the BPU (Branch Prediction Unit) anymore.",
16*ad10c920SIan Rogers        "SampleAfterValue": "100003",
17*ad10c920SIan Rogers        "UMask": "0x1",
18*ad10c920SIan Rogers        "Unit": "cpu_core"
19*ad10c920SIan Rogers    },
20*ad10c920SIan Rogers    {
21f9900dd0SZhengjun Xing        "BriefDescription": "Stalls caused by changing prefix length of the instruction.",
22f9900dd0SZhengjun Xing        "EventCode": "0x87",
23f9900dd0SZhengjun Xing        "EventName": "DECODE.LCP",
244c12f41aSZhengjun Xing        "PublicDescription": "Counts cycles that the Instruction Length decoder (ILD) stalls occurred due to dynamically changing prefix length of the decoded instruction (by operand size prefix instruction 0x66, address size prefix instruction 0x67 or REX.W for Intel64). Count is proportional to the number of prefixes in a 16B-line. This may result in a three-cycle penalty for each LCP (Length changing prefix) in a 16-byte chunk.",
25f9900dd0SZhengjun Xing        "SampleAfterValue": "500009",
26f9900dd0SZhengjun Xing        "UMask": "0x1",
27f9900dd0SZhengjun Xing        "Unit": "cpu_core"
28f9900dd0SZhengjun Xing    },
29f9900dd0SZhengjun Xing    {
30a80de066SIan Rogers        "BriefDescription": "Cycles the Microcode Sequencer is busy.",
31a80de066SIan Rogers        "EventCode": "0x87",
32a80de066SIan Rogers        "EventName": "DECODE.MS_BUSY",
33a80de066SIan Rogers        "SampleAfterValue": "500009",
34a80de066SIan Rogers        "UMask": "0x2",
35a80de066SIan Rogers        "Unit": "cpu_core"
36a80de066SIan Rogers    },
37a80de066SIan Rogers    {
38f9900dd0SZhengjun Xing        "BriefDescription": "DSB-to-MITE switch true penalty cycles.",
39f9900dd0SZhengjun Xing        "EventCode": "0x61",
40f9900dd0SZhengjun Xing        "EventName": "DSB2MITE_SWITCHES.PENALTY_CYCLES",
414c12f41aSZhengjun Xing        "PublicDescription": "Decode Stream Buffer (DSB) is a Uop-cache that holds translations of previously fetched instructions that were decoded by the legacy x86 decode pipeline (MITE). This event counts fetch penalty cycles when a transition occurs from DSB to MITE.",
42f9900dd0SZhengjun Xing        "SampleAfterValue": "100003",
43f9900dd0SZhengjun Xing        "UMask": "0x2",
44f9900dd0SZhengjun Xing        "Unit": "cpu_core"
45f9900dd0SZhengjun Xing    },
46f9900dd0SZhengjun Xing    {
47f9900dd0SZhengjun Xing        "BriefDescription": "Retired Instructions who experienced DSB miss.",
48f9900dd0SZhengjun Xing        "EventCode": "0xc6",
49f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.ANY_DSB_MISS",
50f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
51f9900dd0SZhengjun Xing        "MSRValue": "0x1",
52f9900dd0SZhengjun Xing        "PEBS": "1",
534c12f41aSZhengjun Xing        "PublicDescription": "Counts retired Instructions that experienced DSB (Decode stream buffer i.e. the decoded instruction-cache) miss.",
54f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
55f9900dd0SZhengjun Xing        "UMask": "0x1",
56f9900dd0SZhengjun Xing        "Unit": "cpu_core"
57f9900dd0SZhengjun Xing    },
58f9900dd0SZhengjun Xing    {
59f9900dd0SZhengjun Xing        "BriefDescription": "Retired Instructions who experienced a critical DSB miss.",
60f9900dd0SZhengjun Xing        "EventCode": "0xc6",
61f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.DSB_MISS",
62f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
63f9900dd0SZhengjun Xing        "MSRValue": "0x11",
64f9900dd0SZhengjun Xing        "PEBS": "1",
654c12f41aSZhengjun Xing        "PublicDescription": "Number of retired Instructions that experienced a critical DSB (Decode stream buffer i.e. the decoded instruction-cache) miss. Critical means stalls were exposed to the back-end as a result of the DSB miss.",
66f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
67f9900dd0SZhengjun Xing        "UMask": "0x1",
68f9900dd0SZhengjun Xing        "Unit": "cpu_core"
69f9900dd0SZhengjun Xing    },
70f9900dd0SZhengjun Xing    {
71f9900dd0SZhengjun Xing        "BriefDescription": "Retired Instructions who experienced iTLB true miss.",
72f9900dd0SZhengjun Xing        "EventCode": "0xc6",
73f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.ITLB_MISS",
74f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
75f9900dd0SZhengjun Xing        "MSRValue": "0x14",
76f9900dd0SZhengjun Xing        "PEBS": "1",
774c12f41aSZhengjun Xing        "PublicDescription": "Counts retired Instructions that experienced iTLB (Instruction TLB) true miss.",
78f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
79f9900dd0SZhengjun Xing        "UMask": "0x1",
80f9900dd0SZhengjun Xing        "Unit": "cpu_core"
81f9900dd0SZhengjun Xing    },
82f9900dd0SZhengjun Xing    {
83f9900dd0SZhengjun Xing        "BriefDescription": "Retired Instructions who experienced Instruction L1 Cache true miss.",
84f9900dd0SZhengjun Xing        "EventCode": "0xc6",
85f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.L1I_MISS",
86f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
87f9900dd0SZhengjun Xing        "MSRValue": "0x12",
88f9900dd0SZhengjun Xing        "PEBS": "1",
894c12f41aSZhengjun Xing        "PublicDescription": "Counts retired Instructions who experienced Instruction L1 Cache true miss.",
90f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
91f9900dd0SZhengjun Xing        "UMask": "0x1",
92f9900dd0SZhengjun Xing        "Unit": "cpu_core"
93f9900dd0SZhengjun Xing    },
94f9900dd0SZhengjun Xing    {
95f9900dd0SZhengjun Xing        "BriefDescription": "Retired Instructions who experienced Instruction L2 Cache true miss.",
96f9900dd0SZhengjun Xing        "EventCode": "0xc6",
97f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.L2_MISS",
98f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
99f9900dd0SZhengjun Xing        "MSRValue": "0x13",
100f9900dd0SZhengjun Xing        "PEBS": "1",
1014c12f41aSZhengjun Xing        "PublicDescription": "Counts retired Instructions who experienced Instruction L2 Cache true miss.",
102f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
103f9900dd0SZhengjun Xing        "UMask": "0x1",
104f9900dd0SZhengjun Xing        "Unit": "cpu_core"
105f9900dd0SZhengjun Xing    },
106f9900dd0SZhengjun Xing    {
107f9900dd0SZhengjun Xing        "BriefDescription": "Retired instructions after front-end starvation of at least 1 cycle",
108f9900dd0SZhengjun Xing        "EventCode": "0xc6",
109f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.LATENCY_GE_1",
110f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
111f9900dd0SZhengjun Xing        "MSRValue": "0x600106",
112f9900dd0SZhengjun Xing        "PEBS": "1",
1134c12f41aSZhengjun Xing        "PublicDescription": "Retired instructions that are fetched after an interval where the front-end delivered no uops for a period of at least 1 cycle which was not interrupted by a back-end stall.",
114f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
115f9900dd0SZhengjun Xing        "UMask": "0x1",
116f9900dd0SZhengjun Xing        "Unit": "cpu_core"
117f9900dd0SZhengjun Xing    },
118f9900dd0SZhengjun Xing    {
119f9900dd0SZhengjun Xing        "BriefDescription": "Retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 128 cycles which was not interrupted by a back-end stall.",
120f9900dd0SZhengjun Xing        "EventCode": "0xc6",
121f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.LATENCY_GE_128",
122f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
123f9900dd0SZhengjun Xing        "MSRValue": "0x608006",
124f9900dd0SZhengjun Xing        "PEBS": "1",
1254c12f41aSZhengjun Xing        "PublicDescription": "Counts retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 128 cycles which was not interrupted by a back-end stall.",
126f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
127f9900dd0SZhengjun Xing        "UMask": "0x1",
128f9900dd0SZhengjun Xing        "Unit": "cpu_core"
129f9900dd0SZhengjun Xing    },
130f9900dd0SZhengjun Xing    {
131f9900dd0SZhengjun Xing        "BriefDescription": "Retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 16 cycles which was not interrupted by a back-end stall.",
132f9900dd0SZhengjun Xing        "EventCode": "0xc6",
133f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.LATENCY_GE_16",
134f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
135f9900dd0SZhengjun Xing        "MSRValue": "0x601006",
136f9900dd0SZhengjun Xing        "PEBS": "1",
1374c12f41aSZhengjun Xing        "PublicDescription": "Counts retired instructions that are delivered to the back-end after a front-end stall of at least 16 cycles. During this period the front-end delivered no uops.",
138f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
139f9900dd0SZhengjun Xing        "UMask": "0x1",
140f9900dd0SZhengjun Xing        "Unit": "cpu_core"
141f9900dd0SZhengjun Xing    },
142f9900dd0SZhengjun Xing    {
143f9900dd0SZhengjun Xing        "BriefDescription": "Retired instructions after front-end starvation of at least 2 cycles",
144f9900dd0SZhengjun Xing        "EventCode": "0xc6",
145f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.LATENCY_GE_2",
146f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
147f9900dd0SZhengjun Xing        "MSRValue": "0x600206",
148f9900dd0SZhengjun Xing        "PEBS": "1",
1494c12f41aSZhengjun Xing        "PublicDescription": "Retired instructions that are fetched after an interval where the front-end delivered no uops for a period of at least 2 cycles which was not interrupted by a back-end stall.",
150f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
151f9900dd0SZhengjun Xing        "UMask": "0x1",
152f9900dd0SZhengjun Xing        "Unit": "cpu_core"
153f9900dd0SZhengjun Xing    },
154f9900dd0SZhengjun Xing    {
155f9900dd0SZhengjun Xing        "BriefDescription": "Retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 256 cycles which was not interrupted by a back-end stall.",
156f9900dd0SZhengjun Xing        "EventCode": "0xc6",
157f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.LATENCY_GE_256",
158f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
159f9900dd0SZhengjun Xing        "MSRValue": "0x610006",
160f9900dd0SZhengjun Xing        "PEBS": "1",
1614c12f41aSZhengjun Xing        "PublicDescription": "Counts retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 256 cycles which was not interrupted by a back-end stall.",
162f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
163f9900dd0SZhengjun Xing        "UMask": "0x1",
164f9900dd0SZhengjun Xing        "Unit": "cpu_core"
165f9900dd0SZhengjun Xing    },
166f9900dd0SZhengjun Xing    {
167f9900dd0SZhengjun Xing        "BriefDescription": "Retired instructions that are fetched after an interval where the front-end had at least 1 bubble-slot for a period of 2 cycles which was not interrupted by a back-end stall.",
168f9900dd0SZhengjun Xing        "EventCode": "0xc6",
169f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.LATENCY_GE_2_BUBBLES_GE_1",
170f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
171f9900dd0SZhengjun Xing        "MSRValue": "0x100206",
172f9900dd0SZhengjun Xing        "PEBS": "1",
1734c12f41aSZhengjun Xing        "PublicDescription": "Counts retired instructions that are delivered to the back-end after the front-end had at least 1 bubble-slot for a period of 2 cycles. A bubble-slot is an empty issue-pipeline slot while there was no RAT stall.",
174f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
175f9900dd0SZhengjun Xing        "UMask": "0x1",
176f9900dd0SZhengjun Xing        "Unit": "cpu_core"
177f9900dd0SZhengjun Xing    },
178f9900dd0SZhengjun Xing    {
179f9900dd0SZhengjun Xing        "BriefDescription": "Retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 32 cycles which was not interrupted by a back-end stall.",
180f9900dd0SZhengjun Xing        "EventCode": "0xc6",
181f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.LATENCY_GE_32",
182f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
183f9900dd0SZhengjun Xing        "MSRValue": "0x602006",
184f9900dd0SZhengjun Xing        "PEBS": "1",
1854c12f41aSZhengjun Xing        "PublicDescription": "Counts retired instructions that are delivered to the back-end after a front-end stall of at least 32 cycles. During this period the front-end delivered no uops.",
186f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
187f9900dd0SZhengjun Xing        "UMask": "0x1",
188f9900dd0SZhengjun Xing        "Unit": "cpu_core"
189f9900dd0SZhengjun Xing    },
190f9900dd0SZhengjun Xing    {
191f9900dd0SZhengjun Xing        "BriefDescription": "Retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 4 cycles which was not interrupted by a back-end stall.",
192f9900dd0SZhengjun Xing        "EventCode": "0xc6",
193f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.LATENCY_GE_4",
194f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
195f9900dd0SZhengjun Xing        "MSRValue": "0x600406",
196f9900dd0SZhengjun Xing        "PEBS": "1",
1974c12f41aSZhengjun Xing        "PublicDescription": "Counts retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 4 cycles which was not interrupted by a back-end stall.",
198f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
199f9900dd0SZhengjun Xing        "UMask": "0x1",
200f9900dd0SZhengjun Xing        "Unit": "cpu_core"
201f9900dd0SZhengjun Xing    },
202f9900dd0SZhengjun Xing    {
203f9900dd0SZhengjun Xing        "BriefDescription": "Retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 512 cycles which was not interrupted by a back-end stall.",
204f9900dd0SZhengjun Xing        "EventCode": "0xc6",
205f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.LATENCY_GE_512",
206f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
207f9900dd0SZhengjun Xing        "MSRValue": "0x620006",
208f9900dd0SZhengjun Xing        "PEBS": "1",
2094c12f41aSZhengjun Xing        "PublicDescription": "Counts retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 512 cycles which was not interrupted by a back-end stall.",
210f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
211f9900dd0SZhengjun Xing        "UMask": "0x1",
212f9900dd0SZhengjun Xing        "Unit": "cpu_core"
213f9900dd0SZhengjun Xing    },
214f9900dd0SZhengjun Xing    {
215f9900dd0SZhengjun Xing        "BriefDescription": "Retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 64 cycles which was not interrupted by a back-end stall.",
216f9900dd0SZhengjun Xing        "EventCode": "0xc6",
217f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.LATENCY_GE_64",
218f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
219f9900dd0SZhengjun Xing        "MSRValue": "0x604006",
220f9900dd0SZhengjun Xing        "PEBS": "1",
2214c12f41aSZhengjun Xing        "PublicDescription": "Counts retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 64 cycles which was not interrupted by a back-end stall.",
222f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
223f9900dd0SZhengjun Xing        "UMask": "0x1",
224f9900dd0SZhengjun Xing        "Unit": "cpu_core"
225f9900dd0SZhengjun Xing    },
226f9900dd0SZhengjun Xing    {
227f9900dd0SZhengjun Xing        "BriefDescription": "Retired instructions that are fetched after an interval where the front-end delivered no uops for a period of 8 cycles which was not interrupted by a back-end stall.",
228f9900dd0SZhengjun Xing        "EventCode": "0xc6",
229f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.LATENCY_GE_8",
230f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
231f9900dd0SZhengjun Xing        "MSRValue": "0x600806",
232f9900dd0SZhengjun Xing        "PEBS": "1",
2334c12f41aSZhengjun Xing        "PublicDescription": "Counts retired instructions that are delivered to the back-end after a front-end stall of at least 8 cycles. During this period the front-end delivered no uops.",
234f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
235f9900dd0SZhengjun Xing        "UMask": "0x1",
236f9900dd0SZhengjun Xing        "Unit": "cpu_core"
237f9900dd0SZhengjun Xing    },
238f9900dd0SZhengjun Xing    {
2395fa2481cSZhengjun Xing        "BriefDescription": "FRONTEND_RETIRED.MS_FLOWS",
2405fa2481cSZhengjun Xing        "EventCode": "0xc6",
2415fa2481cSZhengjun Xing        "EventName": "FRONTEND_RETIRED.MS_FLOWS",
2425fa2481cSZhengjun Xing        "MSRIndex": "0x3F7",
2435fa2481cSZhengjun Xing        "MSRValue": "0x8",
2445fa2481cSZhengjun Xing        "PEBS": "1",
2455fa2481cSZhengjun Xing        "SampleAfterValue": "100007",
2465fa2481cSZhengjun Xing        "UMask": "0x1",
2475fa2481cSZhengjun Xing        "Unit": "cpu_core"
2485fa2481cSZhengjun Xing    },
2495fa2481cSZhengjun Xing    {
250f9900dd0SZhengjun Xing        "BriefDescription": "Retired Instructions who experienced STLB (2nd level TLB) true miss.",
251f9900dd0SZhengjun Xing        "EventCode": "0xc6",
252f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.STLB_MISS",
253f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
254f9900dd0SZhengjun Xing        "MSRValue": "0x15",
255f9900dd0SZhengjun Xing        "PEBS": "1",
2564c12f41aSZhengjun Xing        "PublicDescription": "Counts retired Instructions that experienced STLB (2nd level TLB) true miss.",
257f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
258f9900dd0SZhengjun Xing        "UMask": "0x1",
259f9900dd0SZhengjun Xing        "Unit": "cpu_core"
260f9900dd0SZhengjun Xing    },
261f9900dd0SZhengjun Xing    {
2625fa2481cSZhengjun Xing        "BriefDescription": "FRONTEND_RETIRED.UNKNOWN_BRANCH",
263f9900dd0SZhengjun Xing        "EventCode": "0xc6",
264f9900dd0SZhengjun Xing        "EventName": "FRONTEND_RETIRED.UNKNOWN_BRANCH",
265f9900dd0SZhengjun Xing        "MSRIndex": "0x3F7",
266f9900dd0SZhengjun Xing        "MSRValue": "0x17",
267f9900dd0SZhengjun Xing        "PEBS": "1",
268f9900dd0SZhengjun Xing        "SampleAfterValue": "100007",
269f9900dd0SZhengjun Xing        "UMask": "0x1",
270f9900dd0SZhengjun Xing        "Unit": "cpu_core"
271f9900dd0SZhengjun Xing    },
272f9900dd0SZhengjun Xing    {
2734c12f41aSZhengjun Xing        "BriefDescription": "Counts the number of requests to the instruction cache for one or more bytes of a cache line.",
2744c12f41aSZhengjun Xing        "EventCode": "0x80",
2754c12f41aSZhengjun Xing        "EventName": "ICACHE.ACCESSES",
2764c12f41aSZhengjun Xing        "PublicDescription": "Counts the total number of requests to the instruction cache.  The event only counts new cache line accesses, so that multiple back to back fetches to the exact same cache line or byte chunk count as one.  Specifically, the event counts when accesses from sequential code crosses the cache line boundary, or when a branch target is moved to a new line or to a non-sequential byte chunk of the same line.",
2774c12f41aSZhengjun Xing        "SampleAfterValue": "200003",
2784c12f41aSZhengjun Xing        "UMask": "0x3",
2794c12f41aSZhengjun Xing        "Unit": "cpu_atom"
2804c12f41aSZhengjun Xing    },
2814c12f41aSZhengjun Xing    {
2824c12f41aSZhengjun Xing        "BriefDescription": "Counts the number of instruction cache misses.",
2834c12f41aSZhengjun Xing        "EventCode": "0x80",
2844c12f41aSZhengjun Xing        "EventName": "ICACHE.MISSES",
2854c12f41aSZhengjun Xing        "PublicDescription": "Counts the number of missed requests to the instruction cache.  The event only counts new cache line accesses, so that multiple back to back fetches to the exact same cache line and byte chunk count as one.  Specifically, the event counts when accesses from sequential code crosses the cache line boundary, or when a branch target is moved to a new line or to a non-sequential byte chunk of the same line.",
2864c12f41aSZhengjun Xing        "SampleAfterValue": "200003",
2874c12f41aSZhengjun Xing        "UMask": "0x2",
2884c12f41aSZhengjun Xing        "Unit": "cpu_atom"
2894c12f41aSZhengjun Xing    },
2904c12f41aSZhengjun Xing    {
291f9900dd0SZhengjun Xing        "BriefDescription": "Cycles where a code fetch is stalled due to L1 instruction cache miss.",
292f9900dd0SZhengjun Xing        "EventCode": "0x80",
293f9900dd0SZhengjun Xing        "EventName": "ICACHE_DATA.STALLS",
2944c12f41aSZhengjun Xing        "PublicDescription": "Counts cycles where a code line fetch is stalled due to an L1 instruction cache miss. The decode pipeline works at a 32 Byte granularity.",
295f9900dd0SZhengjun Xing        "SampleAfterValue": "500009",
296f9900dd0SZhengjun Xing        "UMask": "0x4",
297f9900dd0SZhengjun Xing        "Unit": "cpu_core"
298f9900dd0SZhengjun Xing    },
299f9900dd0SZhengjun Xing    {
300f9900dd0SZhengjun Xing        "BriefDescription": "Cycles where a code fetch is stalled due to L1 instruction cache tag miss.",
301f9900dd0SZhengjun Xing        "EventCode": "0x83",
302f9900dd0SZhengjun Xing        "EventName": "ICACHE_TAG.STALLS",
3034c12f41aSZhengjun Xing        "PublicDescription": "Counts cycles where a code fetch is stalled due to L1 instruction cache tag miss.",
304f9900dd0SZhengjun Xing        "SampleAfterValue": "200003",
305f9900dd0SZhengjun Xing        "UMask": "0x4",
306f9900dd0SZhengjun Xing        "Unit": "cpu_core"
307f9900dd0SZhengjun Xing    },
308f9900dd0SZhengjun Xing    {
309f9900dd0SZhengjun Xing        "BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering any Uop",
310f9900dd0SZhengjun Xing        "CounterMask": "1",
311f9900dd0SZhengjun Xing        "EventCode": "0x79",
312f9900dd0SZhengjun Xing        "EventName": "IDQ.DSB_CYCLES_ANY",
3134c12f41aSZhengjun Xing        "PublicDescription": "Counts the number of cycles uops were delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path.",
314f9900dd0SZhengjun Xing        "SampleAfterValue": "2000003",
315f9900dd0SZhengjun Xing        "UMask": "0x8",
316f9900dd0SZhengjun Xing        "Unit": "cpu_core"
317f9900dd0SZhengjun Xing    },
318f9900dd0SZhengjun Xing    {
319f9900dd0SZhengjun Xing        "BriefDescription": "Cycles DSB is delivering optimal number of Uops",
320f9900dd0SZhengjun Xing        "CounterMask": "6",
321f9900dd0SZhengjun Xing        "EventCode": "0x79",
322f9900dd0SZhengjun Xing        "EventName": "IDQ.DSB_CYCLES_OK",
3234c12f41aSZhengjun Xing        "PublicDescription": "Counts the number of cycles where optimal number of uops was delivered to the Instruction Decode Queue (IDQ) from the MITE (legacy decode pipeline) path. During these cycles uops are not being delivered from the Decode Stream Buffer (DSB).",
324f9900dd0SZhengjun Xing        "SampleAfterValue": "2000003",
325f9900dd0SZhengjun Xing        "UMask": "0x8",
326f9900dd0SZhengjun Xing        "Unit": "cpu_core"
327f9900dd0SZhengjun Xing    },
328f9900dd0SZhengjun Xing    {
329f9900dd0SZhengjun Xing        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path",
330f9900dd0SZhengjun Xing        "EventCode": "0x79",
331f9900dd0SZhengjun Xing        "EventName": "IDQ.DSB_UOPS",
3324c12f41aSZhengjun Xing        "PublicDescription": "Counts the number of uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path.",
333f9900dd0SZhengjun Xing        "SampleAfterValue": "2000003",
334f9900dd0SZhengjun Xing        "UMask": "0x8",
335f9900dd0SZhengjun Xing        "Unit": "cpu_core"
336f9900dd0SZhengjun Xing    },
337f9900dd0SZhengjun Xing    {
338f9900dd0SZhengjun Xing        "BriefDescription": "Cycles MITE is delivering any Uop",
339f9900dd0SZhengjun Xing        "CounterMask": "1",
340f9900dd0SZhengjun Xing        "EventCode": "0x79",
341f9900dd0SZhengjun Xing        "EventName": "IDQ.MITE_CYCLES_ANY",
3424c12f41aSZhengjun Xing        "PublicDescription": "Counts the number of cycles uops were delivered to the Instruction Decode Queue (IDQ) from the MITE (legacy decode pipeline) path. During these cycles uops are not being delivered from the Decode Stream Buffer (DSB).",
343f9900dd0SZhengjun Xing        "SampleAfterValue": "2000003",
344f9900dd0SZhengjun Xing        "UMask": "0x4",
345f9900dd0SZhengjun Xing        "Unit": "cpu_core"
346f9900dd0SZhengjun Xing    },
347f9900dd0SZhengjun Xing    {
348f9900dd0SZhengjun Xing        "BriefDescription": "Cycles MITE is delivering optimal number of Uops",
349f9900dd0SZhengjun Xing        "CounterMask": "6",
350f9900dd0SZhengjun Xing        "EventCode": "0x79",
351f9900dd0SZhengjun Xing        "EventName": "IDQ.MITE_CYCLES_OK",
3524c12f41aSZhengjun Xing        "PublicDescription": "Counts the number of cycles where optimal number of uops was delivered to the Instruction Decode Queue (IDQ) from the MITE (legacy decode pipeline) path. During these cycles uops are not being delivered from the Decode Stream Buffer (DSB).",
353f9900dd0SZhengjun Xing        "SampleAfterValue": "2000003",
354f9900dd0SZhengjun Xing        "UMask": "0x4",
355f9900dd0SZhengjun Xing        "Unit": "cpu_core"
356f9900dd0SZhengjun Xing    },
357f9900dd0SZhengjun Xing    {
358f9900dd0SZhengjun Xing        "BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path",
359f9900dd0SZhengjun Xing        "EventCode": "0x79",
360f9900dd0SZhengjun Xing        "EventName": "IDQ.MITE_UOPS",
3614c12f41aSZhengjun Xing        "PublicDescription": "Counts the number of uops delivered to Instruction Decode Queue (IDQ) from the MITE path. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
362f9900dd0SZhengjun Xing        "SampleAfterValue": "2000003",
363f9900dd0SZhengjun Xing        "UMask": "0x4",
364f9900dd0SZhengjun Xing        "Unit": "cpu_core"
365f9900dd0SZhengjun Xing    },
366f9900dd0SZhengjun Xing    {
367f9900dd0SZhengjun Xing        "BriefDescription": "Cycles when uops are being delivered to IDQ while MS is busy",
368f9900dd0SZhengjun Xing        "CounterMask": "1",
369f9900dd0SZhengjun Xing        "EventCode": "0x79",
370f9900dd0SZhengjun Xing        "EventName": "IDQ.MS_CYCLES_ANY",
3714c12f41aSZhengjun Xing        "PublicDescription": "Counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequencer (MS) is busy. Uops maybe initiated by Decode Stream Buffer (DSB) or MITE.",
372f9900dd0SZhengjun Xing        "SampleAfterValue": "2000003",
373f9900dd0SZhengjun Xing        "UMask": "0x20",
374f9900dd0SZhengjun Xing        "Unit": "cpu_core"
375f9900dd0SZhengjun Xing    },
376f9900dd0SZhengjun Xing    {
377f9900dd0SZhengjun Xing        "BriefDescription": "Number of switches from DSB or MITE to the MS",
378f9900dd0SZhengjun Xing        "CounterMask": "1",
379f9900dd0SZhengjun Xing        "EdgeDetect": "1",
380f9900dd0SZhengjun Xing        "EventCode": "0x79",
381f9900dd0SZhengjun Xing        "EventName": "IDQ.MS_SWITCHES",
3824c12f41aSZhengjun Xing        "PublicDescription": "Number of switches from DSB (Decode Stream Buffer) or MITE (legacy decode pipeline) to the Microcode Sequencer.",
383f9900dd0SZhengjun Xing        "SampleAfterValue": "100003",
384f9900dd0SZhengjun Xing        "UMask": "0x20",
385f9900dd0SZhengjun Xing        "Unit": "cpu_core"
386f9900dd0SZhengjun Xing    },
387f9900dd0SZhengjun Xing    {
388f9900dd0SZhengjun Xing        "BriefDescription": "Uops delivered to IDQ while MS is busy",
389f9900dd0SZhengjun Xing        "EventCode": "0x79",
390f9900dd0SZhengjun Xing        "EventName": "IDQ.MS_UOPS",
3914c12f41aSZhengjun Xing        "PublicDescription": "Counts the total number of uops delivered by the Microcode Sequencer (MS).",
392f9900dd0SZhengjun Xing        "SampleAfterValue": "1000003",
393f9900dd0SZhengjun Xing        "UMask": "0x20",
394f9900dd0SZhengjun Xing        "Unit": "cpu_core"
395f9900dd0SZhengjun Xing    },
396f9900dd0SZhengjun Xing    {
397f9900dd0SZhengjun Xing        "BriefDescription": "Uops not delivered by IDQ when backend of the machine is not stalled",
398f9900dd0SZhengjun Xing        "EventCode": "0x9c",
399f9900dd0SZhengjun Xing        "EventName": "IDQ_UOPS_NOT_DELIVERED.CORE",
4004c12f41aSZhengjun Xing        "PublicDescription": "Counts the number of uops not delivered to by the Instruction Decode Queue (IDQ) to the back-end of the pipeline when there was no back-end stalls. This event counts for one SMT thread in a given cycle.",
401f9900dd0SZhengjun Xing        "SampleAfterValue": "1000003",
402f9900dd0SZhengjun Xing        "UMask": "0x1",
403f9900dd0SZhengjun Xing        "Unit": "cpu_core"
404f9900dd0SZhengjun Xing    },
405f9900dd0SZhengjun Xing    {
406f9900dd0SZhengjun Xing        "BriefDescription": "Cycles when no uops are not delivered by the IDQ when backend of the machine is not stalled",
407f9900dd0SZhengjun Xing        "CounterMask": "6",
408f9900dd0SZhengjun Xing        "EventCode": "0x9c",
409f9900dd0SZhengjun Xing        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE",
4104c12f41aSZhengjun Xing        "PublicDescription": "Counts the number of cycles when no uops were delivered by the Instruction Decode Queue (IDQ) to the back-end of the pipeline when there was no back-end stalls. This event counts for one SMT thread in a given cycle.",
411f9900dd0SZhengjun Xing        "SampleAfterValue": "1000003",
412f9900dd0SZhengjun Xing        "UMask": "0x1",
413f9900dd0SZhengjun Xing        "Unit": "cpu_core"
414f9900dd0SZhengjun Xing    },
415f9900dd0SZhengjun Xing    {
416f9900dd0SZhengjun Xing        "BriefDescription": "Cycles when optimal number of uops was delivered to the back-end when the back-end is not stalled",
417f9900dd0SZhengjun Xing        "CounterMask": "1",
418f9900dd0SZhengjun Xing        "EventCode": "0x9c",
419f9900dd0SZhengjun Xing        "EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_FE_WAS_OK",
420f9900dd0SZhengjun Xing        "Invert": "1",
4214c12f41aSZhengjun Xing        "PublicDescription": "Counts the number of cycles when the optimal number of uops were delivered by the Instruction Decode Queue (IDQ) to the back-end of the pipeline when there was no back-end stalls. This event counts for one SMT thread in a given cycle.",
422f9900dd0SZhengjun Xing        "SampleAfterValue": "1000003",
423f9900dd0SZhengjun Xing        "UMask": "0x1",
424f9900dd0SZhengjun Xing        "Unit": "cpu_core"
425f9900dd0SZhengjun Xing    }
426f9900dd0SZhengjun Xing]
427