1b115df07SHaiyan Song[
2b115df07SHaiyan Song    {
3*dd7415ceSIan Rogers        "BriefDescription": "Cycles while L3 cache miss demand load is outstanding.",
4*dd7415ceSIan Rogers        "CounterMask": "2",
5*dd7415ceSIan Rogers        "EventCode": "0xA3",
6*dd7415ceSIan Rogers        "EventName": "CYCLE_ACTIVITY.CYCLES_L3_MISS",
7*dd7415ceSIan Rogers        "SampleAfterValue": "1000003",
8*dd7415ceSIan Rogers        "UMask": "0x2"
9*dd7415ceSIan Rogers    },
10*dd7415ceSIan Rogers    {
11*dd7415ceSIan Rogers        "BriefDescription": "Execution stalls while L3 cache miss demand load is outstanding.",
12*dd7415ceSIan Rogers        "CounterMask": "6",
13*dd7415ceSIan Rogers        "EventCode": "0xa3",
14*dd7415ceSIan Rogers        "EventName": "CYCLE_ACTIVITY.STALLS_L3_MISS",
15*dd7415ceSIan Rogers        "SampleAfterValue": "1000003",
16*dd7415ceSIan Rogers        "UMask": "0x6"
17b115df07SHaiyan Song    },
18b115df07SHaiyan Song    {
1971fbc431SJin Yao        "BriefDescription": "Number of times an HLE execution aborted due to any reasons (multiple categories may count as one).",
20b115df07SHaiyan Song        "EventCode": "0xc8",
21b115df07SHaiyan Song        "EventName": "HLE_RETIRED.ABORTED",
2271fbc431SJin Yao        "PublicDescription": "Counts the number of times HLE abort was triggered.",
23b115df07SHaiyan Song        "SampleAfterValue": "100003",
2471fbc431SJin Yao        "UMask": "0x4"
25b115df07SHaiyan Song    },
26b115df07SHaiyan Song    {
27*dd7415ceSIan Rogers        "BriefDescription": "Number of times an HLE execution aborted due to unfriendly events (such as interrupts).",
28*dd7415ceSIan Rogers        "EventCode": "0xc8",
29*dd7415ceSIan Rogers        "EventName": "HLE_RETIRED.ABORTED_EVENTS",
30*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times an HLE execution aborted due to unfriendly events (such as interrupts).",
31*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
32*dd7415ceSIan Rogers        "UMask": "0x80"
33*dd7415ceSIan Rogers    },
34*dd7415ceSIan Rogers    {
35*dd7415ceSIan Rogers        "BriefDescription": "Number of times an HLE execution aborted due to various memory events (e.g., read/write capacity and conflicts).",
36*dd7415ceSIan Rogers        "EventCode": "0xc8",
37*dd7415ceSIan Rogers        "EventName": "HLE_RETIRED.ABORTED_MEM",
38*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times an HLE execution aborted due to various memory events (e.g., read/write capacity and conflicts).",
39*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
40*dd7415ceSIan Rogers        "UMask": "0x8"
41*dd7415ceSIan Rogers    },
42*dd7415ceSIan Rogers    {
43*dd7415ceSIan Rogers        "BriefDescription": "Number of times an HLE execution aborted due to HLE-unfriendly instructions and certain unfriendly events (such as AD assists etc.).",
44*dd7415ceSIan Rogers        "EventCode": "0xc8",
45*dd7415ceSIan Rogers        "EventName": "HLE_RETIRED.ABORTED_UNFRIENDLY",
46*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times an HLE execution aborted due to HLE-unfriendly instructions and certain unfriendly events (such as AD assists etc.).",
47*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
48*dd7415ceSIan Rogers        "UMask": "0x20"
49*dd7415ceSIan Rogers    },
50*dd7415ceSIan Rogers    {
51*dd7415ceSIan Rogers        "BriefDescription": "Number of times an HLE execution successfully committed",
52*dd7415ceSIan Rogers        "EventCode": "0xc8",
53*dd7415ceSIan Rogers        "EventName": "HLE_RETIRED.COMMIT",
54*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times HLE commit succeeded.",
55*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
56*dd7415ceSIan Rogers        "UMask": "0x2"
57*dd7415ceSIan Rogers    },
58*dd7415ceSIan Rogers    {
59*dd7415ceSIan Rogers        "BriefDescription": "Number of times an HLE execution started.",
60*dd7415ceSIan Rogers        "EventCode": "0xc8",
61*dd7415ceSIan Rogers        "EventName": "HLE_RETIRED.START",
62*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times we entered an HLE region. Does not count nested transactions.",
63*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
64*dd7415ceSIan Rogers        "UMask": "0x1"
65*dd7415ceSIan Rogers    },
66*dd7415ceSIan Rogers    {
67*dd7415ceSIan Rogers        "BriefDescription": "Number of machine clears due to memory ordering conflicts.",
68*dd7415ceSIan Rogers        "EventCode": "0xc3",
69*dd7415ceSIan Rogers        "EventName": "MACHINE_CLEARS.MEMORY_ORDERING",
70*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of Machine Clears detected dye to memory ordering. Memory Ordering Machine Clears may apply when a memory read may not conform to the memory ordering rules of the x86 architecture",
7171fbc431SJin Yao        "SampleAfterValue": "100003",
72*dd7415ceSIan Rogers        "UMask": "0x2"
73*dd7415ceSIan Rogers    },
74*dd7415ceSIan Rogers    {
75*dd7415ceSIan Rogers        "BriefDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 128 cycles.",
76*dd7415ceSIan Rogers        "Data_LA": "1",
77*dd7415ceSIan Rogers        "EventCode": "0xcd",
78*dd7415ceSIan Rogers        "EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_128",
79*dd7415ceSIan Rogers        "MSRIndex": "0x3F6",
80*dd7415ceSIan Rogers        "MSRValue": "0x80",
81*dd7415ceSIan Rogers        "PEBS": "2",
82*dd7415ceSIan Rogers        "PublicDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 128 cycles.  Reported latency may be longer than just the memory latency.",
83*dd7415ceSIan Rogers        "SampleAfterValue": "1009",
8471fbc431SJin Yao        "UMask": "0x1"
85b115df07SHaiyan Song    },
86b115df07SHaiyan Song    {
8771fbc431SJin Yao        "BriefDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 16 cycles.",
8871fbc431SJin Yao        "Data_LA": "1",
8971fbc431SJin Yao        "EventCode": "0xcd",
90b115df07SHaiyan Song        "EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_16",
91b115df07SHaiyan Song        "MSRIndex": "0x3F6",
9271fbc431SJin Yao        "MSRValue": "0x10",
9371fbc431SJin Yao        "PEBS": "2",
9471fbc431SJin Yao        "PublicDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 16 cycles.  Reported latency may be longer than just the memory latency.",
95b115df07SHaiyan Song        "SampleAfterValue": "20011",
9671fbc431SJin Yao        "UMask": "0x1"
97b115df07SHaiyan Song    },
98b115df07SHaiyan Song    {
99*dd7415ceSIan Rogers        "BriefDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 256 cycles.",
100*dd7415ceSIan Rogers        "Data_LA": "1",
101*dd7415ceSIan Rogers        "EventCode": "0xcd",
102*dd7415ceSIan Rogers        "EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_256",
103*dd7415ceSIan Rogers        "MSRIndex": "0x3F6",
104*dd7415ceSIan Rogers        "MSRValue": "0x100",
105*dd7415ceSIan Rogers        "PEBS": "2",
106*dd7415ceSIan Rogers        "PublicDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 256 cycles.  Reported latency may be longer than just the memory latency.",
107*dd7415ceSIan Rogers        "SampleAfterValue": "503",
10871fbc431SJin Yao        "UMask": "0x1"
109b115df07SHaiyan Song    },
110b115df07SHaiyan Song    {
111*dd7415ceSIan Rogers        "BriefDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 32 cycles.",
112*dd7415ceSIan Rogers        "Data_LA": "1",
113*dd7415ceSIan Rogers        "EventCode": "0xcd",
114*dd7415ceSIan Rogers        "EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_32",
115*dd7415ceSIan Rogers        "MSRIndex": "0x3F6",
116*dd7415ceSIan Rogers        "MSRValue": "0x20",
117*dd7415ceSIan Rogers        "PEBS": "2",
118*dd7415ceSIan Rogers        "PublicDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 32 cycles.  Reported latency may be longer than just the memory latency.",
119*dd7415ceSIan Rogers        "SampleAfterValue": "100007",
120*dd7415ceSIan Rogers        "UMask": "0x1"
121b115df07SHaiyan Song    },
122b115df07SHaiyan Song    {
123*dd7415ceSIan Rogers        "BriefDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 4 cycles.",
124*dd7415ceSIan Rogers        "Data_LA": "1",
125*dd7415ceSIan Rogers        "EventCode": "0xcd",
126*dd7415ceSIan Rogers        "EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_4",
127*dd7415ceSIan Rogers        "MSRIndex": "0x3F6",
128*dd7415ceSIan Rogers        "MSRValue": "0x4",
129*dd7415ceSIan Rogers        "PEBS": "2",
130*dd7415ceSIan Rogers        "PublicDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 4 cycles.  Reported latency may be longer than just the memory latency.",
13171fbc431SJin Yao        "SampleAfterValue": "100003",
13271fbc431SJin Yao        "UMask": "0x1"
13371fbc431SJin Yao    },
13471fbc431SJin Yao    {
13571fbc431SJin Yao        "BriefDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 512 cycles.",
13671fbc431SJin Yao        "Data_LA": "1",
13771fbc431SJin Yao        "EventCode": "0xcd",
138b115df07SHaiyan Song        "EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_512",
139b115df07SHaiyan Song        "MSRIndex": "0x3F6",
14071fbc431SJin Yao        "MSRValue": "0x200",
14171fbc431SJin Yao        "PEBS": "2",
14271fbc431SJin Yao        "PublicDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 512 cycles.  Reported latency may be longer than just the memory latency.",
143b115df07SHaiyan Song        "SampleAfterValue": "101",
14471fbc431SJin Yao        "UMask": "0x1"
14571fbc431SJin Yao    },
14671fbc431SJin Yao    {
147*dd7415ceSIan Rogers        "BriefDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 64 cycles.",
148*dd7415ceSIan Rogers        "Data_LA": "1",
149*dd7415ceSIan Rogers        "EventCode": "0xcd",
150*dd7415ceSIan Rogers        "EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_64",
151*dd7415ceSIan Rogers        "MSRIndex": "0x3F6",
152*dd7415ceSIan Rogers        "MSRValue": "0x40",
153*dd7415ceSIan Rogers        "PEBS": "2",
154*dd7415ceSIan Rogers        "PublicDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 64 cycles.  Reported latency may be longer than just the memory latency.",
155*dd7415ceSIan Rogers        "SampleAfterValue": "2003",
156*dd7415ceSIan Rogers        "UMask": "0x1"
15771fbc431SJin Yao    },
15871fbc431SJin Yao    {
159*dd7415ceSIan Rogers        "BriefDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 8 cycles.",
160*dd7415ceSIan Rogers        "Data_LA": "1",
161*dd7415ceSIan Rogers        "EventCode": "0xcd",
162*dd7415ceSIan Rogers        "EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_8",
163*dd7415ceSIan Rogers        "MSRIndex": "0x3F6",
164*dd7415ceSIan Rogers        "MSRValue": "0x8",
165*dd7415ceSIan Rogers        "PEBS": "2",
166*dd7415ceSIan Rogers        "PublicDescription": "Counts randomly selected loads when the latency from first dispatch to completion is greater than 8 cycles.  Reported latency may be longer than just the memory latency.",
167*dd7415ceSIan Rogers        "SampleAfterValue": "50021",
168*dd7415ceSIan Rogers        "UMask": "0x1"
16971fbc431SJin Yao    },
17071fbc431SJin Yao    {
171*dd7415ceSIan Rogers        "BriefDescription": "Counts demand instruction fetches and L1 instruction cache prefetches that was not supplied by the L3 cache.",
17271fbc431SJin Yao        "EventCode": "0xB7, 0xBB",
173*dd7415ceSIan Rogers        "EventName": "OCR.DEMAND_CODE_RD.L3_MISS",
17471fbc431SJin Yao        "MSRIndex": "0x1a6,0x1a7",
175*dd7415ceSIan Rogers        "MSRValue": "0x3FFFC00004",
17671fbc431SJin Yao        "SampleAfterValue": "100003",
17771fbc431SJin Yao        "UMask": "0x1"
17871fbc431SJin Yao    },
17971fbc431SJin Yao    {
180*dd7415ceSIan Rogers        "BriefDescription": "Counts demand data reads that was not supplied by the L3 cache.",
18171fbc431SJin Yao        "EventCode": "0xB7, 0xBB",
182*dd7415ceSIan Rogers        "EventName": "OCR.DEMAND_DATA_RD.L3_MISS",
18371fbc431SJin Yao        "MSRIndex": "0x1a6,0x1a7",
184*dd7415ceSIan Rogers        "MSRValue": "0x3FFFC00001",
185*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
186*dd7415ceSIan Rogers        "UMask": "0x1"
187*dd7415ceSIan Rogers    },
188*dd7415ceSIan Rogers    {
189*dd7415ceSIan Rogers        "BriefDescription": "Counts demand reads for ownership (RFO) requests and software prefetches for exclusive ownership (PREFETCHW) that was not supplied by the L3 cache.",
190*dd7415ceSIan Rogers        "EventCode": "0xB7, 0xBB",
191*dd7415ceSIan Rogers        "EventName": "OCR.DEMAND_RFO.L3_MISS",
192*dd7415ceSIan Rogers        "MSRIndex": "0x1a6,0x1a7",
193*dd7415ceSIan Rogers        "MSRValue": "0x3FFFC00002",
194*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
195*dd7415ceSIan Rogers        "UMask": "0x1"
196*dd7415ceSIan Rogers    },
197*dd7415ceSIan Rogers    {
198*dd7415ceSIan Rogers        "BriefDescription": "Counts L1 data cache prefetch requests and software prefetches (except PREFETCHW) that was not supplied by the L3 cache.",
199*dd7415ceSIan Rogers        "EventCode": "0xB7, 0xBB",
200*dd7415ceSIan Rogers        "EventName": "OCR.HWPF_L1D_AND_SWPF.L3_MISS",
201*dd7415ceSIan Rogers        "MSRIndex": "0x1a6,0x1a7",
202*dd7415ceSIan Rogers        "MSRValue": "0x3FFFC00400",
203*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
204*dd7415ceSIan Rogers        "UMask": "0x1"
205*dd7415ceSIan Rogers    },
206*dd7415ceSIan Rogers    {
207*dd7415ceSIan Rogers        "BriefDescription": "Counts hardware prefetch data reads (which bring data to L2)  that was not supplied by the L3 cache.",
208*dd7415ceSIan Rogers        "EventCode": "0xB7, 0xBB",
209*dd7415ceSIan Rogers        "EventName": "OCR.HWPF_L2_DATA_RD.L3_MISS",
210*dd7415ceSIan Rogers        "MSRIndex": "0x1a6,0x1a7",
211*dd7415ceSIan Rogers        "MSRValue": "0x3FFFC00010",
21271fbc431SJin Yao        "SampleAfterValue": "100003",
21371fbc431SJin Yao        "UMask": "0x1"
21471fbc431SJin Yao    },
21571fbc431SJin Yao    {
21671fbc431SJin Yao        "BriefDescription": "Counts hardware prefetch RFOs (which bring data to L2) that was not supplied by the L3 cache.",
21771fbc431SJin Yao        "EventCode": "0xB7, 0xBB",
21871fbc431SJin Yao        "EventName": "OCR.HWPF_L2_RFO.L3_MISS",
21971fbc431SJin Yao        "MSRIndex": "0x1a6,0x1a7",
22071fbc431SJin Yao        "MSRValue": "0x3FFFC00020",
22171fbc431SJin Yao        "SampleAfterValue": "100003",
22271fbc431SJin Yao        "UMask": "0x1"
22371fbc431SJin Yao    },
22471fbc431SJin Yao    {
225*dd7415ceSIan Rogers        "BriefDescription": "Counts miscellaneous requests, such as I/O and un-cacheable accesses that was not supplied by the L3 cache.",
226*dd7415ceSIan Rogers        "EventCode": "0xB7, 0xBB",
227*dd7415ceSIan Rogers        "EventName": "OCR.OTHER.L3_MISS",
228*dd7415ceSIan Rogers        "MSRIndex": "0x1a6,0x1a7",
229*dd7415ceSIan Rogers        "MSRValue": "0x3FFFC08000",
230*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
231*dd7415ceSIan Rogers        "UMask": "0x1"
232*dd7415ceSIan Rogers    },
233*dd7415ceSIan Rogers    {
234*dd7415ceSIan Rogers        "BriefDescription": "Counts streaming stores that was not supplied by the L3 cache.",
235*dd7415ceSIan Rogers        "EventCode": "0xB7, 0xBB",
236*dd7415ceSIan Rogers        "EventName": "OCR.STREAMING_WR.L3_MISS",
237*dd7415ceSIan Rogers        "MSRIndex": "0x1a6,0x1a7",
238*dd7415ceSIan Rogers        "MSRValue": "0x3FFFC00800",
239*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
240*dd7415ceSIan Rogers        "UMask": "0x1"
241*dd7415ceSIan Rogers    },
242*dd7415ceSIan Rogers    {
243*dd7415ceSIan Rogers        "BriefDescription": "Counts demand data read requests that miss the L3 cache.",
24471fbc431SJin Yao        "EventCode": "0xb0",
24571fbc431SJin Yao        "EventName": "OFFCORE_REQUESTS.L3_MISS_DEMAND_DATA_RD",
24671fbc431SJin Yao        "SampleAfterValue": "100003",
24771fbc431SJin Yao        "UMask": "0x10"
24871fbc431SJin Yao    },
24971fbc431SJin Yao    {
250*dd7415ceSIan Rogers        "BriefDescription": "Cycles where at least one demand data read request known to have missed the L3 cache is pending.",
251*dd7415ceSIan Rogers        "CounterMask": "1",
252*dd7415ceSIan Rogers        "EventCode": "0x60",
253*dd7415ceSIan Rogers        "EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_L3_MISS_DEMAND_DATA_RD",
254*dd7415ceSIan Rogers        "PublicDescription": "Cycles where at least one demand data read request known to have missed the L3 cache is pending.  Note that this does not capture all elapsed cycles while requests are outstanding - only cycles from when the requests were known to have missed the L3 cache.",
25571fbc431SJin Yao        "SampleAfterValue": "1000003",
256*dd7415ceSIan Rogers        "UMask": "0x10"
25771fbc431SJin Yao    },
25871fbc431SJin Yao    {
25971fbc431SJin Yao        "BriefDescription": "Number of times an RTM execution aborted.",
26071fbc431SJin Yao        "EventCode": "0xc9",
26171fbc431SJin Yao        "EventName": "RTM_RETIRED.ABORTED",
26271fbc431SJin Yao        "PublicDescription": "Counts the number of times RTM abort was triggered.",
26371fbc431SJin Yao        "SampleAfterValue": "100003",
26471fbc431SJin Yao        "UMask": "0x4"
26571fbc431SJin Yao    },
26671fbc431SJin Yao    {
267*dd7415ceSIan Rogers        "BriefDescription": "Number of times an RTM execution aborted due to none of the previous 4 categories (e.g. interrupt)",
268*dd7415ceSIan Rogers        "EventCode": "0xc9",
269*dd7415ceSIan Rogers        "EventName": "RTM_RETIRED.ABORTED_EVENTS",
270*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times an RTM execution aborted due to none of the previous 4 categories (e.g. interrupt).",
271*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
272*dd7415ceSIan Rogers        "UMask": "0x80"
273*dd7415ceSIan Rogers    },
274*dd7415ceSIan Rogers    {
275*dd7415ceSIan Rogers        "BriefDescription": "Number of times an RTM execution aborted due to various memory events (e.g. read/write capacity and conflicts)",
276*dd7415ceSIan Rogers        "EventCode": "0xc9",
277*dd7415ceSIan Rogers        "EventName": "RTM_RETIRED.ABORTED_MEM",
278*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times an RTM execution aborted due to various memory events (e.g. read/write capacity and conflicts).",
279*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
280*dd7415ceSIan Rogers        "UMask": "0x8"
281*dd7415ceSIan Rogers    },
282*dd7415ceSIan Rogers    {
283*dd7415ceSIan Rogers        "BriefDescription": "Number of times an RTM execution aborted due to incompatible memory type",
284*dd7415ceSIan Rogers        "EventCode": "0xc9",
285*dd7415ceSIan Rogers        "EventName": "RTM_RETIRED.ABORTED_MEMTYPE",
286*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times an RTM execution aborted due to incompatible memory type.",
287*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
288*dd7415ceSIan Rogers        "UMask": "0x40"
289*dd7415ceSIan Rogers    },
290*dd7415ceSIan Rogers    {
291*dd7415ceSIan Rogers        "BriefDescription": "Number of times an RTM execution aborted due to HLE-unfriendly instructions",
292*dd7415ceSIan Rogers        "EventCode": "0xc9",
293*dd7415ceSIan Rogers        "EventName": "RTM_RETIRED.ABORTED_UNFRIENDLY",
294*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times an RTM execution aborted due to HLE-unfriendly instructions.",
295*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
296*dd7415ceSIan Rogers        "UMask": "0x20"
297*dd7415ceSIan Rogers    },
298*dd7415ceSIan Rogers    {
299*dd7415ceSIan Rogers        "BriefDescription": "Number of times an RTM execution successfully committed",
300*dd7415ceSIan Rogers        "EventCode": "0xc9",
301*dd7415ceSIan Rogers        "EventName": "RTM_RETIRED.COMMIT",
302*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times RTM commit succeeded.",
303*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
304*dd7415ceSIan Rogers        "UMask": "0x2"
305*dd7415ceSIan Rogers    },
306*dd7415ceSIan Rogers    {
30771fbc431SJin Yao        "BriefDescription": "Number of times an RTM execution started.",
30871fbc431SJin Yao        "EventCode": "0xc9",
30971fbc431SJin Yao        "EventName": "RTM_RETIRED.START",
31071fbc431SJin Yao        "PublicDescription": "Counts the number of times we entered an RTM region. Does not count nested transactions.",
31171fbc431SJin Yao        "SampleAfterValue": "100003",
31271fbc431SJin Yao        "UMask": "0x1"
31371fbc431SJin Yao    },
31471fbc431SJin Yao    {
315*dd7415ceSIan Rogers        "BriefDescription": "Counts the number of times a class of instructions that may cause a transactional abort was executed inside a transactional region",
316*dd7415ceSIan Rogers        "EventCode": "0x5d",
317*dd7415ceSIan Rogers        "EventName": "TX_EXEC.MISC2",
318*dd7415ceSIan Rogers        "PublicDescription": "Counts Unfriendly TSX abort triggered by a vzeroupper instruction.",
31971fbc431SJin Yao        "SampleAfterValue": "100003",
320*dd7415ceSIan Rogers        "UMask": "0x2"
321*dd7415ceSIan Rogers    },
322*dd7415ceSIan Rogers    {
323*dd7415ceSIan Rogers        "BriefDescription": "Number of times an instruction execution caused the transactional nest count supported to be exceeded",
324*dd7415ceSIan Rogers        "EventCode": "0x5d",
325*dd7415ceSIan Rogers        "EventName": "TX_EXEC.MISC3",
326*dd7415ceSIan Rogers        "PublicDescription": "Counts Unfriendly TSX abort triggered by a nest count that is too deep.",
327*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
328*dd7415ceSIan Rogers        "UMask": "0x4"
329*dd7415ceSIan Rogers    },
330*dd7415ceSIan Rogers    {
331*dd7415ceSIan Rogers        "BriefDescription": "Speculatively counts the number of TSX aborts due to a data capacity limitation for transactional reads",
332*dd7415ceSIan Rogers        "EventCode": "0x54",
333*dd7415ceSIan Rogers        "EventName": "TX_MEM.ABORT_CAPACITY_READ",
334*dd7415ceSIan Rogers        "PublicDescription": "Speculatively counts the number of Transactional Synchronization Extensions (TSX) aborts due to a data capacity limitation for transactional reads",
335*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
336*dd7415ceSIan Rogers        "UMask": "0x80"
337*dd7415ceSIan Rogers    },
338*dd7415ceSIan Rogers    {
339*dd7415ceSIan Rogers        "BriefDescription": "Speculatively counts the number of TSX aborts due to a data capacity limitation for transactional writes.",
340*dd7415ceSIan Rogers        "EventCode": "0x54",
341*dd7415ceSIan Rogers        "EventName": "TX_MEM.ABORT_CAPACITY_WRITE",
342*dd7415ceSIan Rogers        "PublicDescription": "Speculatively counts the number of Transactional Synchronization Extensions (TSX) aborts due to a data capacity limitation for transactional writes.",
343*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
344*dd7415ceSIan Rogers        "UMask": "0x2"
345*dd7415ceSIan Rogers    },
346*dd7415ceSIan Rogers    {
347*dd7415ceSIan Rogers        "BriefDescription": "Number of times a transactional abort was signaled due to a data conflict on a transactionally accessed address",
348*dd7415ceSIan Rogers        "EventCode": "0x54",
349*dd7415ceSIan Rogers        "EventName": "TX_MEM.ABORT_CONFLICT",
350*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times a TSX line had a cache conflict.",
351*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
352*dd7415ceSIan Rogers        "UMask": "0x1"
353*dd7415ceSIan Rogers    },
354*dd7415ceSIan Rogers    {
355*dd7415ceSIan Rogers        "BriefDescription": "Number of times an HLE transactional execution aborted due to XRELEASE lock not satisfying the address and value requirements in the elision buffer",
356*dd7415ceSIan Rogers        "EventCode": "0x54",
357*dd7415ceSIan Rogers        "EventName": "TX_MEM.ABORT_HLE_ELISION_BUFFER_MISMATCH",
358*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times a TSX Abort was triggered due to release/commit but data and address mismatch.",
359*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
360*dd7415ceSIan Rogers        "UMask": "0x10"
361*dd7415ceSIan Rogers    },
362*dd7415ceSIan Rogers    {
363*dd7415ceSIan Rogers        "BriefDescription": "Number of times an HLE transactional execution aborted due to NoAllocatedElisionBuffer being non-zero.",
364*dd7415ceSIan Rogers        "EventCode": "0x54",
365*dd7415ceSIan Rogers        "EventName": "TX_MEM.ABORT_HLE_ELISION_BUFFER_NOT_EMPTY",
366*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times a TSX Abort was triggered due to commit but Lock Buffer not empty.",
367*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
368*dd7415ceSIan Rogers        "UMask": "0x8"
369*dd7415ceSIan Rogers    },
370*dd7415ceSIan Rogers    {
371*dd7415ceSIan Rogers        "BriefDescription": "Number of times an HLE transactional execution aborted due to an unsupported read alignment from the elision buffer.",
372*dd7415ceSIan Rogers        "EventCode": "0x54",
373*dd7415ceSIan Rogers        "EventName": "TX_MEM.ABORT_HLE_ELISION_BUFFER_UNSUPPORTED_ALIGNMENT",
374*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times a TSX Abort was triggered due to attempting an unsupported alignment from Lock Buffer.",
375*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
37671fbc431SJin Yao        "UMask": "0x20"
37771fbc431SJin Yao    },
37871fbc431SJin Yao    {
37971fbc431SJin Yao        "BriefDescription": "Number of times a HLE transactional region aborted due to a non XRELEASE prefixed instruction writing to an elided lock in the elision buffer",
38071fbc431SJin Yao        "EventCode": "0x54",
38171fbc431SJin Yao        "EventName": "TX_MEM.ABORT_HLE_STORE_TO_ELIDED_LOCK",
38271fbc431SJin Yao        "PublicDescription": "Counts the number of times a TSX Abort was triggered due to a non-release/commit store to lock.",
38371fbc431SJin Yao        "SampleAfterValue": "100003",
38471fbc431SJin Yao        "UMask": "0x4"
385*dd7415ceSIan Rogers    },
386*dd7415ceSIan Rogers    {
387*dd7415ceSIan Rogers        "BriefDescription": "Number of times HLE lock could not be elided due to ElisionBufferAvailable being zero.",
388*dd7415ceSIan Rogers        "EventCode": "0x54",
389*dd7415ceSIan Rogers        "EventName": "TX_MEM.HLE_ELISION_BUFFER_FULL",
390*dd7415ceSIan Rogers        "PublicDescription": "Counts the number of times we could not allocate Lock Buffer.",
391*dd7415ceSIan Rogers        "SampleAfterValue": "100003",
392*dd7415ceSIan Rogers        "UMask": "0x40"
393b115df07SHaiyan Song    }
394b115df07SHaiyan Song]
395