xref: /freebsd/lib/libpmc/pmc.sandybridgexeon.3 (revision fabe02f5f32772c12b0f3e1cbede16e1d9264904)
1*fabe02f5SSean Bruno.\" Copyright (c) 2012 Hiren Panchasara <hiren.panchasara@gmail.com>
2*fabe02f5SSean Bruno.\" All rights reserved.
3*fabe02f5SSean Bruno.\"
4*fabe02f5SSean Bruno.\" Redistribution and use in source and binary forms, with or without
5*fabe02f5SSean Bruno.\" modification, are permitted provided that the following conditions
6*fabe02f5SSean Bruno.\" are met:
7*fabe02f5SSean Bruno.\" 1. Redistributions of source code must retain the above copyright
8*fabe02f5SSean Bruno.\"    notice, this list of conditions and the following disclaimer.
9*fabe02f5SSean Bruno.\" 2. Redistributions in binary form must reproduce the above copyright
10*fabe02f5SSean Bruno.\"    notice, this list of conditions and the following disclaimer in the
11*fabe02f5SSean Bruno.\"    documentation and/or other materials provided with the distribution.
12*fabe02f5SSean Bruno.\"
13*fabe02f5SSean Bruno.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14*fabe02f5SSean Bruno.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15*fabe02f5SSean Bruno.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16*fabe02f5SSean Bruno.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17*fabe02f5SSean Bruno.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18*fabe02f5SSean Bruno.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19*fabe02f5SSean Bruno.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20*fabe02f5SSean Bruno.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21*fabe02f5SSean Bruno.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22*fabe02f5SSean Bruno.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23*fabe02f5SSean Bruno.\" SUCH DAMAGE.
24*fabe02f5SSean Bruno.\"
25*fabe02f5SSean Bruno.\" $FreeBSD$
26*fabe02f5SSean Bruno.\"
27*fabe02f5SSean Bruno.Dd October 18, 2012
28*fabe02f5SSean Bruno.Dt PMC.SANDYBRIDGEXEON 3
29*fabe02f5SSean Bruno.Os
30*fabe02f5SSean Bruno.Sh NAME
31*fabe02f5SSean Bruno.Nm pmc.sandybridgexeon
32*fabe02f5SSean Bruno.Nd measurement events for
33*fabe02f5SSean Bruno.Tn Intel
34*fabe02f5SSean Bruno.Tn Sandy Bridge Xeon
35*fabe02f5SSean Brunofamily CPUs
36*fabe02f5SSean Bruno.Sh LIBRARY
37*fabe02f5SSean Bruno.Lb libpmc
38*fabe02f5SSean Bruno.Sh SYNOPSIS
39*fabe02f5SSean Bruno.In pmc.h
40*fabe02f5SSean Bruno.Sh DESCRIPTION
41*fabe02f5SSean Bruno.Tn Intel
42*fabe02f5SSean Bruno.Tn "Sandy Bridge Xeon"
43*fabe02f5SSean BrunoCPUs contain PMCs conforming to version 2 of the
44*fabe02f5SSean Bruno.Tn Intel
45*fabe02f5SSean Brunoperformance measurement architecture.
46*fabe02f5SSean BrunoThese CPUs may contain up to two classes of PMCs:
47*fabe02f5SSean Bruno.Bl -tag -width "Li PMC_CLASS_IAP"
48*fabe02f5SSean Bruno.It Li PMC_CLASS_IAF
49*fabe02f5SSean BrunoFixed-function counters that count only one hardware event per counter.
50*fabe02f5SSean Bruno.It Li PMC_CLASS_IAP
51*fabe02f5SSean BrunoProgrammable counters that may be configured to count one of a defined
52*fabe02f5SSean Brunoset of hardware events.
53*fabe02f5SSean Bruno.El
54*fabe02f5SSean Bruno.Pp
55*fabe02f5SSean BrunoThe number of PMCs available in each class and their widths need to be
56*fabe02f5SSean Brunodetermined at run time by calling
57*fabe02f5SSean Bruno.Xr pmc_cpuinfo 3 .
58*fabe02f5SSean Bruno.Pp
59*fabe02f5SSean BrunoIntel Sandy Bridge Xeon PMCs are documented in
60*fabe02f5SSean Bruno.Rs
61*fabe02f5SSean Bruno.%B "Intel(R) 64 and IA-32 Architectures Software Developer's Manual"
62*fabe02f5SSean Bruno.%T "Volume 3B: System Programming Guide, Part 2"
63*fabe02f5SSean Bruno.%N "Order Number: 253669-043US"
64*fabe02f5SSean Bruno.%D August 2012
65*fabe02f5SSean Bruno.%Q "Intel Corporation"
66*fabe02f5SSean Bruno.Re
67*fabe02f5SSean Bruno.Ss SANDYBRIDGE XEON FIXED FUNCTION PMCS
68*fabe02f5SSean BrunoThese PMCs and their supported events are documented in
69*fabe02f5SSean Bruno.Xr pmc.iaf 3 .
70*fabe02f5SSean Bruno.Ss SANDYBRIDGE XEON PROGRAMMABLE PMCS
71*fabe02f5SSean BrunoThe programmable PMCs support the following capabilities:
72*fabe02f5SSean Bruno.Bl -column "PMC_CAP_INTERRUPT" "Support"
73*fabe02f5SSean Bruno.It Em Capability Ta Em Support
74*fabe02f5SSean Bruno.It PMC_CAP_CASCADE Ta \&No
75*fabe02f5SSean Bruno.It PMC_CAP_EDGE Ta Yes
76*fabe02f5SSean Bruno.It PMC_CAP_INTERRUPT Ta Yes
77*fabe02f5SSean Bruno.It PMC_CAP_INVERT Ta Yes
78*fabe02f5SSean Bruno.It PMC_CAP_READ Ta Yes
79*fabe02f5SSean Bruno.It PMC_CAP_PRECISE Ta \&No
80*fabe02f5SSean Bruno.It PMC_CAP_SYSTEM Ta Yes
81*fabe02f5SSean Bruno.It PMC_CAP_TAGGING Ta \&No
82*fabe02f5SSean Bruno.It PMC_CAP_THRESHOLD Ta Yes
83*fabe02f5SSean Bruno.It PMC_CAP_USER Ta Yes
84*fabe02f5SSean Bruno.It PMC_CAP_WRITE Ta Yes
85*fabe02f5SSean Bruno.El
86*fabe02f5SSean Bruno.Ss Event Qualifiers
87*fabe02f5SSean BrunoEvent specifiers for these PMCs support the following common
88*fabe02f5SSean Brunoqualifiers:
89*fabe02f5SSean Bruno.Bl -tag -width indent
90*fabe02f5SSean Bruno.It Li rsp= Ns Ar value
91*fabe02f5SSean BrunoConfigure the Off-core Response bits.
92*fabe02f5SSean Bruno.Bl -tag -width indent
93*fabe02f5SSean Bruno.It Li REQ_DMND_DATA_RD
94*fabe02f5SSean BrunoCounts the number of demand and DCU prefetch data reads of full and partial
95*fabe02f5SSean Brunocachelines as well as demand data page table entry cacheline reads. Does not
96*fabe02f5SSean Brunocount L2 data read prefetches or instruction fetches.
97*fabe02f5SSean Bruno.It Li REQ_DMND_RFO
98*fabe02f5SSean BrunoCounts the number of demand and DCU prefetch reads for ownership (RFO)
99*fabe02f5SSean Brunorequests generated by a write to data cacheline. Does not count L2 RFO
100*fabe02f5SSean Brunoprefetches.
101*fabe02f5SSean Bruno.It Li REQ_DMND_IFETCH
102*fabe02f5SSean BrunoCounts the number of demand and DCU prefetch instruction cacheline reads.
103*fabe02f5SSean BrunoDoes not count L2 code read prefetches.
104*fabe02f5SSean Bruno.It Li REQ_WB
105*fabe02f5SSean BrunoCounts the number of writeback (modified to exclusive) transactions.
106*fabe02f5SSean Bruno.It Li REQ_PF_DATA_RD
107*fabe02f5SSean BrunoCounts the number of data cacheline reads generated by L2 prefetchers.
108*fabe02f5SSean Bruno.It Li REQ_PF_RFO
109*fabe02f5SSean BrunoCounts the number of RFO requests generated by L2 prefetchers.
110*fabe02f5SSean Bruno.It Li REQ_PF_IFETCH
111*fabe02f5SSean BrunoCounts the number of code reads generated by L2 prefetchers.
112*fabe02f5SSean Bruno.It Li REQ_PF_LLC_DATA_RD
113*fabe02f5SSean BrunoL2 prefetcher to L3 for loads.
114*fabe02f5SSean Bruno.It Li REQ_PF_LLC_RFO
115*fabe02f5SSean BrunoRFO requests generated by L2 prefetcher
116*fabe02f5SSean Bruno.It Li REQ_PF_LLC_IFETCH
117*fabe02f5SSean BrunoL2 prefetcher to L3 for instruction fetches.
118*fabe02f5SSean Bruno.It Li REQ_BUS_LOCKS
119*fabe02f5SSean BrunoBus lock and split lock requests.
120*fabe02f5SSean Bruno.It Li REQ_STRM_ST
121*fabe02f5SSean BrunoStreaming store requests.
122*fabe02f5SSean Bruno.It Li REQ_OTHER
123*fabe02f5SSean BrunoAny other request that crosses IDI, including I/O.
124*fabe02f5SSean Bruno.It Li RES_ANY
125*fabe02f5SSean BrunoCatch all value for any response types.
126*fabe02f5SSean Bruno.It Li RES_SUPPLIER_NO_SUPP
127*fabe02f5SSean BrunoNo Supplier Information available.
128*fabe02f5SSean Bruno.It Li RES_SUPPLIER_LLC_HITM
129*fabe02f5SSean BrunoM-state initial lookup stat in L3.
130*fabe02f5SSean Bruno.It Li RES_SUPPLIER_LLC_HITE
131*fabe02f5SSean BrunoE-state.
132*fabe02f5SSean Bruno.It Li RES_SUPPLIER_LLC_HITS
133*fabe02f5SSean BrunoS-state.
134*fabe02f5SSean Bruno.It Li RES_SUPPLIER_LLC_HITF
135*fabe02f5SSean BrunoF-state.
136*fabe02f5SSean Bruno.It Li RES_SUPPLIER_LOCAL
137*fabe02f5SSean BrunoLocal DRAM Controller.
138*fabe02f5SSean Bruno.It Li RES_SNOOP_SNPI_NONE
139*fabe02f5SSean BrunoNo details on snoop-related information.
140*fabe02f5SSean Bruno.It Li RES_SNOOP_SNP_NO_NEEDED
141*fabe02f5SSean BrunoNo snoop was needed to satisfy the request.
142*fabe02f5SSean Bruno.It Li RES_SNOOP_SNP_MISS
143*fabe02f5SSean BrunoA snoop was needed and it missed all snooped caches:
144*fabe02f5SSean Bruno-For LLC Hit, ReslHitl was returned by all cores
145*fabe02f5SSean Bruno-For LLC Miss, Rspl was returned by all sockets and data was returned from
146*fabe02f5SSean BrunoDRAM.
147*fabe02f5SSean Bruno.It Li RES_SNOOP_HIT_NO_FWD
148*fabe02f5SSean BrunoA snoop was needed and it hits in at least one snooped cache. Hit denotes a
149*fabe02f5SSean Brunocache-line was valid before snoop effect. This includes:
150*fabe02f5SSean Bruno-Snoop Hit w/ Invalidation (LLC Hit, RFO)
151*fabe02f5SSean Bruno-Snoop Hit, Left Shared (LLC Hit/Miss, IFetch/Data_RD)
152*fabe02f5SSean Bruno-Snoop Hit w/ Invalidation and No Forward (LLC Miss, RFO Hit S)
153*fabe02f5SSean BrunoIn the LLC Miss case, data is returned from DRAM.
154*fabe02f5SSean Bruno.It Li RES_SNOOP_HIT_FWD
155*fabe02f5SSean BrunoA snoop was needed and data was forwarded from a remote socket.
156*fabe02f5SSean BrunoThis includes:
157*fabe02f5SSean Bruno-Snoop Forward Clean, Left Shared (LLC Hit/Miss, IFetch/Data_RD/RFT).
158*fabe02f5SSean Bruno.It Li RES_SNOOP_HITM
159*fabe02f5SSean BrunoA snoop was needed and it HitM-ed in local or remote cache. HitM denotes a
160*fabe02f5SSean Brunocache-line was in modified state before effect as a results of snoop. This
161*fabe02f5SSean Brunoincludes:
162*fabe02f5SSean Bruno-Snoop HitM w/ WB (LLC miss, IFetch/Data_RD)
163*fabe02f5SSean Bruno-Snoop Forward Modified w/ Invalidation (LLC Hit/Miss, RFO)
164*fabe02f5SSean Bruno-Snoop MtoS (LLC Hit, IFetch/Data_RD).
165*fabe02f5SSean Bruno.It Li RES_NON_DRAM
166*fabe02f5SSean BrunoTarget was non-DRAM system address. This includes MMIO transactions.
167*fabe02f5SSean Bruno.El
168*fabe02f5SSean Bruno.It Li cmask= Ns Ar value
169*fabe02f5SSean BrunoConfigure the PMC to increment only if the number of configured
170*fabe02f5SSean Brunoevents measured in a cycle is greater than or equal to
171*fabe02f5SSean Bruno.Ar value .
172*fabe02f5SSean Bruno.It Li edge
173*fabe02f5SSean BrunoConfigure the PMC to count the number of de-asserted to asserted
174*fabe02f5SSean Brunotransitions of the conditions expressed by the other qualifiers.
175*fabe02f5SSean BrunoIf specified, the counter will increment only once whenever a
176*fabe02f5SSean Brunocondition becomes true, irrespective of the number of clocks during
177*fabe02f5SSean Brunowhich the condition remains true.
178*fabe02f5SSean Bruno.It Li inv
179*fabe02f5SSean BrunoInvert the sense of comparison when the
180*fabe02f5SSean Bruno.Dq Li cmask
181*fabe02f5SSean Brunoqualifier is present, making the counter increment when the number of
182*fabe02f5SSean Brunoevents per cycle is less than the value specified by the
183*fabe02f5SSean Bruno.Dq Li cmask
184*fabe02f5SSean Brunoqualifier.
185*fabe02f5SSean Bruno.It Li os
186*fabe02f5SSean BrunoConfigure the PMC to count events happening at processor privilege
187*fabe02f5SSean Brunolevel 0.
188*fabe02f5SSean Bruno.It Li usr
189*fabe02f5SSean BrunoConfigure the PMC to count events occurring at privilege levels 1, 2
190*fabe02f5SSean Brunoor 3.
191*fabe02f5SSean Bruno.El
192*fabe02f5SSean Bruno.Pp
193*fabe02f5SSean BrunoIf neither of the
194*fabe02f5SSean Bruno.Dq Li os
195*fabe02f5SSean Brunoor
196*fabe02f5SSean Bruno.Dq Li usr
197*fabe02f5SSean Brunoqualifiers are specified, the default is to enable both.
198*fabe02f5SSean Bruno.Ss Event Specifiers (Programmable PMCs)
199*fabe02f5SSean BrunoSandy Bridge Xeon programmable PMCs support the following events:
200*fabe02f5SSean Bruno.Bl -tag -width indent
201*fabe02f5SSean Bruno.It Li LD_BLOCKS.DATA_UNKNOWN
202*fabe02f5SSean Bruno.Pq Event 03H , Umask 01H
203*fabe02f5SSean Brunoblocked loads due to store buffer blocks with unknown data.
204*fabe02f5SSean Bruno.It Li LD_BLOCKS.STORE_FORWARD
205*fabe02f5SSean Bruno.Pq Event 03H , Umask 02H
206*fabe02f5SSean Brunoloads blocked by overlapping with store buffer that cannot
207*fabe02f5SSean Brunobe forwarded .
208*fabe02f5SSean Bruno.It Li LD_BLOCKS.NO_SR
209*fabe02f5SSean Bruno.Pq Event 03H , Umask 08H
210*fabe02f5SSean Bruno# of Split loads blocked due to resource not available.
211*fabe02f5SSean Bruno.It Li LD_BLOCKS.ALL_BLOCK
212*fabe02f5SSean Bruno.Pq Event 03H , Umask 10H
213*fabe02f5SSean BrunoNumber of cases where any load is blocked but has no
214*fabe02f5SSean BrunoDCU miss.
215*fabe02f5SSean Bruno.It Li MISALIGN_MEM_REF.LOADS
216*fabe02f5SSean Bruno.Pq Event 05H , Umask 01H
217*fabe02f5SSean BrunoSpeculative cache-line split load uops dispatched to
218*fabe02f5SSean BrunoL1D.
219*fabe02f5SSean Bruno.It Li MISALIGN_MEM_REF.STORES
220*fabe02f5SSean Bruno.Pq Event 05H , Umask 02H
221*fabe02f5SSean BrunoSpeculative cache-line split Store- address uops
222*fabe02f5SSean Brunodispatchedto L1D.
223*fabe02f5SSean Bruno.It Li LD_BLOCKS_PARTIAL.ADDRESS_ALIAS
224*fabe02f5SSean Bruno.Pq Event 07H , Umask 01H
225*fabe02f5SSean BrunoFalse dependencies in MOB due to partial compare on
226*fabe02f5SSean Brunoaddress.
227*fabe02f5SSean Bruno.It Li LD_BLOCKS_PARTIAL.ALL_STALL_BLOCK
228*fabe02f5SSean Bruno.Pq Event 07H , Umask 08H
229*fabe02f5SSean BrunoThe number of times that load operations are temporarily
230*fabe02f5SSean Brunoblocked because of older stores, with addresses that are
231*fabe02f5SSean Brunonot yet known.  A load operation may incur more than one
232*fabe02f5SSean Brunoblock of this type.
233*fabe02f5SSean Bruno.It Li TLB_LOAD_MISSES.MISS_CAUSES_A_WALK
234*fabe02f5SSean Bruno.Pq Event 08H , Umask 01H
235*fabe02f5SSean BrunoMisses in all TLB levels that cause a page walk of any
236*fabe02f5SSean Brunopage size.
237*fabe02f5SSean Bruno.It Li TLB_LOAD_MISSES.WALK_COMPLETED
238*fabe02f5SSean Bruno.Pq Event 08H , Umask 02H
239*fabe02f5SSean BrunoMisses in all TLB levels that caused page walk completed
240*fabe02f5SSean Brunoof any size.
241*fabe02f5SSean Bruno.It Li DTLB_LOAD_MISSES.WALK_DURATION
242*fabe02f5SSean Bruno.Pq Event 08H , Umask 04H
243*fabe02f5SSean BrunoCycle PMH is busy with a walk.
244*fabe02f5SSean Bruno.It Li DTLB_LOAD_MISSES.STLB_HIT
245*fabe02f5SSean Bruno.Pq Event 08H , Umask 10H
246*fabe02f5SSean BrunoNumber of cache load STLB hits. No page walk.
247*fabe02f5SSean Bruno.It Li INT_MISC.RECOVERY_CYCLES
248*fabe02f5SSean Bruno.Pq Event 0DH , Umask 03H
249*fabe02f5SSean BrunoCycles waiting to recover after Machine Clears or EClear.
250*fabe02f5SSean BrunoSet Cmask= 1.
251*fabe02f5SSean Bruno.It Li INT_MISC.RAT_STALL_CYCLES
252*fabe02f5SSean Bruno.Pq Event 0DH , Umask 40H
253*fabe02f5SSean BrunoCycles RAT external stall is sent to IDQ for this thread.
254*fabe02f5SSean Bruno.It Li UOPS_ISSUED.ANY
255*fabe02f5SSean Bruno.Pq Event 0EH , Umask 01H
256*fabe02f5SSean BrunoIncrements each cycle the # of Uops issued by the
257*fabe02f5SSean BrunoRAT to RS.
258*fabe02f5SSean BrunoSet Cmask = 1, Inv = 1, Any= 1to count stalled cycles
259*fabe02f5SSean Brunoof this core.
260*fabe02f5SSean Bruno.It Li FP_COMP_OPS_EXE.X87
261*fabe02f5SSean Bruno.Pq Event 10H , Umask 01H
262*fabe02f5SSean BrunoCounts number of X87 uops executed.
263*fabe02f5SSean Bruno.It Li FP_COMP_OPS_EXE.SSE_FP_PACKED_DOUBLE
264*fabe02f5SSean Bruno.Pq Event 10H , Umask 10H
265*fabe02f5SSean BrunoCounts number of SSE* double precision FP packed
266*fabe02f5SSean Brunouops executed.
267*fabe02f5SSean Bruno.It Li FP_COMP_OPS_EXE.SSE_FP_SCALAR_SINGLE
268*fabe02f5SSean Bruno.Pq Event 10H , Umask 20H
269*fabe02f5SSean BrunoCounts number of SSE* single precision FP scalar
270*fabe02f5SSean Brunouops executed.
271*fabe02f5SSean Bruno.It Li FP_COMP_OPS_EXE.SSE_PACKED_SINGLE
272*fabe02f5SSean Bruno.Pq Event 10H , Umask 40H
273*fabe02f5SSean BrunoCounts number of SSE* single precision FP packed
274*fabe02f5SSean Brunouops executed.
275*fabe02f5SSean Bruno.It Li FP_COMP_OPS_EXE.SSE_SCALAR_DOUBLE
276*fabe02f5SSean Bruno.Pq Event 10H , Umask 80H
277*fabe02f5SSean BrunoCounts number of SSE* double precision FP scalar
278*fabe02f5SSean Brunouops executed.
279*fabe02f5SSean Bruno.It Li SIMD_FP_256.PACKED_SINGLE
280*fabe02f5SSean Bruno.Pq Event 11H , Umask 01H
281*fabe02f5SSean BrunoCounts 256-bit packed single-precision floating-
282*fabe02f5SSean Brunopoint instructions.
283*fabe02f5SSean Bruno.It Li SIMD_FP_256.PACKED_DOUBLE
284*fabe02f5SSean Bruno.Pq Event 11H , Umask 02H
285*fabe02f5SSean BrunoCounts 256-bit packed double-precision floating-
286*fabe02f5SSean Brunopoint instructions.
287*fabe02f5SSean Bruno.It Li ARITH.FPU_DIV_ACTIVE
288*fabe02f5SSean Bruno.Pq Event 14H , Umask 01H
289*fabe02f5SSean BrunoCycles that the divider is active, includes INT and FP.
290*fabe02f5SSean BrunoSet 'edge =1, cmask=1' to count the number of
291*fabe02f5SSean Brunodivides.
292*fabe02f5SSean Bruno.It Li INSTS_WRITTEN_TO_IQ.INSTS
293*fabe02f5SSean Bruno.Pq Event 17H , Umask 01H
294*fabe02f5SSean BrunoCounts the number of instructions written into the
295*fabe02f5SSean BrunoIQ every cycle.
296*fabe02f5SSean Bruno.It Li L2_RQSTS.DEMAND_DATA_RD_HIT
297*fabe02f5SSean Bruno.Pq Event 24H , Umask 01H
298*fabe02f5SSean BrunoDemand Data Read requests that hit L2 cache.
299*fabe02f5SSean Bruno.It Li L2_RQSTS.ALL_DEMAND_DATA_RD
300*fabe02f5SSean Bruno.Pq Event 24H , Umask 03H
301*fabe02f5SSean BrunoCounts any demand and L1 HW prefetch data load
302*fabe02f5SSean Brunorequests to L2.
303*fabe02f5SSean Bruno.It Li L2_RQSTS.RFO_HITS
304*fabe02f5SSean Bruno.Pq Event 24H , Umask 04H
305*fabe02f5SSean BrunoCounts the number of store RFO requests that
306*fabe02f5SSean Brunohit the L2 cache.
307*fabe02f5SSean Bruno.It Li L2_RQSTS.RFO_MISS
308*fabe02f5SSean Bruno.Pq Event 24H , Umask 08H
309*fabe02f5SSean BrunoCounts the number of store RFO requests that
310*fabe02f5SSean Brunomiss the L2 cache.
311*fabe02f5SSean Bruno.It Li L2_RQSTS.ALL_RFO
312*fabe02f5SSean Bruno.Pq Event 24H , Umask 0CH
313*fabe02f5SSean BrunoCounts all L2 store RFO requests.
314*fabe02f5SSean Bruno.It Li L2_RQSTS.CODE_RD_HIT
315*fabe02f5SSean Bruno.Pq Event 24H , Umask 10H
316*fabe02f5SSean BrunoNumber of instruction fetches that hit the L2
317*fabe02f5SSean Brunocache.
318*fabe02f5SSean Bruno.It Li L2_RQSTS.CODE_RD_MISS
319*fabe02f5SSean Bruno.Pq Event 24H , Umask 20H
320*fabe02f5SSean BrunoNumber of instruction fetches that missed the L2
321*fabe02f5SSean Brunocache.
322*fabe02f5SSean Bruno.It Li L2_RQSTS.ALL_CODE_RD
323*fabe02f5SSean Bruno.Pq Event 24H , Umask 30H
324*fabe02f5SSean BrunoCounts all L2 code requests.
325*fabe02f5SSean Bruno.It Li L2_RQSTS.PF_HIT
326*fabe02f5SSean Bruno.Pq Event 24H , Umask 40H
327*fabe02f5SSean BrunoRequests from L2 Hardware prefetcher that hit L2.
328*fabe02f5SSean Bruno.It Li L2_RQSTS.PF_MISS
329*fabe02f5SSean Bruno.Pq Event 24H , Umask 80H
330*fabe02f5SSean BrunoRequests from L2 Hardware prefetcher that missed
331*fabe02f5SSean BrunoL2.
332*fabe02f5SSean Bruno.It Li L2_RQSTS.ALL_PF
333*fabe02f5SSean Bruno.Pq Event 24H , Umask C0H
334*fabe02f5SSean BrunoAny requests from L2 Hardware prefetchers.
335*fabe02f5SSean Bruno.It Li L2_STORE_LOCK_RQSTS.MISS
336*fabe02f5SSean Bruno.Pq Event 27H , Umask 01H
337*fabe02f5SSean BrunoROs that miss cache lines.
338*fabe02f5SSean Bruno.It Li L2_STORE_LOCK_RQSTS.HIT_E
339*fabe02f5SSean Bruno.Pq Event 27H , Umask 04H
340*fabe02f5SSean BrunoRFOs that hit cache lines in E state.
341*fabe02f5SSean Bruno.It Li L2_STORE_LOCK_RQSTS.HIT_M
342*fabe02f5SSean Bruno.Pq Event 27H , Umask 08H
343*fabe02f5SSean BrunoRFOs that hit cache lines in M state.
344*fabe02f5SSean Bruno.It Li L2_STORE_LOCK_RQSTS.ALL
345*fabe02f5SSean Bruno.Pq Event 27H , Umask 0FH
346*fabe02f5SSean BrunoRFOs that access cache lines in any state.
347*fabe02f5SSean Bruno.It Li L2_L1D_WB_RQSTS.MISS
348*fabe02f5SSean Bruno.Pq Event 28H , Umask 01H
349*fabe02f5SSean BrunoNot rejected writebacks from L1D to L2 cache lines
350*fabe02f5SSean Brunothat missed L2.
351*fabe02f5SSean Bruno.It Li L2_L1D_WB_RQSTS.HIT_S
352*fabe02f5SSean Bruno.Pq Event 28H , Umask 02H
353*fabe02f5SSean BrunoNot rejected writebacks from L1D to L2 cache lines
354*fabe02f5SSean Brunoin S state.
355*fabe02f5SSean Bruno.It Li L2_L1D_WB_RQSTS.HIT_E
356*fabe02f5SSean Bruno.Pq Event 28H , Umask 04H
357*fabe02f5SSean BrunoNot rejected writebacks from L1D to L2 cache lines
358*fabe02f5SSean Brunoin E state.
359*fabe02f5SSean Bruno.It Li L2_L1D_WB_RQSTS.HIT_M
360*fabe02f5SSean Bruno.Pq Event 28H , Umask 08H
361*fabe02f5SSean BrunoNot rejected writebacks from L1D to L2 cache lines
362*fabe02f5SSean Brunoin M state.
363*fabe02f5SSean Bruno.It Li L2_L1D_WB_RQSTS.ALL
364*fabe02f5SSean Bruno.Pq Event 28H , Umask 0FH
365*fabe02f5SSean BrunoNot rejected writebacks from L1D to L2 cache.
366*fabe02f5SSean Bruno.It Li LONGEST_LAT_CACHE.REFERENCE
367*fabe02f5SSean Bruno.Pq Event 2EH , Umask 4FH
368*fabe02f5SSean BrunoThis event counts requests originating from the
369*fabe02f5SSean Brunocore that reference
370*fabe02f5SSean Brunoa cache line in the last level cache.
371*fabe02f5SSean Bruno.It Li LONGEST_LAT_CACHE.MISS
372*fabe02f5SSean Bruno.Pq Event 2EH , Umask 41H
373*fabe02f5SSean BrunoThis event counts each cache miss condition for
374*fabe02f5SSean Brunoreferences to the last level cache.
375*fabe02f5SSean Bruno.It Li CPU_CLK_UNHALTED.THREAD_P
376*fabe02f5SSean Bruno.Pq Event 3CH , Umask 00H
377*fabe02f5SSean BrunoCounts the number of thread cycles while the
378*fabe02f5SSean Brunothread is not in a halt state. The thread enters
379*fabe02f5SSean Brunothe halt state when it is running the HLT
380*fabe02f5SSean Brunoinstruction. The core frequency may change from
381*fabe02f5SSean Brunotime to time due to power or thermal throttling.
382*fabe02f5SSean Bruno.It Li CPU_CLK_THREAD_UNHALTED.REF_XCLK
383*fabe02f5SSean Bruno.Pq Event 3CH , Umask 01H
384*fabe02f5SSean BrunoIncrements at the frequency of XCLK (100 MHz)
385*fabe02f5SSean Brunowhen not halted.
386*fabe02f5SSean Bruno.It Li L1D_PEND_MISS.PENDING
387*fabe02f5SSean Bruno.Pq Event 48H , Umask 01H
388*fabe02f5SSean BrunoIncrements the number of outstanding L1D misses
389*fabe02f5SSean Brunoevery cycle.
390*fabe02f5SSean BrunoSet Cmaks = 1 and Edge =1 to count occurrences.
391*fabe02f5SSean Bruno.It Li DTLB_STORE_MISSES.MISS_CAUSES_A_WALK
392*fabe02f5SSean Bruno.Pq Event 49H , Umask 01H
393*fabe02f5SSean BrunoMiss in all TLB levels causes an page walk of
394*fabe02f5SSean Brunoany page size (4K/2M/4M/1G).
395*fabe02f5SSean Bruno.It Li DTLB_STORE_MISSES.WALK_COMPLETED
396*fabe02f5SSean Bruno.Pq Event 49H , Umask 02H
397*fabe02f5SSean BrunoMiss in all TLB levels causes a page walk that
398*fabe02f5SSean Brunocompletes of any page size (4K/2M/4M/1G).
399*fabe02f5SSean Bruno.It Li DTLB_STORE_MISSES.WALK_DURATION
400*fabe02f5SSean Bruno.Pq Event 49H , Umask 04H
401*fabe02f5SSean BrunoCycles PMH is busy with this walk.
402*fabe02f5SSean Bruno.It Li DTLB_STORE_MISSES.STLB_HIT
403*fabe02f5SSean Bruno.Pq Event 49H , Umask 10H
404*fabe02f5SSean BrunoStore operations that miss the first TLB level
405*fabe02f5SSean Brunobut hit the second and do not cause page walks.
406*fabe02f5SSean Bruno.It Li LOAD_HIT_PRE.SW_PF
407*fabe02f5SSean Bruno.Pq Event 4CH , Umask 01H
408*fabe02f5SSean BrunoNot SW-prefetch load dispatches that hit fill
409*fabe02f5SSean Brunobuffer allocated for S/W prefetch.
410*fabe02f5SSean Bruno.It Li LOAD_HIT_PER.HW_PF
411*fabe02f5SSean Bruno.Pq Event 4CH , Umask 02H
412*fabe02f5SSean BrunoNot SW-prefetch load dispatches that hit fill
413*fabe02f5SSean Brunobuffer allocated for H/W prefetch.
414*fabe02f5SSean Bruno.It Li HW_PRE_REQ.DL1_MISS
415*fabe02f5SSean Bruno.Pq Event 4EH , Umask 02H
416*fabe02f5SSean BrunoHardware Prefetch requests that miss the L1D
417*fabe02f5SSean Brunocache. A request is being counted each time
418*fabe02f5SSean Brunoit access the cache & miss it, including if
419*fabe02f5SSean Brunoa block is applicable or if hit the Fill
420*fabe02f5SSean BrunoBuffer for example.
421*fabe02f5SSean Bruno.It Li L1D.REPLACEMENT
422*fabe02f5SSean Bruno.Pq Event 51H , Umask 01H
423*fabe02f5SSean BrunoCounts the number of lines brought into the
424*fabe02f5SSean BrunoL1 data cache.
425*fabe02f5SSean Bruno.It Li L1D.ALLOCATED_IN_M
426*fabe02f5SSean Bruno.Pq Event 51H , Umask 02H
427*fabe02f5SSean BrunoCounts the number of allocations of modified
428*fabe02f5SSean BrunoL1D cache lines.
429*fabe02f5SSean Bruno.It Li L1D.EVICTION
430*fabe02f5SSean Bruno.Pq Event 51H , Umask 04H
431*fabe02f5SSean BrunoCounts the number of modified lines evicted
432*fabe02f5SSean Brunofrom the L1 data cache due to replacement.
433*fabe02f5SSean Bruno.It Li L1D.ALL_M_REPLACEMENT
434*fabe02f5SSean Bruno.Pq Event 51H , Umask 08H
435*fabe02f5SSean BrunoCache lines in M state evicted out of L1D due
436*fabe02f5SSean Brunoto Snoop HitM or dirty line replacement.
437*fabe02f5SSean Bruno.It Li PARTIAL_RAT_STALLS.FLAGS_MERGE_UOP
438*fabe02f5SSean Bruno.Pq Event 59H , Umask 0CH
439*fabe02f5SSean BrunoIncrements the number of flags-merge uops in
440*fabe02f5SSean Brunoflight each cycle.
441*fabe02f5SSean BrunoSet Cmask = 1 to count cycles.
442*fabe02f5SSean Bruno.It Li PARTIAL_RAT_STALLS.SLOW_LEA_WINDOW
443*fabe02f5SSean Bruno.Pq Event 59H , Umask 0FH
444*fabe02f5SSean BrunoCycles with at least one slow LEA uop allocated.
445*fabe02f5SSean Bruno.It Li PARTIAL_RAT_STALLS.MUL_SINGLE_UOP
446*fabe02f5SSean Bruno.Pq Event 59H , Umask 40H
447*fabe02f5SSean BrunoNumber of Multiply packed/scalar single precision
448*fabe02f5SSean Brunouops allocated.
449*fabe02f5SSean Bruno.It Li RESOURCE_STALLS2.ALL_FL_EMPTY
450*fabe02f5SSean Bruno.Pq Event 5BH , Umask 0CH
451*fabe02f5SSean BrunoCycles stalled due to free list empty.
452*fabe02f5SSean Bruno.It Li RESOURCE_STALLS2.ALL_PRF_CONTROL
453*fabe02f5SSean Bruno.Pq Event 5BH , Umask 0FH
454*fabe02f5SSean BrunoCycles stalled due to control structures full for
455*fabe02f5SSean Brunophysical registers.
456*fabe02f5SSean Bruno.It Li RESOURCE_STALLS2.BOB_FULL
457*fabe02f5SSean Bruno.Pq Event 5BH , Umask 40H
458*fabe02f5SSean BrunoCycles Allocator is stalled due Branch Order Buffer.
459*fabe02f5SSean Bruno.It Li RESOURCE_STALLS2.OOO_RSRC
460*fabe02f5SSean Bruno.Pq Event 5BH , Umask 4FH
461*fabe02f5SSean BrunoCycles stalled due to out of order resources full.
462*fabe02f5SSean Bruno.It Li CPL_CYCLES.RING0
463*fabe02f5SSean Bruno.Pq Event 5CH , Umask 01H
464*fabe02f5SSean BrunoUnhalted core cycles when the thread is in ring 0.
465*fabe02f5SSean Bruno.It Li CPL_CYCLES.RING123
466*fabe02f5SSean Bruno.Pq Event 5CH , Umask 02H
467*fabe02f5SSean BrunoUnhalted core cycles when the thread is not in ring
468*fabe02f5SSean Bruno0.
469*fabe02f5SSean Bruno.It Li RS_EVENTS.EMPTY_CYCLES
470*fabe02f5SSean Bruno.Pq Event 5EH , Umask 01H
471*fabe02f5SSean BrunoCycles the RS is empty for the thread.
472*fabe02f5SSean Bruno.It Li OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD
473*fabe02f5SSean Bruno.Pq Event 60H , Umask 01H
474*fabe02f5SSean BrunoOffcore outstanding Demand Data Read
475*fabe02f5SSean Brunotransactions in SQ to uncore. Set Cmask=1 to count
476*fabe02f5SSean Brunocycles.
477*fabe02f5SSean Bruno.It Li OFFCORE_REQUESTS_OUTSTANDING.DEMAND_RFO
478*fabe02f5SSean Bruno.Pq Event 60H , Umask 04H
479*fabe02f5SSean BrunoOffcore outstanding RFO store transactions in SQ to
480*fabe02f5SSean Brunouncore. Set Cmask=1 to count cycles.
481*fabe02f5SSean Bruno.It Li OFFCORE_REQUESTS_OUTSTANDING.ALL_DATA_RD
482*fabe02f5SSean Bruno.Pq Event 60H , Umask 08H
483*fabe02f5SSean BrunoOffcore outstanding cacheable data read
484*fabe02f5SSean Brunotransactions in SQ to uncore. Set Cmask=1 to count
485*fabe02f5SSean Brunocycles.
486*fabe02f5SSean Bruno.It Li LOCK_CYCLES.SPLIT_LOCK_UC_LOCK_DURATION
487*fabe02f5SSean Bruno.Pq Event 63H , Umask 01H
488*fabe02f5SSean BrunoCycles in which the L1D and L2 are locked, due to a
489*fabe02f5SSean BrunoUC lock or split lock.
490*fabe02f5SSean Bruno.It Li LOCK_CYCLES.CACHE_LOCK_DURATION
491*fabe02f5SSean Bruno.Pq Event 63H , Umask 02H
492*fabe02f5SSean BrunoCycles in which the L1D is locked.
493*fabe02f5SSean Bruno.It Li IDQ.EMPTY
494*fabe02f5SSean Bruno.Pq Event 79H , Umask 02H
495*fabe02f5SSean BrunoCounts cycles the IDQ is empty.
496*fabe02f5SSean Bruno.It Li IDQ.MITE_UOPS
497*fabe02f5SSean Bruno.Pq Event 79H , Umask 04H
498*fabe02f5SSean BrunoIncrement each cycle # of uops delivered to IDQ
499*fabe02f5SSean Brunofrom MITE path.
500*fabe02f5SSean BrunoSet Cmask = 1 to count cycles.
501*fabe02f5SSean Bruno.It Li IDQ.DSB_UOPS
502*fabe02f5SSean Bruno.Pq Event 79H , Umask 08H
503*fabe02f5SSean BrunoIncrement each cycle. # of uops delivered to IDQ
504*fabe02f5SSean Brunofrom DSB path.
505*fabe02f5SSean BrunoSet Cmask = 1 to count cycles.
506*fabe02f5SSean Bruno.It Li IDQ.MS_DSB_UOPS
507*fabe02f5SSean Bruno.Pq Event 79H , Umask 10H
508*fabe02f5SSean BrunoIncrement each cycle # of uops delivered to IDQ
509*fabe02f5SSean Brunowhen MS busy by DSB. Set Cmask = 1 to count
510*fabe02f5SSean Brunocycles MS is busy. Set Cmask=1 and Edge =1 to
511*fabe02f5SSean Brunocount MS activations.
512*fabe02f5SSean Bruno.It Li IDQ.MS_MITE_UOPS
513*fabe02f5SSean Bruno.Pq Event 79H , Umask 20H
514*fabe02f5SSean BrunoIncrement each cycle # of uops delivered to IDQ
515*fabe02f5SSean Brunowhen MS is busy by MITE. Set Cmask = 1 to count
516*fabe02f5SSean Brunocycles.
517*fabe02f5SSean Bruno.It Li IDQ.MS_UOPS
518*fabe02f5SSean Bruno.Pq Event 79H , Umask 30H
519*fabe02f5SSean BrunoIncrement each cycle # of uops delivered to IDQ
520*fabe02f5SSean Brunofrom MS by either DSB or MITE. Set Cmask = 1 to
521*fabe02f5SSean Brunocount cycles.
522*fabe02f5SSean Bruno.It Li ICACHE.MISSES
523*fabe02f5SSean Bruno.Pq Event 80H , Umask 02H
524*fabe02f5SSean BrunoNumber of Instruction Cache, Streaming Buffer and
525*fabe02f5SSean BrunoVictim Cache Misses. Includes UC accesses.
526*fabe02f5SSean Bruno.It Li ITLB_MISSES.MISS_CAUSES_A_WALK
527*fabe02f5SSean Bruno.Pq Event 85H , Umask 01H
528*fabe02f5SSean BrunoMisses in all ITLB levels that cause page walks.
529*fabe02f5SSean Bruno.It Li ITLB_MISSES.WALK_COMPLETED
530*fabe02f5SSean Bruno.Pq Event 85H , Umask 02H
531*fabe02f5SSean BrunoMisses in all ITLB levels that cause completed page
532*fabe02f5SSean Brunowalks.
533*fabe02f5SSean Bruno.It Li ITLB_MISSES.WALK_DURATION
534*fabe02f5SSean Bruno.Pq Event 85H , Umask 04H
535*fabe02f5SSean BrunoCycle PMH is busy with a walk.
536*fabe02f5SSean Bruno.It Li ITLB_MISSES.STLB_HIT
537*fabe02f5SSean Bruno.Pq Event 85H , Umask 10H
538*fabe02f5SSean BrunoNumber of cache load STLB hits. No page walk.
539*fabe02f5SSean Bruno.It Li ILD_STALL.LCP
540*fabe02f5SSean Bruno.Pq Event 87H , Umask 01H
541*fabe02f5SSean BrunoStalls caused by changing prefix length of the
542*fabe02f5SSean Brunoinstruction.
543*fabe02f5SSean Bruno.It Li ILD_STALL.IQ_FULL
544*fabe02f5SSean Bruno.Pq Event 87H , Umask 04H
545*fabe02f5SSean BrunoStall cycles due to IQ is full.
546*fabe02f5SSean Bruno.It Li BR_INST_EXEC.COND
547*fabe02f5SSean Bruno.Pq Event 88H , Umask 01H
548*fabe02f5SSean BrunoQualify conditional near branch instructions
549*fabe02f5SSean Brunoexecuted, but not necessarily retired.
550*fabe02f5SSean Bruno.It Li BR_INST_EXEC.DIRECT_JMP
551*fabe02f5SSean Bruno.Pq Event 88H , Umask 02H
552*fabe02f5SSean BrunoQualify all unconditional near branch instructions
553*fabe02f5SSean Brunoexcluding calls and indirect branches.
554*fabe02f5SSean Bruno.It Li BR_INST_EXEC.INDIRECT_JMP_NON_CALL_RET
555*fabe02f5SSean Bruno.Pq Event 88H , Umask 04H
556*fabe02f5SSean BrunoQualify executed indirect near branch instructions
557*fabe02f5SSean Brunothat are not calls nor returns.
558*fabe02f5SSean Bruno.It Li BR_INST_EXEC.RETURN_NEAR
559*fabe02f5SSean Bruno.Pq Event 88H , Umask 08H
560*fabe02f5SSean BrunoQualify indirect near branches that have a return
561*fabe02f5SSean Brunomnemonic.
562*fabe02f5SSean Bruno.It Li BR_INST_EXEC.DIRECT_NEAR_CALL
563*fabe02f5SSean Bruno.Pq Event 88H , Umask 10H
564*fabe02f5SSean BrunoQualify unconditional near call branch instructions,
565*fabe02f5SSean Brunoexcluding non call branch, executed.
566*fabe02f5SSean Bruno.It Li BR_INST_EXEC.INDIRECT_NEAR_CALL
567*fabe02f5SSean Bruno.Pq Event 88H , Umask 20H
568*fabe02f5SSean BrunoQualify indirect near calls, including both register
569*fabe02f5SSean Brunoand memory indirect, executed.
570*fabe02f5SSean Bruno.It Li BR_INST_EXEC.NONTAKEN
571*fabe02f5SSean Bruno.Pq Event 88H , Umask 40H
572*fabe02f5SSean BrunoQualify non-taken near branches executed.
573*fabe02f5SSean Bruno.It Li BR_INST_EXEC.TAKEN
574*fabe02f5SSean Bruno.Pq Event 88H , Umask 80H
575*fabe02f5SSean BrunoQualify taken near branches executed. Must
576*fabe02f5SSean Brunocombine with 01H,02H, 04H, 08H, 10H, 20H.
577*fabe02f5SSean Bruno.It Li BR_INST_EXE.ALL_BRANCHES
578*fabe02f5SSean Bruno.Pq Event 88H , Umask FFH
579*fabe02f5SSean BrunoCounts all near executed branches (not necessarily
580*fabe02f5SSean Brunoretired).
581*fabe02f5SSean Bruno.It Li BR_MISP_EXEC.COND
582*fabe02f5SSean Bruno.Pq Event 89H , Umask 01H
583*fabe02f5SSean BrunoQualify conditional near branch instructions
584*fabe02f5SSean Brunomispredicted.
585*fabe02f5SSean Bruno.It Li BR_MISP_EXEC.INDIRECT_JMP_NON_CALL_RET
586*fabe02f5SSean Bruno.Pq Event 89H , Umask 04H
587*fabe02f5SSean BrunoQualify mispredicted indirect near branch
588*fabe02f5SSean Brunoinstructions that are not calls nor returns.
589*fabe02f5SSean Bruno.It Li BR_MISP_EXEC.RETURN_NEAR
590*fabe02f5SSean Bruno.Pq Event 89H , Umask 08H
591*fabe02f5SSean BrunoQualify mispredicted indirect near branches that
592*fabe02f5SSean Brunohave a return mnemonic.
593*fabe02f5SSean Bruno.It Li BR_MISP_EXEC.DIRECT_NEAR_CALL
594*fabe02f5SSean Bruno.Pq Event 89H , Umask 10H
595*fabe02f5SSean BrunoQualify mispredicted unconditional near call branch
596*fabe02f5SSean Brunoinstructions, excluding non call branch, executed.
597*fabe02f5SSean Bruno.It Li BR_MISP_EXEC.INDIRECT_NEAR_CALL
598*fabe02f5SSean Bruno.Pq Event 89H , Umask 20H
599*fabe02f5SSean BrunoQualify mispredicted indirect near calls, including
600*fabe02f5SSean Brunoboth register and memory indirect, executed.
601*fabe02f5SSean Bruno.It Li BR_MISP_EXEC.NONTAKEN
602*fabe02f5SSean Bruno.Pq Event 89H , Umask 40H
603*fabe02f5SSean BrunoQualify mispredicted non-taken near branches
604*fabe02f5SSean Brunoexecuted,.
605*fabe02f5SSean Bruno.It Li BR_MISP_EXEC.TAKEN
606*fabe02f5SSean Bruno.Pq Event 89H , Umask 80H
607*fabe02f5SSean BrunoQualify mispredicted taken near branches executed.
608*fabe02f5SSean BrunoMust combine with 01H,02H, 04H, 08H, 10H, 20H
609*fabe02f5SSean Bruno.It Li BR_MISP_EXEC.ALL_BRANCHES
610*fabe02f5SSean Bruno.Pq Event 89H , Umask FFH
611*fabe02f5SSean BrunoCounts all near executed branches (not necessarily
612*fabe02f5SSean Brunoretired).
613*fabe02f5SSean Bruno.It Li IDQ_UOPS_NOT_DELIVERED.CORE
614*fabe02f5SSean Bruno.Pq Event 9CH , Umask 01H
615*fabe02f5SSean BrunoCount number of non-delivered uops to RAT per
616*fabe02f5SSean Brunothread.
617*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED_PORT.PORT_0
618*fabe02f5SSean Bruno.Pq Event A1H , Umask 01H
619*fabe02f5SSean BrunoCycles which a Uop is dispatched on port 0.
620*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED_PORT.PORT_1
621*fabe02f5SSean Bruno.Pq Event A1H , Umask 02H
622*fabe02f5SSean BrunoCycles which a Uop is dispatched on port 1.
623*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED_PORT.PORT_2_LD
624*fabe02f5SSean Bruno.Pq Event A1H , Umask 04H
625*fabe02f5SSean BrunoCycles which a load uop is dispatched on port 2.
626*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED_PORT.PORT_2_STA
627*fabe02f5SSean Bruno.Pq Event A1H , Umask 08H
628*fabe02f5SSean BrunoCycles which a store address uop is dispatched on
629*fabe02f5SSean Brunoport 2.
630*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED_PORT.PORT_2
631*fabe02f5SSean Bruno.Pq Event A1H , Umask 0CH
632*fabe02f5SSean BrunoCycles which a Uop is dispatched on port 2.
633*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED_PORT.PORT_3_LD
634*fabe02f5SSean Bruno.Pq Event A1H , Umask 10H
635*fabe02f5SSean BrunoCycles which a load uop is dispatched on port 3.
636*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED_PORT.PORT_3_STA
637*fabe02f5SSean Bruno.Pq Event A1H , Umask 20H
638*fabe02f5SSean BrunoCycles which a store address uop is dispatched on
639*fabe02f5SSean Brunoport 3.
640*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED_PORT.PORT_3
641*fabe02f5SSean Bruno.Pq Event A1H , Umask 30H
642*fabe02f5SSean BrunoCycles which a Uop is dispatched on port 3.
643*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED_PORT.PORT_4
644*fabe02f5SSean Bruno.Pq Event A1H , Umask 40H
645*fabe02f5SSean BrunoCycles which a Uop is dispatched on port 4.
646*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED_PORT.PORT_5
647*fabe02f5SSean Bruno.Pq Event A1H , Umask 80H
648*fabe02f5SSean BrunoCycles which a Uop is dispatched on port 5.
649*fabe02f5SSean Bruno.It Li RESOURCE_STALLS.ANY
650*fabe02f5SSean Bruno.Pq Event A2H , Umask 01H
651*fabe02f5SSean BrunoCycles Allocation is stalled due to Resource Related
652*fabe02f5SSean Brunoreason.
653*fabe02f5SSean Bruno.It Li RESOURCE_STALLS.LB
654*fabe02f5SSean Bruno.Pq Event A2H , Umask 01H
655*fabe02f5SSean BrunoCounts the cycles of stall due to lack of load buffers.
656*fabe02f5SSean Bruno.It Li RESOURCE_STALLS.RS
657*fabe02f5SSean Bruno.Pq Event A2H , Umask 04H
658*fabe02f5SSean BrunoCycles stalled due to no eligible RS entry available.
659*fabe02f5SSean Bruno.It Li RESOURCE_STALLS.SB
660*fabe02f5SSean Bruno.Pq Event A2H , Umask 08H
661*fabe02f5SSean BrunoCycles stalled due to no store buffers available. (not
662*fabe02f5SSean Brunoincluding draining form sync).
663*fabe02f5SSean Bruno.It Li RESOURCE_STALLS.ROB
664*fabe02f5SSean Bruno.Pq Event A2H , Umask 10H
665*fabe02f5SSean BrunoCycles stalled due to re-order buffer full.
666*fabe02f5SSean Bruno.It Li RESOURCE_STALLS.FCSW
667*fabe02f5SSean Bruno.Pq Event A2H , Umask 20H
668*fabe02f5SSean BrunoCycles stalled due to writing the FPU control word.
669*fabe02f5SSean Bruno.It Li RESOURCE_STALLS.MXCSR
670*fabe02f5SSean Bruno.Pq Event A2H , Umask 40H
671*fabe02f5SSean BrunoCycles stalled due to the MXCSR register rename
672*fabe02f5SSean Brunooccurring to close to a previous MXCSR rename.
673*fabe02f5SSean Bruno.It Li RESOURCE_STALLS.OTHER
674*fabe02f5SSean Bruno.Pq Event A2H , Umask 80H
675*fabe02f5SSean BrunoCycles stalled while execution was stalled due to
676*fabe02f5SSean Brunoother resource issues.
677*fabe02f5SSean Bruno.It Li CYCLE_ACTIVITY.CYCLES_L2_PENDING
678*fabe02f5SSean Bruno.Pq Event A3H , Umask 01H
679*fabe02f5SSean BrunoCycles with pending L2 miss loads. Set AnyThread
680*fabe02f5SSean Brunoto count per core.
681*fabe02f5SSean Bruno.It Li CYCLE_ACTIVITY.CYCLES_L1D_PENDING
682*fabe02f5SSean Bruno.Pq Event A3H , Umask 02H
683*fabe02f5SSean BrunoCycles with pending L1 cache miss loads.Set
684*fabe02f5SSean BrunoAnyThread to count per core.
685*fabe02f5SSean Bruno.It Li CYCLE_ACTIVITY.CYCLES_NO_DISPATCH
686*fabe02f5SSean Bruno.Pq Event A3H , Umask 04H
687*fabe02f5SSean BrunoCycles of dispatch stalls. Set AnyThread to count per
688*fabe02f5SSean Brunocore.
689*fabe02f5SSean Bruno.It Li DSB2MITE_SWITCHES.COUNT
690*fabe02f5SSean Bruno.Pq Event ABH , Umask 01H
691*fabe02f5SSean BrunoNumber of DSB to MITE switches.
692*fabe02f5SSean Bruno.It Li DSB2MITE_SWITCHES.PENALTY_CYCLES
693*fabe02f5SSean Bruno.Pq Event ABH , Umask 02H
694*fabe02f5SSean BrunoCycles DSB to MITE switches caused delay.
695*fabe02f5SSean Bruno.It Li DSB_FILL.OTHER_CANCEL
696*fabe02f5SSean Bruno.Pq Event ACH , Umask 02H
697*fabe02f5SSean BrunoCases of cancelling valid DSB fill not because of
698*fabe02f5SSean Brunoexceeding way limit.
699*fabe02f5SSean Bruno.It Li DSB_FILL.EXCEED_DSB_LINES
700*fabe02f5SSean Bruno.Pq Event ACH , Umask 08H
701*fabe02f5SSean BrunoDSB Fill encountered > 3 DSB lines.
702*fabe02f5SSean Bruno.It Li DSB_FILL.ALL_CANCEL
703*fabe02f5SSean Bruno.Pq Event ACH , Umask 0AH
704*fabe02f5SSean BrunoCases of cancelling valid Decode Stream Buffer
705*fabe02f5SSean Bruno(DSB) fill not because of exceeding way limit.
706*fabe02f5SSean Bruno.It Li ITLB.ITLB_FLUSH
707*fabe02f5SSean Bruno.Pq Event AEH , Umask 01H
708*fabe02f5SSean BrunoCounts the number of ITLB flushes, includes
709*fabe02f5SSean Bruno4k/2M/4M pages.
710*fabe02f5SSean Bruno.It Li OFFCORE_REQUESTS.DEMAND_DATA_RD
711*fabe02f5SSean Bruno.Pq Event B0H , Umask 01H
712*fabe02f5SSean BrunoDemand data read requests sent to uncore.
713*fabe02f5SSean Bruno.It Li OFFCORE_REQUESTS.DEMAND_RFO
714*fabe02f5SSean Bruno.Pq Event B0H , Umask 04H
715*fabe02f5SSean BrunoDemand RFO read requests sent to uncore, including
716*fabe02f5SSean Brunoregular RFOs, locks, ItoM.
717*fabe02f5SSean Bruno.It Li OFFCORE_REQUESTS.ALL_DATA_RD
718*fabe02f5SSean Bruno.Pq Event B0H , Umask 08H
719*fabe02f5SSean BrunoData read requests sent to uncore (demand and
720*fabe02f5SSean Brunoprefetch).
721*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED.THREAD
722*fabe02f5SSean Bruno.Pq Event B1H , Umask 01H
723*fabe02f5SSean BrunoCounts total number of uops to be dispatched per-
724*fabe02f5SSean Brunothread each cycle. Set Cmask = 1, INV =1 to count
725*fabe02f5SSean Brunostall cycles.
726*fabe02f5SSean Bruno.It Li UOPS_DISPATCHED.CORE
727*fabe02f5SSean Bruno.Pq Event B1H , Umask 02H
728*fabe02f5SSean BrunoCounts total number of uops to be dispatched per-
729*fabe02f5SSean Brunocore each cycle.
730*fabe02f5SSean Bruno.It Li OFFCORE_REQUESTS_BUFFER.SQ_FULL
731*fabe02f5SSean Bruno.Pq Event B2H , Umask 01H
732*fabe02f5SSean BrunoOffcore requests buffer cannot take more entries
733*fabe02f5SSean Brunofor this thread core.
734*fabe02f5SSean Bruno.It Li AGU_BYPASS_CANCEL.COUNT
735*fabe02f5SSean Bruno.Pq Event B6H , Umask 01H
736*fabe02f5SSean BrunoCounts executed load operations with all the
737*fabe02f5SSean Brunofollowing traits: 1. addressing of the format [base +
738*fabe02f5SSean Brunooffset], 2. the offset is between 1 and 2047, 3. the
739*fabe02f5SSean Brunoaddress specified in the base register is in one page
740*fabe02f5SSean Brunoand the address [base+offset] is in another page.
741*fabe02f5SSean Bruno.It Li OFF_CORE_RESPONSE_0
742*fabe02f5SSean Bruno.Pq Event B7H , Umask 01H
743*fabe02f5SSean Bruno(Event B7H, Umask 01H) Off-core Response Performance
744*fabe02f5SSean BrunoMonitoring; PMC0 only.  Requires programming MSR 01A6H
745*fabe02f5SSean Bruno.It Li OFF_CORE_RESPONSE_1
746*fabe02f5SSean Bruno.Pq Event BBH , Umask 01H
747*fabe02f5SSean Bruno(Event BBH, Umask 01H) Off-core Response Performance
748*fabe02f5SSean BrunoMonitoring; PMC3 only.  Requires programming MSR 01A7H
749*fabe02f5SSean Bruno.It Li TLB_FLUSH.DTLB_THREAD
750*fabe02f5SSean Bruno.Pq Event BDH , Umask 01H
751*fabe02f5SSean BrunoDTLB flush attempts of the thread-specific entries.
752*fabe02f5SSean Bruno.It Li TLB_FLUSH.STLB_ANY
753*fabe02f5SSean Bruno.Pq Event BDH , Umask 20H
754*fabe02f5SSean BrunoCount number of STLB flush attempts.
755*fabe02f5SSean Bruno.It Li L1D_BLOCKS.BANK_CONFLICT_CYCLES
756*fabe02f5SSean Bruno.Pq Event BFH , Umask 05H
757*fabe02f5SSean BrunoCycles when dispatched loads are cancelled due to
758*fabe02f5SSean BrunoL1D bank conflicts with other load ports.
759*fabe02f5SSean Bruno.It Li INST_RETIRED.ANY_P
760*fabe02f5SSean Bruno.Pq Event C0H , Umask 00H
761*fabe02f5SSean BrunoNumber of instructions at retirement.
762*fabe02f5SSean Bruno.It Li INST_RETIRED.ALL
763*fabe02f5SSean Bruno.Pq Event C0H , Umask 01H
764*fabe02f5SSean BrunoPrecise instruction retired event with HW to reduce
765*fabe02f5SSean Brunoeffect of PEBS shadow in IP distribution.
766*fabe02f5SSean Bruno.It Li OTHER_ASSISTS.ITLB_MISS_RETIRED
767*fabe02f5SSean Bruno.Pq Event C1H , Umask 02H
768*fabe02f5SSean BrunoInstructions that experienced an ITLB miss.
769*fabe02f5SSean Bruno.It Li OTHER_ASSISTS.AVX_STORE
770*fabe02f5SSean Bruno.Pq Event C1H , Umask 08H
771*fabe02f5SSean BrunoNumber of assists associated with 256-bit AVX
772*fabe02f5SSean Brunostore operations.
773*fabe02f5SSean Bruno.It Li OTHER_ASSISTS.AVX_TO_SSE
774*fabe02f5SSean Bruno.Pq Event C1H , Umask 10H
775*fabe02f5SSean BrunoNumber of transitions from AVX-256 to legacy SSE
776*fabe02f5SSean Brunowhen penalty applicable.
777*fabe02f5SSean Bruno.It Li OTHER_ASSISTS.SSE_TO_AVX
778*fabe02f5SSean Bruno.Pq Event C1H , Umask 20H
779*fabe02f5SSean BrunoNumber of transitions from SSE to AVX-256 when
780*fabe02f5SSean Brunopenalty applicable.
781*fabe02f5SSean Bruno.It Li UOPS_RETIRED.ALL
782*fabe02f5SSean Bruno.Pq Event C2H , Umask 01H
783*fabe02f5SSean BrunoCounts the number of micro-ops retired, Use
784*fabe02f5SSean Brunocmask=1 and invert to count active cycles or stalled
785*fabe02f5SSean Brunocycles.
786*fabe02f5SSean Bruno.It Li UOPS_RETIRED.RETIRE_SLOTS
787*fabe02f5SSean Bruno.Pq Event C2H , Umask 02H
788*fabe02f5SSean BrunoCounts the number of retirement slots used each
789*fabe02f5SSean Brunocycle.
790*fabe02f5SSean Bruno.It Li MACHINE_CLEARS.MEMORY_ORDERING
791*fabe02f5SSean Bruno.Pq Event C3H , Umask 02H
792*fabe02f5SSean BrunoCounts the number of machine clears due to
793*fabe02f5SSean Brunomemory order conflicts.
794*fabe02f5SSean Bruno.It Li MACHINE_CLEARS.SMC
795*fabe02f5SSean Bruno.Pq Event C3H , Umask 04H
796*fabe02f5SSean BrunoCounts the number of times that a program writes
797*fabe02f5SSean Brunoto a code section.
798*fabe02f5SSean Bruno.It Li MACHINE_CLEARS.MASKMOV
799*fabe02f5SSean Bruno.Pq Event C3H , Umask 20H
800*fabe02f5SSean BrunoCounts the number of executed AVX masked load
801*fabe02f5SSean Brunooperations that refer to an illegal address range
802*fabe02f5SSean Brunowith the mask bits set to 0.
803*fabe02f5SSean Bruno.It Li BR_INST_RETIRED.ALL_BRANCH
804*fabe02f5SSean Bruno.Pq Event C4H , Umask 00H
805*fabe02f5SSean BrunoBranch instructions at retirement.
806*fabe02f5SSean Bruno.It Li BR_INST_RETIRED.CONDITIONAL
807*fabe02f5SSean Bruno.Pq Event C4H , Umask 01H
808*fabe02f5SSean BrunoCounts the number of conditional branch
809*fabe02f5SSean Brunoinstructions retired.
810*fabe02f5SSean Bruno.It Li BR_INST_RETIRED.NEAR_CALL
811*fabe02f5SSean Bruno.Pq Event C4H , Umask 02H
812*fabe02f5SSean BrunoDirect and indirect near call instructions retired.
813*fabe02f5SSean Bruno.It Li BR_INST_RETIRED.ALL_BRANCHES
814*fabe02f5SSean Bruno.Pq Event C4H , Umask 04H
815*fabe02f5SSean BrunoCounts the number of branch instructions retired.
816*fabe02f5SSean Bruno.It Li BR_INST_RETIRED.NEAR_RETURN
817*fabe02f5SSean Bruno.Pq Event C4H , Umask 08H
818*fabe02f5SSean BrunoCounts the number of near return instructions
819*fabe02f5SSean Brunoretired.
820*fabe02f5SSean Bruno.It Li BR_INST_RETIRED.NOT_TAKEN
821*fabe02f5SSean Bruno.Pq Event C4H , Umask 10H
822*fabe02f5SSean BrunoCounts the number of not taken branch instructions
823*fabe02f5SSean Brunoretired.
824*fabe02f5SSean Bruno.It Li BR_INST_RETIRED.NEAR_TAKEN
825*fabe02f5SSean Bruno.Pq Event C4H , Umask 20H
826*fabe02f5SSean BrunoNumber of near taken branches retired.
827*fabe02f5SSean Bruno.It Li BR_INST_RETIRED.FAR_BRANCH
828*fabe02f5SSean Bruno.Pq Event C4H , Umask 40H
829*fabe02f5SSean BrunoNumber of far branches retired.
830*fabe02f5SSean Bruno.It Li BR_MISP_RETIRED.ALL_BRANCHES
831*fabe02f5SSean Bruno.Pq Event C5H , Umask 00H
832*fabe02f5SSean BrunoMispredicted branch instructions at retirement.
833*fabe02f5SSean Bruno.It Li BR_MISP_RETIRED.CONDITIONAL
834*fabe02f5SSean Bruno.Pq Event C5H , Umask 01H
835*fabe02f5SSean BrunoMispredicted conditional branch instructions retired.
836*fabe02f5SSean Bruno.It Li BR_MISP_RETIRED.NEAR_CALL
837*fabe02f5SSean Bruno.Pq Event C5H , Umask 02H
838*fabe02f5SSean BrunoDirect and indirect mispredicted near call
839*fabe02f5SSean Brunoinstructions retired.
840*fabe02f5SSean Bruno.It Li BR_MISP_RETIRED.ALL_BRANCHES
841*fabe02f5SSean Bruno.Pq Event C5H , Umask 04H
842*fabe02f5SSean BrunoMispredicted macro branch instructions retired.
843*fabe02f5SSean Bruno.It Li BR_MISP_RETIRED.NOT_TAKEN
844*fabe02f5SSean Bruno.Pq Event C5H , Umask 10H
845*fabe02f5SSean BrunoMispredicted not taken branch instructions retired.
846*fabe02f5SSean Bruno.It Li BR_MISP_RETIRED.TAKEN
847*fabe02f5SSean Bruno.Pq Event C5H , Umask 20H
848*fabe02f5SSean BrunoMispredicted taken branch instructions retired.
849*fabe02f5SSean Bruno.It Li FP_ASSIST.X87_OUTPUT
850*fabe02f5SSean Bruno.Pq Event CAH , Umask 02H
851*fabe02f5SSean BrunoNumber of X87 assists due to output value.
852*fabe02f5SSean Bruno.It Li FP_ASSIST.X87_INPUT
853*fabe02f5SSean Bruno.Pq Event CAH , Umask 04H
854*fabe02f5SSean BrunoNumber of X87 assists due to input value.
855*fabe02f5SSean Bruno.It Li FP_ASSIST.SIMD_OUTPUT
856*fabe02f5SSean Bruno.Pq Event CAH , Umask 08H
857*fabe02f5SSean Bruno Number of SIMD FP assists due to output values.
858*fabe02f5SSean Bruno.It Li FP_ASSIST.SIMD_INPUT
859*fabe02f5SSean Bruno.Pq Event CAH , Umask 10H
860*fabe02f5SSean BrunoNumber of SIMD FP assists due to input values.
861*fabe02f5SSean Bruno.It Li FP_ASSIST.ANY 1EH
862*fabe02f5SSean Bruno.Pq Event CAH , Umask
863*fabe02f5SSean BrunoCycles with any input/output SSE* or FP assists.
864*fabe02f5SSean Bruno.It Li ROB_MISC_EVENTS.LBR_INSERTS
865*fabe02f5SSean Bruno.Pq Event CCH , Umask 20H
866*fabe02f5SSean BrunoCount cases of saving new LBR records by
867*fabe02f5SSean Brunohardware.
868*fabe02f5SSean Bruno.It Li MEM_TRANS_RETIRED.LOAD_LATENCY
869*fabe02f5SSean Bruno.Pq Event CDH , Umask 01H
870*fabe02f5SSean BrunoSample loads with specified latency threshold.
871*fabe02f5SSean BrunoPMC3 only.
872*fabe02f5SSean Bruno.It Li MEM_TRANS_RETIRED.PRECISE_STORE
873*fabe02f5SSean Bruno.Pq Event CDH , Umask 02H
874*fabe02f5SSean BrunoSample stores and collect precise store operation
875*fabe02f5SSean Brunovia PEBS record. PMC3 only.
876*fabe02f5SSean Bruno.It Li MEM_UOP_RETIRED.LOADS
877*fabe02f5SSean Bruno.Pq Event D0H , Umask 10H
878*fabe02f5SSean BrunoQualify retired memory uops that are loads.
879*fabe02f5SSean BrunoCombine with umask 10H, 20H, 40H, 80H.
880*fabe02f5SSean Bruno.It Li MEM_UOP_RETIRED.STORES
881*fabe02f5SSean Bruno.Pq Event D0H , Umask 02H
882*fabe02f5SSean BrunoQualify retired memory uops that are stores.
883*fabe02f5SSean BrunoCombine with umask 10H, 20H, 40H, 80H.
884*fabe02f5SSean Bruno.It Li MEM_UOP_RETIRED.STLB_MISS
885*fabe02f5SSean Bruno.Pq Event D0H , Umask
886*fabe02f5SSean BrunoQualify retired memory uops with STLB miss. Must
887*fabe02f5SSean Brunocombine with umask 01H, 02H, to produce counts.
888*fabe02f5SSean Bruno.It Li MEM_UOP_RETIRED.LOCK
889*fabe02f5SSean Bruno.Pq Event D0H , Umask
890*fabe02f5SSean BrunoQualify retired memory uops with lock. Must
891*fabe02f5SSean Brunocombine with umask 01H, 02H, to produce counts.
892*fabe02f5SSean Bruno.It Li MEM_UOP_RETIRED.SPLIT
893*fabe02f5SSean Bruno.Pq Event D0H , Umask
894*fabe02f5SSean BrunoQualify retired memory uops with line split. Must
895*fabe02f5SSean Brunocombine with umask 01H, 02H, to produce counts.
896*fabe02f5SSean Bruno.It Li MEM_UOP_RETIRED_ALL
897*fabe02f5SSean Bruno.Pq Event D0H , Umask
898*fabe02f5SSean BrunoQualify any retired memory uops. Must combine
899*fabe02f5SSean Brunowith umask 01H, 02H, to produce counts.
900*fabe02f5SSean Bruno.It Li MEM_LOAD_UOPS_RETIRED.L1_HIT
901*fabe02f5SSean Bruno.Pq Event D1H , Umask 01H
902*fabe02f5SSean BrunoRetired load uops with L1 cache hits as data
903*fabe02f5SSean Brunosources.
904*fabe02f5SSean Bruno.It Li MEM_LOAD_UOPS_RETIRED.L2_HIT
905*fabe02f5SSean Bruno.Pq Event D1H , Umask 02H
906*fabe02f5SSean BrunoRetired load uops with L2 cache hits as data
907*fabe02f5SSean Brunosources.
908*fabe02f5SSean Bruno.It Li MEM_LOAD_UOPS_RETIRED.LLC_HIT
909*fabe02f5SSean Bruno.Pq Event D1H , Umask 04H
910*fabe02f5SSean BrunoRetired load uops which data sources were data hits
911*fabe02f5SSean Brunoin LLC without snoops required.
912*fabe02f5SSean Bruno.It Li MEM_LOAD_UOPS_RETIRED.LLC_MISS
913*fabe02f5SSean Bruno.Pq Event D1H , Umask 20H
914*fabe02f5SSean BrunoRetired load uops which data sources were data
915*fabe02f5SSean Brunomissed LLC (excluding unknown data source).
916*fabe02f5SSean Bruno.It Li MEM_LOAD_UOPS_RETIRED.HIT_LFB
917*fabe02f5SSean Bruno.Pq Event D1H , Umask 40H
918*fabe02f5SSean BrunoRetired load uops which data sources were load
919*fabe02f5SSean Brunouops missed L1 but hit FB due to preceding miss to
920*fabe02f5SSean Brunothe same cache line with data not ready.
921*fabe02f5SSean Bruno.It Li MEM_LOAD_UOPS_MISC_RETIRED.LLC_MISS
922*fabe02f5SSean Bruno.Pq Event D4H , Umask 02H
923*fabe02f5SSean BrunoRetired load uops with unknown information as data
924*fabe02f5SSean Brunosource in cache serviced the load.
925*fabe02f5SSean Bruno.It Li BACLEARS.ANY
926*fabe02f5SSean Bruno.Pq Event E6H , Umask 01H
927*fabe02f5SSean BrunoCounts the number of times the front end is re-
928*fabe02f5SSean Brunosteered, mainly when the BPU cannot provide a
929*fabe02f5SSean Brunocorrect prediction and this is corrected by other
930*fabe02f5SSean Brunobranch handling mechanisms at the front end.
931*fabe02f5SSean Bruno.It Li L2_TRANS.DEMAND_DATA_RD
932*fabe02f5SSean Bruno.Pq Event F0H , Umask 01H
933*fabe02f5SSean BrunoDemand Data Read requests that access L2 cache.
934*fabe02f5SSean Bruno.It Li L2_TRANS.RFO
935*fabe02f5SSean Bruno.Pq Event F0H , Umask 02H
936*fabe02f5SSean BrunoRFO requests that access L2 cache.
937*fabe02f5SSean Bruno.It Li L2_TRANS.CODE_RD
938*fabe02f5SSean Bruno.Pq Event F0H , Umask 04H
939*fabe02f5SSean BrunoL2 cache accesses when fetching instructions.
940*fabe02f5SSean Bruno.It Li L2_TRANS.ALL_PF
941*fabe02f5SSean Bruno.Pq Event F0H , Umask 08H
942*fabe02f5SSean BrunoL2 or LLC HW prefetches that access L2 cache.
943*fabe02f5SSean Bruno.It Li L2_TRANS.L1D_WB
944*fabe02f5SSean Bruno.Pq Event F0H , Umask 10H
945*fabe02f5SSean BrunoL1D writebacks that access L2 cache.
946*fabe02f5SSean Bruno.It Li L2_TRANS.L2_FILL
947*fabe02f5SSean Bruno.Pq Event F0H , Umask 20H
948*fabe02f5SSean BrunoL2 fill requests that access L2 cache.
949*fabe02f5SSean Bruno.It Li L2_TRANS.L2_WB
950*fabe02f5SSean Bruno.Pq Event F0H , Umask 40H
951*fabe02f5SSean BrunoL2 writebacks that access L2 cache.
952*fabe02f5SSean Bruno.It Li L2_TRANS.ALL_REQUESTS
953*fabe02f5SSean Bruno.Pq Event F0H , Umask 80H
954*fabe02f5SSean BrunoTransactions accessing L2 pipe.
955*fabe02f5SSean Bruno.It Li L2_LINES_IN.I
956*fabe02f5SSean Bruno.Pq Event F1H , Umask 01H
957*fabe02f5SSean BrunoL2 cache lines in I state filling L2.
958*fabe02f5SSean Bruno.It Li L2_LINES_IN.S
959*fabe02f5SSean Bruno.Pq Event F1H , Umask 02H
960*fabe02f5SSean BrunoL2 cache lines in S state filling L2.
961*fabe02f5SSean Bruno.It Li L2_LINES_IN.E
962*fabe02f5SSean Bruno.Pq Event F1H , Umask 04H
963*fabe02f5SSean BrunoL2 cache lines in E state filling L2.
964*fabe02f5SSean Bruno.It Li L2_LINES-IN.ALL
965*fabe02f5SSean Bruno.Pq Event F1H , Umask 07H
966*fabe02f5SSean BrunoL2 cache lines filling L2.
967*fabe02f5SSean Bruno.It Li L2_LINES_OUT.DEMAND_CLEAN
968*fabe02f5SSean Bruno.Pq Event F2H , Umask 01H
969*fabe02f5SSean BrunoClean L2 cache lines evicted by demand.
970*fabe02f5SSean Bruno.It Li L2_LINES_OUT.DEMAND_DIRTY
971*fabe02f5SSean Bruno.Pq Event F2H , Umask 02H
972*fabe02f5SSean BrunoDirty L2 cache lines evicted by demand.
973*fabe02f5SSean Bruno.It Li L2_LINES_OUT.PF_CLEAN
974*fabe02f5SSean Bruno.Pq Event F2H , Umask 04H
975*fabe02f5SSean BrunoClean L2 cache lines evicted by L2 prefetch.
976*fabe02f5SSean Bruno.It Li L2_LINES_OUT.PF_DIRTY
977*fabe02f5SSean Bruno.Pq Event F2H , Umask 08H
978*fabe02f5SSean BrunoDirty L2 cache lines evicted by L2 prefetch.
979*fabe02f5SSean Bruno.It Li L2_LINES_OUT.DIRTY_ALL
980*fabe02f5SSean Bruno.Pq Event F2H , Umask 0AH
981*fabe02f5SSean BrunoDirty L2 cache lines filling the L2.
982*fabe02f5SSean Bruno.It Li SQ_MISC.SPLIT_LOCK
983*fabe02f5SSean Bruno.Pq Event F4H , Umask 10H
984*fabe02f5SSean BrunoSplit locks in SQ.
985*fabe02f5SSean Bruno.El
986*fabe02f5SSean Bruno.Sh SEE ALSO
987*fabe02f5SSean Bruno.Xr pmc 3 ,
988*fabe02f5SSean Bruno.Xr pmc.atom 3 ,
989*fabe02f5SSean Bruno.Xr pmc.core 3 ,
990*fabe02f5SSean Bruno.Xr pmc.iaf 3 ,
991*fabe02f5SSean Bruno.Xr pmc.ucf 3 ,
992*fabe02f5SSean Bruno.Xr pmc.k7 3 ,
993*fabe02f5SSean Bruno.Xr pmc.k8 3 ,
994*fabe02f5SSean Bruno.Xr pmc.p4 3 ,
995*fabe02f5SSean Bruno.Xr pmc.p5 3 ,
996*fabe02f5SSean Bruno.Xr pmc.p6 3 ,
997*fabe02f5SSean Bruno.Xr pmc.corei7 3 ,
998*fabe02f5SSean Bruno.Xr pmc.corei7uc 3 ,
999*fabe02f5SSean Bruno.Xr pmc.ivybridge 3 ,
1000*fabe02f5SSean Bruno.Xr pmc.sandybridge 3 ,
1001*fabe02f5SSean Bruno.Xr pmc.sandybridgeuc 3 ,
1002*fabe02f5SSean Bruno.Xr pmc.westmere 3 ,
1003*fabe02f5SSean Bruno.Xr pmc.westmereuc 3 ,
1004*fabe02f5SSean Bruno.Xr pmc.soft 3 ,
1005*fabe02f5SSean Bruno.Xr pmc.tsc 3 ,
1006*fabe02f5SSean Bruno.Xr pmc_cpuinfo 3 ,
1007*fabe02f5SSean Bruno.Xr pmclog 3 ,
1008*fabe02f5SSean Bruno.Xr hwpmc 4
1009*fabe02f5SSean Bruno.Sh HISTORY
1010*fabe02f5SSean BrunoThe
1011*fabe02f5SSean Bruno.Nm pmc
1012*fabe02f5SSean Brunolibrary first appeared in
1013*fabe02f5SSean Bruno.Fx 6.0 .
1014*fabe02f5SSean Bruno.Sh AUTHORS
1015*fabe02f5SSean BrunoThe
1016*fabe02f5SSean Bruno.Lb libpmc
1017*fabe02f5SSean Brunolibrary was written by
1018*fabe02f5SSean Bruno.An "Joseph Koshy"
1019*fabe02f5SSean Bruno.Aq jkoshy@FreeBSD.org .
1020*fabe02f5SSean BrunoThe support for the Sandy Bridge Xeon
1021*fabe02f5SSean Brunomicroarchitecture was written by
1022*fabe02f5SSean Bruno.An "Hiren Panchasara"
1023*fabe02f5SSean Bruno.Aq hiren.panchasara@gmail.com .
1024