11e862e5aSFabien Thomas.\" Copyright (c) 2012 Fabien Thomas. All rights reserved. 21e862e5aSFabien Thomas.\" 31e862e5aSFabien Thomas.\" Redistribution and use in source and binary forms, with or without 41e862e5aSFabien Thomas.\" modification, are permitted provided that the following conditions 51e862e5aSFabien Thomas.\" are met: 61e862e5aSFabien Thomas.\" 1. Redistributions of source code must retain the above copyright 71e862e5aSFabien Thomas.\" notice, this list of conditions and the following disclaimer. 81e862e5aSFabien Thomas.\" 2. Redistributions in binary form must reproduce the above copyright 91e862e5aSFabien Thomas.\" notice, this list of conditions and the following disclaimer in the 101e862e5aSFabien Thomas.\" documentation and/or other materials provided with the distribution. 111e862e5aSFabien Thomas.\" 121e862e5aSFabien Thomas.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 131e862e5aSFabien Thomas.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 141e862e5aSFabien Thomas.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 151e862e5aSFabien Thomas.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 161e862e5aSFabien Thomas.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 171e862e5aSFabien Thomas.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 181e862e5aSFabien Thomas.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 191e862e5aSFabien Thomas.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 201e862e5aSFabien Thomas.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 211e862e5aSFabien Thomas.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 221e862e5aSFabien Thomas.\" SUCH DAMAGE. 231e862e5aSFabien Thomas.\" 2429f79bb3SSean Bruno.Dd October 19, 2012 251e862e5aSFabien Thomas.Dt PMC.IVYBRIDGE 3 261e862e5aSFabien Thomas.Os 271e862e5aSFabien Thomas.Sh NAME 281e862e5aSFabien Thomas.Nm pmc.ivybridge 291e862e5aSFabien Thomas.Nd measurement events for 301e862e5aSFabien Thomas.Tn Intel 311e862e5aSFabien Thomas.Tn Ivy Bridge 321e862e5aSFabien Thomasfamily CPUs 331e862e5aSFabien Thomas.Sh LIBRARY 341e862e5aSFabien Thomas.Lb libpmc 351e862e5aSFabien Thomas.Sh SYNOPSIS 361e862e5aSFabien Thomas.In pmc.h 371e862e5aSFabien Thomas.Sh DESCRIPTION 381e862e5aSFabien Thomas.Tn Intel 391e862e5aSFabien Thomas.Tn "Ivy Bridge" 401e862e5aSFabien ThomasCPUs contain PMCs conforming to version 2 of the 411e862e5aSFabien Thomas.Tn Intel 421e862e5aSFabien Thomasperformance measurement architecture. 431e862e5aSFabien ThomasThese CPUs may contain up to three classes of PMCs: 441e862e5aSFabien Thomas.Bl -tag -width "Li PMC_CLASS_IAP" 451e862e5aSFabien Thomas.It Li PMC_CLASS_IAF 461e862e5aSFabien ThomasFixed-function counters that count only one hardware event per counter. 471e862e5aSFabien Thomas.It Li PMC_CLASS_IAP 481e862e5aSFabien ThomasProgrammable counters that may be configured to count one of a defined 491e862e5aSFabien Thomasset of hardware events. 501e862e5aSFabien Thomas.El 511e862e5aSFabien Thomas.Pp 521e862e5aSFabien ThomasThe number of PMCs available in each class and their widths need to be 531e862e5aSFabien Thomasdetermined at run time by calling 541e862e5aSFabien Thomas.Xr pmc_cpuinfo 3 . 551e862e5aSFabien Thomas.Pp 561e862e5aSFabien ThomasIntel Ivy Bridge PMCs are documented in 571e862e5aSFabien Thomas.Rs 581e862e5aSFabien Thomas.%B "Intel(R) 64 and IA-32 Architectures Software Developer's Manual" 591e862e5aSFabien Thomas.%T "Volume 3B: System Programming Guide, Part 2" 601e862e5aSFabien Thomas.%N "Order Number: 253669-043US" 611e862e5aSFabien Thomas.%D May 2012 621e862e5aSFabien Thomas.%Q "Intel Corporation" 631e862e5aSFabien Thomas.Re 641e862e5aSFabien Thomas.Ss IVYBRIDGE FIXED FUNCTION PMCS 651e862e5aSFabien ThomasThese PMCs and their supported events are documented in 661e862e5aSFabien Thomas.Xr pmc.iaf 3 . 671e862e5aSFabien Thomas.Ss IVYBRIDGE PROGRAMMABLE PMCS 681e862e5aSFabien ThomasThe programmable PMCs support the following capabilities: 691e862e5aSFabien Thomas.Bl -column "PMC_CAP_INTERRUPT" "Support" 701e862e5aSFabien Thomas.It Em Capability Ta Em Support 711e862e5aSFabien Thomas.It PMC_CAP_CASCADE Ta \&No 721e862e5aSFabien Thomas.It PMC_CAP_EDGE Ta Yes 731e862e5aSFabien Thomas.It PMC_CAP_INTERRUPT Ta Yes 741e862e5aSFabien Thomas.It PMC_CAP_INVERT Ta Yes 751e862e5aSFabien Thomas.It PMC_CAP_READ Ta Yes 761e862e5aSFabien Thomas.It PMC_CAP_PRECISE Ta \&No 771e862e5aSFabien Thomas.It PMC_CAP_SYSTEM Ta Yes 781e862e5aSFabien Thomas.It PMC_CAP_TAGGING Ta \&No 791e862e5aSFabien Thomas.It PMC_CAP_THRESHOLD Ta Yes 801e862e5aSFabien Thomas.It PMC_CAP_USER Ta Yes 811e862e5aSFabien Thomas.It PMC_CAP_WRITE Ta Yes 821e862e5aSFabien Thomas.El 831e862e5aSFabien Thomas.Ss Event Qualifiers 841e862e5aSFabien ThomasEvent specifiers for these PMCs support the following common 851e862e5aSFabien Thomasqualifiers: 861e862e5aSFabien Thomas.Bl -tag -width indent 871e862e5aSFabien Thomas.It Li rsp= Ns Ar value 881e862e5aSFabien ThomasConfigure the Off-core Response bits. 891e862e5aSFabien Thomas.Bl -tag -width indent 901e862e5aSFabien Thomas.It Li REQ_DMND_DATA_RD 911e862e5aSFabien ThomasCounts the number of demand and DCU prefetch data reads of full and partial 920b129325SGordon Berglingcachelines as well as demand data page table entry cacheline reads. 930b129325SGordon BerglingDoes not count L2 data read prefetches or instruction fetches. 941e862e5aSFabien Thomas.It Li REQ_DMND_RFO 951e862e5aSFabien ThomasCounts the number of demand and DCU prefetch reads for ownership (RFO) 960b129325SGordon Berglingrequests generated by a write to data cacheline. 970b129325SGordon BerglingDoes not count L2 RFO prefetches. 981e862e5aSFabien Thomas.It Li REQ_DMND_IFETCH 991e862e5aSFabien ThomasCounts the number of demand and DCU prefetch instruction cacheline reads. 1001e862e5aSFabien ThomasDoes not count L2 code read prefetches. 1011e862e5aSFabien Thomas.It Li REQ_WB 1021e862e5aSFabien ThomasCounts the number of writeback (modified to exclusive) transactions. 1031e862e5aSFabien Thomas.It Li REQ_PF_DATA_RD 1041e862e5aSFabien ThomasCounts the number of data cacheline reads generated by L2 prefetchers. 1051e862e5aSFabien Thomas.It Li REQ_PF_RFO 1061e862e5aSFabien ThomasCounts the number of RFO requests generated by L2 prefetchers. 1071e862e5aSFabien Thomas.It Li REQ_PF_IFETCH 1081e862e5aSFabien ThomasCounts the number of code reads generated by L2 prefetchers. 1091e862e5aSFabien Thomas.It Li REQ_PF_LLC_DATA_RD 1101e862e5aSFabien ThomasL2 prefetcher to L3 for loads. 1111e862e5aSFabien Thomas.It Li REQ_PF_LLC_RFO 1121e862e5aSFabien ThomasRFO requests generated by L2 prefetcher 1131e862e5aSFabien Thomas.It Li REQ_PF_LLC_IFETCH 1141e862e5aSFabien ThomasL2 prefetcher to L3 for instruction fetches. 1151e862e5aSFabien Thomas.It Li REQ_BUS_LOCKS 1161e862e5aSFabien ThomasBus lock and split lock requests. 1171e862e5aSFabien Thomas.It Li REQ_STRM_ST 1181e862e5aSFabien ThomasStreaming store requests. 1191e862e5aSFabien Thomas.It Li REQ_OTHER 1201e862e5aSFabien ThomasAny other request that crosses IDI, including I/O. 1211e862e5aSFabien Thomas.It Li RES_ANY 1221e862e5aSFabien ThomasCatch all value for any response types. 1231e862e5aSFabien Thomas.It Li RES_SUPPLIER_NO_SUPP 1241e862e5aSFabien ThomasNo Supplier Information available. 1251e862e5aSFabien Thomas.It Li RES_SUPPLIER_LLC_HITM 1261e862e5aSFabien ThomasM-state initial lookup stat in L3. 1271e862e5aSFabien Thomas.It Li RES_SUPPLIER_LLC_HITE 1281e862e5aSFabien ThomasE-state. 1291e862e5aSFabien Thomas.It Li RES_SUPPLIER_LLC_HITS 1301e862e5aSFabien ThomasS-state. 1311e862e5aSFabien Thomas.It Li RES_SUPPLIER_LLC_HITF 1321e862e5aSFabien ThomasF-state. 1331e862e5aSFabien Thomas.It Li RES_SUPPLIER_LOCAL 1341e862e5aSFabien ThomasLocal DRAM Controller. 135cdfd0cc8SSean Bruno.It Li RES_SNOOP_SNP_NONE 1361e862e5aSFabien ThomasNo details on snoop-related information. 1371e862e5aSFabien Thomas.It Li RES_SNOOP_SNP_NO_NEEDED 1381e862e5aSFabien ThomasNo snoop was needed to satisfy the request. 1391e862e5aSFabien Thomas.It Li RES_SNOOP_SNP_MISS 1401e862e5aSFabien ThomasA snoop was needed and it missed all snooped caches: 1411e862e5aSFabien Thomas-For LLC Hit, ReslHitl was returned by all cores 1421e862e5aSFabien Thomas-For LLC Miss, Rspl was returned by all sockets and data was returned from 1431e862e5aSFabien ThomasDRAM. 1441e862e5aSFabien Thomas.It Li RES_SNOOP_HIT_NO_FWD 1450b129325SGordon BerglingA snoop was needed and it hits in at least one snooped cache. 1460b129325SGordon BerglingHit denotes a cache-line was valid before snoop effect. 1470b129325SGordon BerglingThis includes: 1481e862e5aSFabien Thomas-Snoop Hit w/ Invalidation (LLC Hit, RFO) 1491e862e5aSFabien Thomas-Snoop Hit, Left Shared (LLC Hit/Miss, IFetch/Data_RD) 1501e862e5aSFabien Thomas-Snoop Hit w/ Invalidation and No Forward (LLC Miss, RFO Hit S) 1511e862e5aSFabien ThomasIn the LLC Miss case, data is returned from DRAM. 1521e862e5aSFabien Thomas.It Li RES_SNOOP_HIT_FWD 1531e862e5aSFabien ThomasA snoop was needed and data was forwarded from a remote socket. 1541e862e5aSFabien ThomasThis includes: 1551e862e5aSFabien Thomas-Snoop Forward Clean, Left Shared (LLC Hit/Miss, IFetch/Data_RD/RFT). 1561e862e5aSFabien Thomas.It Li RES_SNOOP_HITM 1570b129325SGordon BerglingA snoop was needed and it HitM-ed in local or remote cache. 1580b129325SGordon BerglingHitM denotes a cache-line was in modified state before effect as a results of snoop. 1590b129325SGordon BerglingThis includes: 1601e862e5aSFabien Thomas-Snoop HitM w/ WB (LLC miss, IFetch/Data_RD) 1611e862e5aSFabien Thomas-Snoop Forward Modified w/ Invalidation (LLC Hit/Miss, RFO) 1621e862e5aSFabien Thomas-Snoop MtoS (LLC Hit, IFetch/Data_RD). 1631e862e5aSFabien Thomas.It Li RES_NON_DRAM 1640b129325SGordon BerglingTarget was non-DRAM system address. 1650b129325SGordon BerglingThis includes MMIO transactions. 1661e862e5aSFabien Thomas.El 1671e862e5aSFabien Thomas.It Li cmask= Ns Ar value 1681e862e5aSFabien ThomasConfigure the PMC to increment only if the number of configured 1691e862e5aSFabien Thomasevents measured in a cycle is greater than or equal to 1701e862e5aSFabien Thomas.Ar value . 1711e862e5aSFabien Thomas.It Li edge 1721e862e5aSFabien ThomasConfigure the PMC to count the number of de-asserted to asserted 1731e862e5aSFabien Thomastransitions of the conditions expressed by the other qualifiers. 1741e862e5aSFabien ThomasIf specified, the counter will increment only once whenever a 1751e862e5aSFabien Thomascondition becomes true, irrespective of the number of clocks during 1761e862e5aSFabien Thomaswhich the condition remains true. 1771e862e5aSFabien Thomas.It Li inv 1781e862e5aSFabien ThomasInvert the sense of comparison when the 1791e862e5aSFabien Thomas.Dq Li cmask 1801e862e5aSFabien Thomasqualifier is present, making the counter increment when the number of 1811e862e5aSFabien Thomasevents per cycle is less than the value specified by the 1821e862e5aSFabien Thomas.Dq Li cmask 1831e862e5aSFabien Thomasqualifier. 1841e862e5aSFabien Thomas.It Li os 1851e862e5aSFabien ThomasConfigure the PMC to count events happening at processor privilege 1861e862e5aSFabien Thomaslevel 0. 1871e862e5aSFabien Thomas.It Li usr 1881e862e5aSFabien ThomasConfigure the PMC to count events occurring at privilege levels 1, 2 1891e862e5aSFabien Thomasor 3. 1901e862e5aSFabien Thomas.El 1911e862e5aSFabien Thomas.Pp 1921e862e5aSFabien ThomasIf neither of the 1931e862e5aSFabien Thomas.Dq Li os 1941e862e5aSFabien Thomasor 1951e862e5aSFabien Thomas.Dq Li usr 1961e862e5aSFabien Thomasqualifiers are specified, the default is to enable both. 1971e862e5aSFabien Thomas.Ss Event Specifiers (Programmable PMCs) 1981e862e5aSFabien ThomasIvy Bridge programmable PMCs support the following events: 1991e862e5aSFabien Thomas.Bl -tag -width indent 2001e862e5aSFabien Thomas.It Li LD_BLOCKS.STORE_FORWARD 2011e862e5aSFabien Thomas.Pq Event 03H , Umask 02H 2021e862e5aSFabien Thomasloads blocked by overlapping with store buffer that cannot be forwarded . 2031e862e5aSFabien Thomas.It Li MISALIGN_MEM_REF.LOADS 2041e862e5aSFabien Thomas.Pq Event 05H , Umask 01H 2051e862e5aSFabien ThomasSpeculative cache-line split load uops dispatched to L1D. 2061e862e5aSFabien Thomas.It Li MISALIGN_MEM_REF.STORES 2071e862e5aSFabien Thomas.Pq Event 05H , Umask 02H 2081e862e5aSFabien ThomasSpeculative cache-line split Store- address uops dispatched to L1D. 2091e862e5aSFabien Thomas.It Li LD_BLOCKS_PARTIAL.ADDRESS_ALIAS 2101e862e5aSFabien Thomas.Pq Event 07H , Umask 01H 2111e862e5aSFabien ThomasFalse dependencies in MOB due to partial compare on address. 2121e862e5aSFabien Thomas.It Li DTLB_LOAD_MISSES.DEMAND_LD_MISS_CAUSES_A_WALK 2131e862e5aSFabien Thomas.Pq Event 08H , Umask 81H 2141e862e5aSFabien ThomasMisses in all TLB levels that cause a page walk of any page size from demand loads. 2151e862e5aSFabien Thomas.It Li DTLB_LOAD_MISSES.DEMAND_LD_WALK_COMPLETED 2161e862e5aSFabien Thomas.Pq Event 08H , Umask 82H 2171e862e5aSFabien ThomasMisses in all TLB levels that caused page walk completed of any size by demand loads. 2181e862e5aSFabien Thomas.It Li DTLB_LOAD_MISSES.DEMAND_LD_WALK_DURATION 2191e862e5aSFabien Thomas.Pq Event 08H , Umask 84H 2201e862e5aSFabien ThomasCycle PMH is busy with a walk due to demand loads. 2211e862e5aSFabien Thomas.It Li UOPS_ISSUED.ANY 2221e862e5aSFabien Thomas.Pq Event 0EH , Umask 01H 2231e862e5aSFabien ThomasIncrements each cycle the # of Uops issued by the RAT to RS. 2241e862e5aSFabien ThomasSet Cmask = 1, Inv = 1to count stalled cycles. 2251e862e5aSFabien ThomasSet Cmask = 1, Inv = 1, Any= 1to count stalled cycles of this core. 2261e862e5aSFabien Thomas.It Li UOPS_ISSUED.FLAGS_MERGE 2271e862e5aSFabien Thomas.Pq Event 0EH , Umask 10H 2280b129325SGordon BerglingNumber of flags-merge uops allocated. 2290b129325SGordon BerglingSuch uops adds delay. 2301e862e5aSFabien Thomas.It Li UOPS_ISSUED.SLOW_LEA 2311e862e5aSFabien Thomas.Pq Event 0EH , Umask 20H 2320b129325SGordon BerglingNumber of slow LEA or similar uops allocated. 2330b129325SGordon BerglingSuch uop has 3 sources (e.g. 2 sources + immediate) regardless if as a result of LEA instruction or not. 2341e862e5aSFabien Thomas.It Li UOPS_ISSUED.SINGLE_MUL 2351e862e5aSFabien Thomas.Pq Event 0EH , Umask 40H 2361e862e5aSFabien ThomasNumber of multiply packed/scalar single precision uops allocated. 2371e862e5aSFabien Thomas.It Li ARITH.FPU_DIV_ACTIVE 2381e862e5aSFabien Thomas.Pq Event 14H , Umask 01H 2390b129325SGordon BerglingCycles that the divider is active, includes INT and FP. 2400b129325SGordon BerglingSet 'edge =1, cmask=1' to count the number of divides. 2411e862e5aSFabien Thomas.It Li L2_RQSTS.DEMAND_DATA_RD_HIT 2421e862e5aSFabien Thomas.Pq Event 24H , Umask 01H 2431e862e5aSFabien ThomasDemand Data Read requests that hit L2 cache. 2441e862e5aSFabien Thomas.It Li L2_RQSTS.ALL_DEMAND_DATA_RD 2451e862e5aSFabien Thomas.Pq Event 24H , Umask 03H 2461e862e5aSFabien ThomasCounts any demand and L1 HW prefetch data load requests to L2. 2471e862e5aSFabien Thomas.It Li L2_RQSTS.RFO_HITS 2481e862e5aSFabien Thomas.Pq Event 24H , Umask 04H 2491e862e5aSFabien ThomasCounts the number of store RFO requests that hit the L2 cache. 2501e862e5aSFabien Thomas.It Li L2_RQSTS.RFO_MISS 2511e862e5aSFabien Thomas.Pq Event 24H , Umask 08H 2521e862e5aSFabien ThomasCounts the number of store RFO requests that miss the L2 cache. 2531e862e5aSFabien Thomas.It Li L2_RQSTS.ALL_RFO 2541e862e5aSFabien Thomas.Pq Event 24H , Umask 0CH 2551e862e5aSFabien ThomasCounts all L2 store RFO requests. 2561e862e5aSFabien Thomas.It Li L2_RQSTS.CODE_RD_HIT 2571e862e5aSFabien Thomas.Pq Event 24H , Umask 10H 2581e862e5aSFabien ThomasNumber of instruction fetches that hit the L2 cache. 2591e862e5aSFabien Thomas.It Li L2_RQSTS.CODE_RD_MISS 2601e862e5aSFabien Thomas.Pq Event 24H , Umask 20H 2611e862e5aSFabien ThomasNumber of instruction fetches that missed the L2 cache. 2621e862e5aSFabien Thomas.It Li L2_RQSTS.ALL_CODE_RD 2631e862e5aSFabien Thomas.Pq Event 24H , Umask 30H 2641e862e5aSFabien ThomasCounts all L2 code requests. 2651e862e5aSFabien Thomas.It Li L2_RQSTS.PF_HIT 2661e862e5aSFabien Thomas.Pq Event 24H , Umask 40H 2671e862e5aSFabien ThomasCounts all L2 HW prefetcher requests that hit L2. 2681e862e5aSFabien Thomas.It Li L2_RQSTS.PF_MISS 2691e862e5aSFabien Thomas.Pq Event 24H , Umask 80H 2701e862e5aSFabien ThomasCounts all L2 HW prefetcher requests that missed L2. 2711e862e5aSFabien Thomas.It Li L2_RQSTS.ALL_PF 2721e862e5aSFabien Thomas.Pq Event 24H , Umask C0H 2731e862e5aSFabien ThomasCounts all L2 HW prefetcher requests. 2741e862e5aSFabien Thomas.It Li L2_STORE_LOCK_RQSTS.MISS 2751e862e5aSFabien Thomas.Pq Event 27H , Umask 01H 2761e862e5aSFabien ThomasRFOs that miss cache lines. 2771e862e5aSFabien Thomas.It Li L2_STORE_LOCK_RQSTS.HIT_M 2781e862e5aSFabien Thomas.Pq Event 27H , Umask 08H 2791e862e5aSFabien ThomasRFOs that hit cache lines in M state. 2801e862e5aSFabien Thomas.It Li L2_STORE_LOCK_RQSTS.ALL 2811e862e5aSFabien Thomas.Pq Event 27H , Umask 0FH 2821e862e5aSFabien ThomasRFOs that access cache lines in any state. 2831e862e5aSFabien Thomas.It Li L2_L1D_WB_RQSTS.MISS 2841e862e5aSFabien Thomas.Pq Event 28H , Umask 01H 2851e862e5aSFabien ThomasNot rejected writebacks that missed LLC. 2861e862e5aSFabien Thomas.It Li L2_L1D_WB_RQSTS.HIT_E 2871e862e5aSFabien Thomas.Pq Event 28H , Umask 04H 2881e862e5aSFabien ThomasNot rejected writebacks from L1D to L2 cache lines in E state. 2891e862e5aSFabien Thomas.It Li L2_L1D_WB_RQSTS.HIT_M 2901e862e5aSFabien Thomas.Pq Event 28H , Umask 08H 2911e862e5aSFabien ThomasNot rejected writebacks from L1D to L2 cache lines in M state. 2921e862e5aSFabien Thomas.It Li L2_L1D_WB_RQSTS.ALL 2931e862e5aSFabien Thomas.Pq Event 28H , Umask 0FH 2941e862e5aSFabien ThomasNot rejected writebacks from L1D to L2 cache lines in any state. 2951e862e5aSFabien Thomas.It Li LONGEST_LAT_CACHE.REFERENCE 2961e862e5aSFabien Thomas.Pq Event 2EH , Umask 4FH 2971e862e5aSFabien ThomasThis event counts requests originating from the core that reference a cache 2981e862e5aSFabien Thomasline in the last level cache. 2991e862e5aSFabien Thomas.It Li LONGEST_LAT_CACHE.MISS 3001e862e5aSFabien Thomas.Pq Event 2EH , Umask 41H 3011e862e5aSFabien ThomasThis event counts each cache miss condition for references to the last level 3021e862e5aSFabien Thomascache. 3031e862e5aSFabien Thomas.It Li CPU_CLK_UNHALTED.THREAD_P 3041e862e5aSFabien Thomas.Pq Event 3CH , Umask 00H 3051e862e5aSFabien ThomasCounts the number of thread cycles while the thread is not in a halt state. 3060b129325SGordon BerglingThe thread enters the halt state when it is running the HLT instruction. 3070b129325SGordon BerglingThe core frequency may change from time to time due to power or thermal 3081e862e5aSFabien Thomasthrottling. 3091e862e5aSFabien Thomas.It Li CPU_CLK_THREAD_UNHALTED.REF_XCLK 3101e862e5aSFabien Thomas.Pq Event 3CH , Umask 01H 3111e862e5aSFabien ThomasIncrements at the frequency of XCLK (100 MHz) when not halted. 3121e862e5aSFabien Thomas.It Li L1D_PEND_MISS.PENDING 3131e862e5aSFabien Thomas.Pq Event 48H , Umask 01H 3140b129325SGordon BerglingIncrements the number of outstanding L1D misses every cycle. 3150b129325SGordon BerglingSet Cmaks = 1 and Edge =1 to count occurrences. 3161e862e5aSFabien ThomasCounter 2 only. 3171e862e5aSFabien ThomasSet Cmask = 1 to count cycles. 3181e862e5aSFabien Thomas.It Li DTLB_STORE_MISSES.MISS_CAUSES_A_WALK 3191e862e5aSFabien Thomas.Pq Event 49H , Umask 01H 3201e862e5aSFabien ThomasMiss in all TLB levels causes an page walk of any page size (4K/2M/4M/1G). 3211e862e5aSFabien Thomas.It Li DTLB_STORE_MISSES.WALK_COMPLETED 3221e862e5aSFabien Thomas.Pq Event 49H , Umask 02H 3231e862e5aSFabien ThomasMiss in all TLB levels causes a page walk that completes of any page size 3241e862e5aSFabien Thomas(4K/2M/4M/1G). 3251e862e5aSFabien Thomas.It Li DTLB_STORE_MISSES.WALK_DURATION 3261e862e5aSFabien Thomas.Pq Event 49H , Umask 04H 3271e862e5aSFabien ThomasCycles PMH is busy with this walk. 3281e862e5aSFabien Thomas.It Li DTLB_STORE_MISSES.STLB_HIT 3291e862e5aSFabien Thomas.Pq Event 49H , Umask 10H 3301e862e5aSFabien ThomasStore operations that miss the first TLB level but hit the second and do not 3311e862e5aSFabien Thomascause page walks. 3321e862e5aSFabien Thomas.It Li LOAD_HIT_PRE.SW_PF 3331e862e5aSFabien Thomas.Pq Event 4CH , Umask 01H 3341e862e5aSFabien ThomasNon-SW-prefetch load dispatches that hit fill buffer allocated for S/W prefetch. 3351e862e5aSFabien Thomas.It Li LOAD_HIT_PRE.HW_PF 3361e862e5aSFabien Thomas.Pq Event 4CH , Umask 02H 3371e862e5aSFabien ThomasNon-SW-prefetch load dispatches that hit fill buffer allocated for H/W prefetch. 3381e862e5aSFabien Thomas.It Li L1D.REPLACEMENT 3391e862e5aSFabien Thomas.Pq Event 51H , Umask 01H 3401e862e5aSFabien ThomasCounts the number of lines brought into the L1 data cache. 3411e862e5aSFabien Thomas.It Li MOVE_ELIMINATION.INT_NOT_ELIMINATED 3421e862e5aSFabien Thomas.Pq Event 58H , Umask 01H 3431e862e5aSFabien ThomasNumber of integer Move Elimination candidate uops that were not eliminated. 3441e862e5aSFabien Thomas.It Li MOVE_ELIMINATION.SIMD_NOT_ELIMINATED 3451e862e5aSFabien Thomas.Pq Event 58H , Umask 02H 3461e862e5aSFabien ThomasNumber of SIMD Move Elimination candidate uops that were not eliminated. 3471e862e5aSFabien Thomas.It Li MOVE_ELIMINATION.INT_ELIMINATED 3481e862e5aSFabien Thomas.Pq Event 58H , Umask 04H 3491e862e5aSFabien ThomasNumber of integer Move Elimination candidate uops that were eliminated. 3501e862e5aSFabien Thomas.It Li MOVE_ELIMINATION.SIMD_ELIMINATED 3511e862e5aSFabien Thomas.Pq Event 58H , Umask 08H 3521e862e5aSFabien ThomasNumber of SIMD Move Elimination candidate uops that were eliminated. 3531e862e5aSFabien Thomas.It Li CPL_CYCLES.RING0 3541e862e5aSFabien Thomas.Pq Event 5CH , Umask 01H 3551e862e5aSFabien ThomasUnhalted core cycles when the thread is in ring 0. 3561e862e5aSFabien ThomasUse Edge to count transition. 3571e862e5aSFabien Thomas.It Li CPL_CYCLES.RING123 3581e862e5aSFabien Thomas.Pq Event 5CH , Umask 02H 3591e862e5aSFabien ThomasUnhalted core cycles when the thread is not in ring 0. 3601e862e5aSFabien Thomas.It Li RS_EVENTS.EMPTY_CYCLES 3611e862e5aSFabien Thomas.Pq Event 5EH , Umask 01H 3621e862e5aSFabien ThomasCycles the RS is empty for the thread. 3631e862e5aSFabien Thomas.It Li TLB_ACCESS.LOAD_STLB_HIT 3641e862e5aSFabien Thomas.Pq Event 5FH , Umask 01H 3651e862e5aSFabien ThomasCounts load operations that missed 1st level DTLB but hit the 2nd level. 3661e862e5aSFabien Thomas.It Li OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD 3671e862e5aSFabien Thomas.Pq Event 60H , Umask 01H 3680b129325SGordon BerglingOffcore outstanding Demand Data Read transactions in SQ to uncore. 3690b129325SGordon BerglingSet Cmask=1 to count cycles. 3701e862e5aSFabien Thomas.It Li OFFCORE_REQUESTS_OUTSTANDING.DEMAND_CODE_RD 3711e862e5aSFabien Thomas.Pq Event 60H , Umask 02H 3720b129325SGordon BerglingOffcore outstanding Demand Code Read transactions in SQ to uncore. 3730b129325SGordon BerglingSet Cmask=1 to count cycles. 3741e862e5aSFabien Thomas.It Li OFFCORE_REQUESTS_OUTSTANDING.DEMAND_RFO 3751e862e5aSFabien Thomas.Pq Event 60H , Umask 04H 3760b129325SGordon BerglingOffcore outstanding RFO store transactions in SQ to uncore. 3770b129325SGordon BerglingSet Cmask=1 to count cycles. 3781e862e5aSFabien Thomas.It Li OFFCORE_REQUESTS_OUTSTANDING.ALL_DATA_RD 3791e862e5aSFabien Thomas.Pq Event 60H , Umask 08H 3800b129325SGordon BerglingOffcore outstanding cacheable data read transactions in SQ to uncore. 3810b129325SGordon BerglingSet Cmask=1 to count cycles. 3821e862e5aSFabien Thomas.It Li LOCK_CYCLES.SPLIT_LOCK_UC_LOCK_DURATION 3831e862e5aSFabien Thomas.Pq Event 63H , Umask 01H 3841e862e5aSFabien ThomasCycles in which the L1D and L2 are locked, due to a UC lock or split lock. 3851e862e5aSFabien Thomas.It Li LOCK_CYCLES.CACHE_LOCK_DURATION 3861e862e5aSFabien Thomas.Pq Event 63H , Umask 02H 3871e862e5aSFabien ThomasCycles in which the L1D is locked. 3881e862e5aSFabien Thomas.It Li IDQ.EMPTY 3891e862e5aSFabien Thomas.Pq Event 79H , Umask 02H 3901e862e5aSFabien ThomasCounts cycles the IDQ is empty. 3911e862e5aSFabien Thomas.It Li IDQ.MITE_UOPS 3921e862e5aSFabien Thomas.Pq Event 79H , Umask 04H 3931e862e5aSFabien ThomasIncrement each cycle # of uops delivered to IDQ from MITE path. 3941e862e5aSFabien ThomasCan combine Umask 04H and 20H. 3951e862e5aSFabien ThomasSet Cmask = 1 to count cycles. 3961e862e5aSFabien Thomas.It Li IDQ.DSB_UOPS 3971e862e5aSFabien Thomas.Pq Event 79H , Umask 08H 3981e862e5aSFabien ThomasIncrement each cycle. # of uops delivered to IDQ from DSB path. 3991e862e5aSFabien ThomasCan combine Umask 08H and 10H 4001e862e5aSFabien ThomasSet Cmask = 1 to count cycles. 4011e862e5aSFabien Thomas.It Li IDQ.MS_DSB_UOPS 4021e862e5aSFabien Thomas.Pq Event 79H , Umask 10H 4030b129325SGordon BerglingIncrement each cycle # of uops delivered to IDQ when MS_busy by DSB. 4040b129325SGordon BerglingSet Cmask = 1 to count cycles. 4050b129325SGordon BerglingAdd Edge=1 to count # of delivery. 4061e862e5aSFabien ThomasCan combine Umask 04H, 08H. 4071e862e5aSFabien Thomas.It Li IDQ.MS_MITE_UOPS 4081e862e5aSFabien Thomas.Pq Event 79H , Umask 20H 4090b129325SGordon BerglingIncrement each cycle # of uops delivered to IDQ when MS_busy by MITE. 4100b129325SGordon BerglingSet Cmask = 1 to count cycles. 4111e862e5aSFabien ThomasCan combine Umask 04H, 08H. 4121e862e5aSFabien Thomas.It Li IDQ.MS_UOPS 4131e862e5aSFabien Thomas.Pq Event 79H , Umask 30H 4141e862e5aSFabien ThomasIncrement each cycle # of uops delivered to IDQ from MS by either DSB or 4150b129325SGordon BerglingMITE. 4160b129325SGordon BerglingSet Cmask = 1 to count cycles. 4171e862e5aSFabien ThomasCan combine Umask 04H, 08H. 4181e862e5aSFabien Thomas.It Li IDQ.ALL_DSB_CYCLES_ANY_UOPS 4191e862e5aSFabien Thomas.Pq Event 79H , Umask 18H 4200b129325SGordon BerglingCounts cycles DSB is delivered at least one uops. 4210b129325SGordon BerglingSet Cmask = 1. 4221e862e5aSFabien Thomas.It Li IDQ.ALL_DSB_CYCLES_4_UOPS 4231e862e5aSFabien Thomas.Pq Event 79H , Umask 18H 4240b129325SGordon BerglingCounts cycles DSB is delivered four uops. 4250b129325SGordon BerglingSet Cmask = 4. 4261e862e5aSFabien Thomas.It Li IDQ.ALL_MITE_CYCLES_ANY_UOPS 4271e862e5aSFabien Thomas.Pq Event 79H , Umask 24H 4280b129325SGordon BerglingCounts cycles MITE is delivered at least one uops. 4290b129325SGordon BerglingSet Cmask = 1. 4301e862e5aSFabien Thomas.It Li IDQ.ALL_MITE_CYCLES_4_UOPS 4311e862e5aSFabien Thomas.Pq Event 79H , Umask 24H 4320b129325SGordon BerglingCounts cycles MITE is delivered four uops. 4330b129325SGordon BerglingSet Cmask = 4. 4341e862e5aSFabien Thomas.It Li IDQ.MITE_ALL_UOPS 4351e862e5aSFabien Thomas.Pq Event 79H , Umask 3CH 4361e862e5aSFabien Thomas# of uops delivered to IDQ from any path. 4371e862e5aSFabien Thomas.It Li ICACHE.MISSES 4381e862e5aSFabien Thomas.Pq Event 80H , Umask 02H 4391e862e5aSFabien ThomasNumber of Instruction Cache, Streaming Buffer and Victim Cache Misses. 4401e862e5aSFabien ThomasIncludes UC accesses. 4411e862e5aSFabien Thomas.It Li ITLB_MISSES.MISS_CAUSES_A_WALK 4421e862e5aSFabien Thomas.Pq Event 85H , Umask 01H 4431e862e5aSFabien ThomasMisses in all ITLB levels that cause page walks. 4441e862e5aSFabien Thomas.It Li ITLB_MISSES.WALK_COMPLETED 4451e862e5aSFabien Thomas.Pq Event 85H , Umask 02H 4461e862e5aSFabien ThomasMisses in all ITLB levels that cause completed page walks. 4471e862e5aSFabien Thomas.It Li ITLB_MISSES.WALK_DURATION 4481e862e5aSFabien Thomas.Pq Event 85H , Umask 04H 4491e862e5aSFabien ThomasCycle PMH is busy with a walk. 4501e862e5aSFabien Thomas.It Li ITLB_MISSES.STLB_HIT 4511e862e5aSFabien Thomas.Pq Event 85H , Umask 10H 4520b129325SGordon BerglingNumber of cache load STLB hits. 4530b129325SGordon BerglingNo page walk. 4541e862e5aSFabien Thomas.It Li ILD_STALL.LCP 4551e862e5aSFabien Thomas.Pq Event 87H , Umask 01H 4561e862e5aSFabien ThomasStalls caused by changing prefix length of the instruction. 4571e862e5aSFabien Thomas.It Li ILD_STALL.IQ_FULL 4581e862e5aSFabien Thomas.Pq Event 87H , Umask 04H 4591e862e5aSFabien ThomasStall cycles due to IQ is full. 4609e60f3acSRyan Stone.It Li BR_INST_EXEC.NONTAKEN_COND 4619e60f3acSRyan Stone.Pq Event 88H , Umask 41H 4629e60f3acSRyan StoneCount conditional near branch instructions that were executed (but not 4639e60f3acSRyan Stonenecessarily retired) and not taken. 4649e60f3acSRyan Stone.It Li BR_INST_EXEC.TAKEN_COND 4659e60f3acSRyan Stone.Pq Event 88H , Umask 81H 4669e60f3acSRyan StoneCount conditional near branch instructions that were executed (but not 4679e60f3acSRyan Stonenecessarily retired) and taken. 4681e862e5aSFabien Thomas.It Li BR_INST_EXEC.DIRECT_JMP 4699e60f3acSRyan Stone.Pq Event 88H , Umask 82H 4709e60f3acSRyan StoneCount all unconditional near branch instructions excluding calls and 4711e862e5aSFabien Thomasindirect branches. 4721e862e5aSFabien Thomas.It Li BR_INST_EXEC.INDIRECT_JMP_NON_CALL_RET 4739e60f3acSRyan Stone.Pq Event 88H , Umask 84H 4749e60f3acSRyan StoneCount executed indirect near branch instructions that are not calls nor 4751e862e5aSFabien Thomasreturns. 4761e862e5aSFabien Thomas.It Li BR_INST_EXEC.RETURN_NEAR 4779e60f3acSRyan Stone.Pq Event 88H , Umask 88H 4789e60f3acSRyan StoneCount indirect near branches that have a return mnemonic. 4791e862e5aSFabien Thomas.It Li BR_INST_EXEC.DIRECT_NEAR_CALL 4809e60f3acSRyan Stone.Pq Event 88H , Umask 90H 4819e60f3acSRyan StoneCount unconditional near call branch instructions, excluding non call 4821e862e5aSFabien Thomasbranch, executed. 4831e862e5aSFabien Thomas.It Li BR_INST_EXEC.INDIRECT_NEAR_CALL 4849e60f3acSRyan Stone.Pq Event 88H , Umask A0H 4859e60f3acSRyan StoneCount indirect near calls, including both register and memory indirect, 4861e862e5aSFabien Thomasexecuted. 4871e862e5aSFabien Thomas.It Li BR_INST_EXEC.ALL_BRANCHES 4881e862e5aSFabien Thomas.Pq Event 88H , Umask FFH 4891e862e5aSFabien ThomasCounts all near executed branches (not necessarily retired). 4909e60f3acSRyan Stone.It Li BR_MISP_EXEC.NONTAKEN_COND 4919e60f3acSRyan Stone.Pq Event 89H , Umask 41H 4929e60f3acSRyan StoneCount conditional near branch instructions mispredicted as nontaken. 4939e60f3acSRyan Stone.It Li BR_MISP_EXEC.TAKEN_COND 4949e60f3acSRyan Stone.Pq Event 89H , Umask 81H 4959e60f3acSRyan StoneCount conditional near branch instructions mispredicted as taken. 4961e862e5aSFabien Thomas.It Li BR_MISP_EXEC.INDIRECT_JMP_NON_CALL_RET 4979e60f3acSRyan Stone.Pq Event 89H , Umask 84H 4989e60f3acSRyan StoneCount mispredicted indirect near branch instructions that are not calls 4991e862e5aSFabien Thomasnor returns. 5001e862e5aSFabien Thomas.It Li BR_MISP_EXEC.RETURN_NEAR 5019e60f3acSRyan Stone.Pq Event 89H , Umask 88H 5029e60f3acSRyan StoneCount mispredicted indirect near branches that have a return mnemonic. 5031e862e5aSFabien Thomas.It Li BR_MISP_EXEC.DIRECT_NEAR_CALL 5049e60f3acSRyan Stone.Pq Event 89H , Umask 90H 5059e60f3acSRyan StoneCount mispredicted unconditional near call branch instructions, excluding 5061e862e5aSFabien Thomasnon call branch, executed. 5071e862e5aSFabien Thomas.It Li BR_MISP_EXEC.INDIRECT_NEAR_CALL 5089e60f3acSRyan Stone.Pq Event 89H , Umask A0H 5099e60f3acSRyan StoneCount mispredicted indirect near calls, including both register and memory 5101e862e5aSFabien Thomasindirect, executed. 5111e862e5aSFabien Thomas.It Li BR_MISP_EXEC.ALL_BRANCHES 5121e862e5aSFabien Thomas.Pq Event 89H , Umask FFH 5139e60f3acSRyan StoneCounts all mispredicted near executed branches (not necessarily retired). 5141e862e5aSFabien Thomas.It Li IDQ_UOPS_NOT_DELIVERED.CORE 5151e862e5aSFabien Thomas.Pq Event 9CH , Umask 01H 5161e862e5aSFabien ThomasCount number of non-delivered uops to RAT per thread. 5171e862e5aSFabien ThomasUse Cmask to qualify uop b/w. 5181e862e5aSFabien Thomas.It Li UOPS_DISPATCHED_PORT.PORT_0 5191e862e5aSFabien Thomas.Pq Event A1H , Umask 01H 5201e862e5aSFabien ThomasCycles which a Uop is dispatched on port 0. 5211e862e5aSFabien Thomas.It Li UOPS_DISPATCHED_PORT.PORT_1 5221e862e5aSFabien Thomas.Pq Event A1H , Umask 02H 5231e862e5aSFabien ThomasCycles which a Uop is dispatched on port 1. 5241e862e5aSFabien Thomas.It Li UOPS_DISPATCHED_PORT.PORT_2_LD 5251e862e5aSFabien Thomas.Pq Event A1H , Umask 04H 5261e862e5aSFabien ThomasCycles which a load uop is dispatched on port 2. 5271e862e5aSFabien Thomas.It Li UOPS_DISPATCHED_PORT.PORT_2_STA 5281e862e5aSFabien Thomas.Pq Event A1H , Umask 08H 5291e862e5aSFabien ThomasCycles which a store address uop is dispatched on port 2. 5301e862e5aSFabien Thomas.It Li UOPS_DISPATCHED_PORT.PORT_2 5311e862e5aSFabien Thomas.Pq Event A1H , Umask 0CH 5321e862e5aSFabien ThomasCycles which a Uop is dispatched on port 2. 5331e862e5aSFabien Thomas.It Li UOPS_DISPATCHED_PORT.PORT_3_LD 5341e862e5aSFabien Thomas.Pq Event A1H , Umask 10H 5351e862e5aSFabien ThomasCycles which a load uop is dispatched on port 3. 5361e862e5aSFabien Thomas.It Li UOPS_DISPATCHED_PORT.PORT_3_STA 5371e862e5aSFabien Thomas.Pq Event A1H , Umask 20H 5381e862e5aSFabien ThomasCycles which a store address uop is dispatched on port 3. 5391e862e5aSFabien Thomas.It Li UOPS_DISPATCHED_PORT.PORT_3 5401e862e5aSFabien Thomas.Pq Event A1H , Umask 30H 5411e862e5aSFabien ThomasCycles which a Uop is dispatched on port 3. 5421e862e5aSFabien Thomas.It Li UOPS_DISPATCHED_PORT.PORT_4 5431e862e5aSFabien Thomas.Pq Event A1H , Umask 40H 5441e862e5aSFabien ThomasCycles which a Uop is dispatched on port 4. 5451e862e5aSFabien Thomas.It Li UOPS_DISPATCHED_PORT.PORT_5 5461e862e5aSFabien Thomas.Pq Event A1H , Umask 80H 5471e862e5aSFabien ThomasCycles which a Uop is dispatched on port 5. 5481e862e5aSFabien Thomas.It Li RESOURCE_STALLS.ANY 5491e862e5aSFabien Thomas.Pq Event A2H , Umask 01H 5501e862e5aSFabien ThomasCycles Allocation is stalled due to Resource Related reason. 5511e862e5aSFabien Thomas.It Li RESOURCE_STALLS.RS 5521e862e5aSFabien Thomas.Pq Event A2H , Umask 04H 5531e862e5aSFabien ThomasCycles stalled due to no eligible RS entry available. 5541e862e5aSFabien Thomas.It Li RESOURCE_STALLS.SB 5551e862e5aSFabien Thomas.Pq Event A2H , Umask 08H 5561e862e5aSFabien ThomasCycles stalled due to no store buffers available. (not including draining 5571e862e5aSFabien Thomasform sync). 5581e862e5aSFabien Thomas.It Li RESOURCE_STALLS.ROB 5591e862e5aSFabien Thomas.Pq Event A2H , Umask 10H 5601e862e5aSFabien ThomasCycles stalled due to re-order buffer full. 5611e862e5aSFabien Thomas.It Li DSB2MITE_SWITCHES.COUNT 5621e862e5aSFabien Thomas.Pq Event ABH , Umask 01H 5631e862e5aSFabien ThomasNumber of DSB to MITE switches. 5641e862e5aSFabien Thomas.It Li DSB2MITE_SWITCHES.PENALTY_CYCLES 5651e862e5aSFabien Thomas.Pq Event ABH , Umask 02H 5661e862e5aSFabien ThomasCycles DSB to MITE switches caused delay. 5671e862e5aSFabien Thomas.It Li DSB_FILL.EXCEED_DSB_LINES 5681e862e5aSFabien Thomas.Pq Event ACH , Umask 08H 5691e862e5aSFabien ThomasDSB Fill encountered > 3 DSB lines. 5701e862e5aSFabien Thomas.It Li ITLB.ITLB_FLUSH 5711e862e5aSFabien Thomas.Pq Event AEH , Umask 01H 5721e862e5aSFabien ThomasCounts the number of ITLB flushes, includes 4k/2M/4M pages. 5731e862e5aSFabien Thomas.It Li OFFCORE_REQUESTS.DEMAND_DATA_RD 5741e862e5aSFabien Thomas.Pq Event B0H , Umask 01H 5751e862e5aSFabien ThomasDemand data read requests sent to uncore. 5761e862e5aSFabien Thomas.It Li OFFCORE_REQUESTS.DEMAND_CODE_RD 5771e862e5aSFabien Thomas.Pq Event B0H , Umask 02H 5781e862e5aSFabien ThomasDemand code read requests sent to uncore. 5791e862e5aSFabien Thomas.It Li OFFCORE_REQUESTS.DEMAND_RFO 5801e862e5aSFabien Thomas.Pq Event B0H , Umask 04H 5811e862e5aSFabien ThomasDemand RFO read requests sent to uncore, including regular RFOs, locks, 5821e862e5aSFabien ThomasItoM. 5831e862e5aSFabien Thomas.It Li OFFCORE_REQUESTS.ALL_DATA_RD 5841e862e5aSFabien Thomas.Pq Event B0H , Umask 08H 5851e862e5aSFabien ThomasData read requests sent to uncore (demand and prefetch). 5861e862e5aSFabien Thomas.It Li UOPS_EXECUTED.THREAD 5871e862e5aSFabien Thomas.Pq Event B1H , Umask 01H 5880b129325SGordon BerglingCounts total number of uops to be executed per-thread each cycle. 5890b129325SGordon BerglingSet Cmask = 1, INV =1 to count stall cycles. 5901e862e5aSFabien Thomas.It Li UOPS_EXECUTED.CORE 5911e862e5aSFabien Thomas.Pq Event B1H , Umask 02H 5921e862e5aSFabien ThomasCounts total number of uops to be executed per-core each cycle. 5931e862e5aSFabien ThomasDo not need to set ANY. 5941e862e5aSFabien Thomas.It Li OFF_CORE_RESPONSE_0 5951e862e5aSFabien Thomas.Pq Event B7H , Umask 01H 5961e862e5aSFabien ThomasOff-core Response Performance Monitoring. 5971e862e5aSFabien ThomasPMC0 only. 5981e862e5aSFabien ThomasRequires programming MSR 01A6H. 5991e862e5aSFabien Thomas.It Li OFF_CORE_RESPONSE_1 6001e862e5aSFabien Thomas.Pq Event BBH , Umask 01H 6011e862e5aSFabien ThomasOff-core Response Performance Monitoring. 6021e862e5aSFabien ThomasPMC3 only. 6031e862e5aSFabien ThomasRequires programming MSR 01A7H. 6041e862e5aSFabien Thomas.It Li TLB_FLUSH.DTLB_THREAD 6051e862e5aSFabien Thomas.Pq Event BDH , Umask 01H 6061e862e5aSFabien ThomasDTLB flush attempts of the thread- specific entries. 6071e862e5aSFabien Thomas.It Li TLB_FLUSH.STLB_ANY 6081e862e5aSFabien Thomas.Pq Event BDH , Umask 20H 6091e862e5aSFabien ThomasCount number of STLB flush attempts. 6101e862e5aSFabien Thomas.It Li INST_RETIRED.ANY_P 6111e862e5aSFabien Thomas.Pq Event C0H , Umask 00H 6121e862e5aSFabien ThomasNumber of instructions at retirement. 6131e862e5aSFabien Thomas.It Li INST_RETIRED.ALL 6141e862e5aSFabien Thomas.Pq Event C0H , Umask 01H 6151e862e5aSFabien ThomasPrecise instruction retired event with HW to reduce effect of PEBS shadow in 6161e862e5aSFabien ThomasIP distribution. 6171e862e5aSFabien ThomasPMC1 only. 6181e862e5aSFabien ThomasMust quiesce other PMCs. 6191e862e5aSFabien Thomas.It Li OTHER_ASSISTS.AVX_STORE 6201e862e5aSFabien Thomas.Pq Event C1H , Umask 08H 6211e862e5aSFabien ThomasNumber of assists associated with 256-bit AVX store operations. 6221e862e5aSFabien Thomas.It Li OTHER_ASSISTS.AVX_TO_SSE 6231e862e5aSFabien Thomas.Pq Event C1H , Umask 10H 6241e862e5aSFabien ThomasNumber of transitions from AVX- 256 to legacy SSE when penalty applicable. 6251e862e5aSFabien Thomas.It Li OTHER_ASSISTS.SSE_TO_AVX 6261e862e5aSFabien Thomas.Pq Event C1H , Umask 20H 6271e862e5aSFabien ThomasNumber of transitions from SSE to AVX-256 when penalty applicable. 6281e862e5aSFabien Thomas.It Li UOPS_RETIRED.ALL 6291e862e5aSFabien Thomas.Pq Event C2H , Umask 01H 6301e862e5aSFabien ThomasCounts the number of micro-ops retired, Use cmask=1 and invert to count 6311e862e5aSFabien Thomasactive cycles or stalled cycles. 6321e862e5aSFabien ThomasSupports PEBS, use Any=1 for core granular. 6331e862e5aSFabien Thomas.It Li UOPS_RETIRED.RETIRE_SLOTS 6341e862e5aSFabien Thomas.Pq Event C2H , Umask 02H 6351e862e5aSFabien ThomasCounts the number of retirement slots used each cycle. 6361e862e5aSFabien Thomas.It Li MACHINE_CLEARS.MEMORY_ORDERING 6371e862e5aSFabien Thomas.Pq Event C3H , Umask 02H 6381e862e5aSFabien ThomasCounts the number of machine clears due to memory order conflicts. 6391e862e5aSFabien Thomas.It Li MACHINE_CLEARS.SMC 6401e862e5aSFabien Thomas.Pq Event C3H , Umask 04H 6411e862e5aSFabien ThomasNumber of self-modifying-code machine clears detected. 6421e862e5aSFabien Thomas.It Li MACHINE_CLEARS.MASKMOV 6431e862e5aSFabien Thomas.Pq Event C3H , Umask 20H 6441e862e5aSFabien ThomasCounts the number of executed AVX masked load operations that refer to an 6451e862e5aSFabien Thomasillegal address range with the mask bits set to 0. 6461e862e5aSFabien Thomas.It Li BR_INST_RETIRED.ALL_BRANCHES 6471e862e5aSFabien Thomas.Pq Event C4H , Umask 00H 6481e862e5aSFabien ThomasBranch instructions at retirement. 6491e862e5aSFabien Thomas.It Li BR_INST_RETIRED.CONDITIONAL 6501e862e5aSFabien Thomas.Pq Event C4H , Umask 01H 6511e862e5aSFabien ThomasCounts the number of conditional branch instructions retired. 6521e862e5aSFabien ThomasSupports PEBS. 6531e862e5aSFabien Thomas.It Li BR_INST_RETIRED.NEAR_CALL 6541e862e5aSFabien Thomas.Pq Event C4H , Umask 02H 6551e862e5aSFabien ThomasDirect and indirect near call instructions retired. 6561e862e5aSFabien Thomas.It Li BR_INST_RETIRED.ALL_BRANCHES 6571e862e5aSFabien Thomas.Pq Event C4H , Umask 04H 6581e862e5aSFabien ThomasCounts the number of branch instructions retired. 6591e862e5aSFabien Thomas.It Li BR_INST_RETIRED.NEAR_RETURN 6601e862e5aSFabien Thomas.Pq Event C4H , Umask 08H 6611e862e5aSFabien ThomasCounts the number of near return instructions retired. 6621e862e5aSFabien Thomas.It Li BR_INST_RETIRED.NOT_TAKEN 6631e862e5aSFabien Thomas.Pq Event C4H , Umask 10H 6641e862e5aSFabien ThomasCounts the number of not taken branch instructions retired. 6651e862e5aSFabien Thomas.It Li BR_INST_RETIRED.NEAR_TAKEN 6661e862e5aSFabien Thomas.Pq Event C4H , Umask 20H 6671e862e5aSFabien ThomasNumber of near taken branches retired. 6681e862e5aSFabien Thomas.It Li BR_INST_RETIRED.FAR_BRANCH 6691e862e5aSFabien Thomas.Pq Event C4H , Umask 40H 6701e862e5aSFabien ThomasNumber of far branches retired. 6711e862e5aSFabien Thomas.It Li BR_MISP_RETIRED.ALL_BRANCHES 6721e862e5aSFabien Thomas.Pq Event C5H , Umask 00H 6731e862e5aSFabien ThomasMispredicted branch instructions at retirement. 6741e862e5aSFabien Thomas.It Li BR_MISP_RETIRED.CONDITIONAL 6751e862e5aSFabien Thomas.Pq Event C5H , Umask 01H 6761e862e5aSFabien ThomasMispredicted conditional branch instructions retired. 6771e862e5aSFabien ThomasSupports PEBS. 6781e862e5aSFabien Thomas.It Li BR_MISP_RETIRED.NEAR_CALL 6791e862e5aSFabien Thomas.Pq Event C5H , Umask 02H 6801e862e5aSFabien ThomasDirect and indirect mispredicted near call instructions retired. 6811e862e5aSFabien Thomas.It Li BR_MISP_RETIRED.ALL_BRANCHES 6821e862e5aSFabien Thomas.Pq Event C5H , Umask 04H 6831e862e5aSFabien ThomasMispredicted macro branch instructions retired. 6841e862e5aSFabien Thomas.It Li BR_MISP_RETIRED.NOT_TAKEN 6851e862e5aSFabien Thomas.Pq Event C5H , Umask 10H 6861e862e5aSFabien ThomasMispredicted not taken branch instructions retired. 6871e862e5aSFabien Thomas.It Li BR_MISP_RETIRED.TAKEN 6881e862e5aSFabien Thomas.Pq Event C5H , Umask 20H 6891e862e5aSFabien ThomasMispredicted taken branch instructions retired. 6901e862e5aSFabien Thomas.It Li FP_ASSIST.X87_OUTPUT 6911e862e5aSFabien Thomas.Pq Event CAH , Umask 02H 6921e862e5aSFabien ThomasNumber of X87 FP assists due to Output values. 6931e862e5aSFabien Thomas.It Li FP_ASSIST.X87_INPUT 6941e862e5aSFabien Thomas.Pq Event CAH , Umask 04H 6951e862e5aSFabien ThomasNumber of X87 FP assists due to input values. 6961e862e5aSFabien Thomas.It Li FP_ASSIST.SIMD_OUTPUT 6971e862e5aSFabien Thomas.Pq Event CAH , Umask 08H 6981e862e5aSFabien ThomasNumber of SIMD FP assists due to Output values. 6991e862e5aSFabien Thomas.It Li FP_ASSIST.SIMD_INPUT 7001e862e5aSFabien Thomas.Pq Event CAH , Umask 10H 7011e862e5aSFabien ThomasNumber of SIMD FP assists due to input values. 7021e862e5aSFabien Thomas.It Li FP_ASSIST.ANY 7031e862e5aSFabien Thomas.Pq Event CAH , Umask 1EH 7041e862e5aSFabien ThomasCycles with any input/output SSE* or FP assists. 7051e862e5aSFabien Thomas.It Li ROB_MISC_EVENTS.LBR_INSERTS 7061e862e5aSFabien Thomas.Pq Event CCH , Umask 20H 7071e862e5aSFabien ThomasCount cases of saving new LBR records by hardware. 7081e862e5aSFabien Thomas.It Li MEM_TRANS_RETIRED.LOAD_LATENCY 7091e862e5aSFabien Thomas.Pq Event CDH , Umask 01H 7101e862e5aSFabien ThomasSample loads with specified latency threshold. 7111e862e5aSFabien ThomasPMC3 only. 7121e862e5aSFabien ThomasSpecify threshold in MSR 0x3F6. 7131e862e5aSFabien Thomas.It Li MEM_TRANS_RETIRED.PRECISE_STORE 7141e862e5aSFabien Thomas.Pq Event CDH , Umask 02H 7151e862e5aSFabien ThomasSample stores and collect precise store operation via PEBS record. 7161e862e5aSFabien ThomasPMC3 only. 717bc0ad9a9SRyan Stone.It Li MEM_UOPS_RETIRED.STLB_MISS_LOADS 718bc0ad9a9SRyan Stone.Pq Event D0H , Umask 11H 719bc0ad9a9SRyan StoneCount retired load uops that missed the STLB. 720bc0ad9a9SRyan Stone.It Li MEM_UOPS_RETIRED.STLB_MISS_STORES 721bc0ad9a9SRyan Stone.Pq Event D0H , Umask 12H 722bc0ad9a9SRyan StoneCount retired store uops that missed the STLB. 723bc0ad9a9SRyan Stone.It Li MEM_UOPS_RETIRED.SPLIT_LOADS 724bc0ad9a9SRyan Stone.Pq Event D0H , Umask 41H 725bc0ad9a9SRyan StoneCount retired load uops that were split across a cache line. 726bc0ad9a9SRyan Stone.It Li MEM_UOPS_RETIRED.SPLIT_STORES 727bc0ad9a9SRyan Stone.Pq Event D0H , Umask 42H 728bc0ad9a9SRyan StoneCount retired store uops that were split across a cache line. 729bc0ad9a9SRyan Stone.It Li MEM_UOPS_RETIRED.ALL_LOADS 730bc0ad9a9SRyan Stone.Pq Event D0H , Umask 81H 731bc0ad9a9SRyan StoneCount all retired load uops. 732bc0ad9a9SRyan Stone.It Li MEM_UOPS_RETIRED.ALL_STORES 733bc0ad9a9SRyan Stone.Pq Event D0H , Umask 82H 734bc0ad9a9SRyan StoneCount all retired store uops. 7351e862e5aSFabien Thomas.It Li MEM_LOAD_UOPS_RETIRED.L1_HIT 7361e862e5aSFabien Thomas.Pq Event D1H , Umask 01H 7371e862e5aSFabien ThomasRetired load uops with L1 cache hits as data sources. 7381e862e5aSFabien ThomasSupports PEBS. 7391e862e5aSFabien Thomas.It Li MEM_LOAD_UOPS_RETIRED.L2_HIT 7401e862e5aSFabien Thomas.Pq Event D1H , Umask 02H 7411e862e5aSFabien ThomasRetired load uops with L2 cache hits as data sources. 7421e862e5aSFabien Thomas.It Li MEM_LOAD_UOPS_RETIRED.LLC_HIT 7431e862e5aSFabien Thomas.Pq Event D1H , Umask 04H 7441e862e5aSFabien ThomasRetired load uops with LLC cache hits as data sources. 7451e862e5aSFabien Thomas.It Li MEM_LOAD_UOPS_RETIRED.HIT_LFB 7461e862e5aSFabien Thomas.Pq Event D1H , Umask 40H 7471e862e5aSFabien ThomasRetired load uops which data sources were load uops missed L1 but hit FB due 7481e862e5aSFabien Thomasto preceding miss to the same cache line with data not ready. 7491e862e5aSFabien Thomas.It Li MEM_LOAD_UOPS_LLC_HIT_RETIRED.XSNP_MISS 7501e862e5aSFabien Thomas.Pq Event D2H , Umask 01H 7511e862e5aSFabien ThomasRetired load uops which data sources were LLC hit and cross-core snoop 7521e862e5aSFabien Thomasmissed in on-pkg core cache. 7531e862e5aSFabien ThomasSupports PEBS. 7541e862e5aSFabien Thomas.It Li MEM_LOAD_UOPS_LLC_HIT_RETIRED.XSNP_HIT 7551e862e5aSFabien Thomas.Pq Event D2H , Umask 02H 7561e862e5aSFabien ThomasRetired load uops which data sources were LLC and cross-core snoop hits in 7571e862e5aSFabien Thomason-pkg core cache. 7581e862e5aSFabien ThomasSupports PEBS. 7591e862e5aSFabien Thomas.It Li MEM_LOAD_UOPS_LLC_HIT_RETIRED.XSNP_HITM 7601e862e5aSFabien Thomas.Pq Event D2H , Umask 04H 7611e862e5aSFabien ThomasRetired load uops which data sources were HitM responses from shared LLC. 7621e862e5aSFabien Thomas.It Li MEM_LOAD_UOPS_LLC_HIT_RETIRED.XSNP_NONE 7631e862e5aSFabien Thomas.Pq Event D2H , Umask 08H 7641e862e5aSFabien ThomasRetired load uops which data sources were hits in LLC without snoops 7651e862e5aSFabien Thomasrequired. 7661e862e5aSFabien Thomas.It Li MEM_LOAD_UOPS_LLC_MISS_RETIRED.LOCAL_DRAM 7671e862e5aSFabien Thomas.Pq Event D3H , Umask 01H 7681e862e5aSFabien ThomasRetired load uops which data sources missed LLC but serviced from local 7691e862e5aSFabien Thomasdram. 7701e862e5aSFabien ThomasSupports PEBS. 7711e862e5aSFabien Thomas.It Li L2_TRANS.DEMAND_DATA_RD 7721e862e5aSFabien Thomas.Pq Event F0H , Umask 01H 7731e862e5aSFabien ThomasDemand Data Read requests that access L2 cache. 7741e862e5aSFabien Thomas.It Li L2_TRANS.RFO 7751e862e5aSFabien Thomas.Pq Event F0H , Umask 02H 7761e862e5aSFabien ThomasRFO requests that access L2 cache. 7771e862e5aSFabien Thomas.It Li L2_TRANS.CODE_RD 7781e862e5aSFabien Thomas.Pq Event F0H , Umask 04H 7791e862e5aSFabien ThomasL2 cache accesses when fetching instructions. 7801e862e5aSFabien Thomas.It Li L2_TRANS.ALL_PF 7811e862e5aSFabien Thomas.Pq Event F0H , Umask 08H 7821e862e5aSFabien ThomasAny MLC or LLC HW prefetch accessing L2, including rejects. 7831e862e5aSFabien Thomas.It Li L2_TRANS.L1D_WB 7841e862e5aSFabien Thomas.Pq Event F0H , Umask 10H 7851e862e5aSFabien ThomasL1D writebacks that access L2 cache. 7861e862e5aSFabien Thomas.It Li L2_TRANS.L2_FILL 7871e862e5aSFabien Thomas.Pq Event F0H , Umask 20H 7881e862e5aSFabien ThomasL2 fill requests that access L2 cache. 7891e862e5aSFabien Thomas.It Li L2_TRANS.L2_WB 7901e862e5aSFabien Thomas.Pq Event F0H , Umask 40H 7911e862e5aSFabien ThomasL2 writebacks that access L2 cache. 7921e862e5aSFabien Thomas.It Li L2_TRANS.ALL_REQUESTS 7931e862e5aSFabien Thomas.Pq Event F0H , Umask 80H 7941e862e5aSFabien ThomasTransactions accessing L2 pipe. 7951e862e5aSFabien Thomas.It Li L2_LINES_IN.I 7961e862e5aSFabien Thomas.Pq Event F1H , Umask 01H 7971e862e5aSFabien ThomasL2 cache lines in I state filling L2. 7981e862e5aSFabien ThomasCounting does not cover rejects. 7991e862e5aSFabien Thomas.It Li L2_LINES_IN.S 8001e862e5aSFabien Thomas.Pq Event F1H , Umask 02H 8011e862e5aSFabien ThomasL2 cache lines in S state filling L2. 8021e862e5aSFabien ThomasCounting does not cover rejects. 8031e862e5aSFabien Thomas.It Li L2_LINES_IN.E 8041e862e5aSFabien Thomas.Pq Event F1H , Umask 04H 8051e862e5aSFabien ThomasL2 cache lines in E state filling L2. 8061e862e5aSFabien ThomasCounting does not cover rejects. 8071e862e5aSFabien Thomas.It Li L2_LINES_IN.ALL 8081e862e5aSFabien Thomas.Pq Event F1H , Umask 07H 8091e862e5aSFabien ThomasL2 cache lines filling L2. 8101e862e5aSFabien ThomasCounting does not cover rejects. 8111e862e5aSFabien Thomas.It Li L2_LINES_OUT.DEMAND_CLEAN 8121e862e5aSFabien Thomas.Pq Event F2H , Umask 01H 8131e862e5aSFabien ThomasClean L2 cache lines evicted by demand. 8141e862e5aSFabien Thomas.It Li L2_LINES_OUT.DEMAND_DIRTY 8151e862e5aSFabien Thomas.Pq Event F2H , Umask 02H 8161e862e5aSFabien ThomasDirty L2 cache lines evicted by demand. 8171e862e5aSFabien Thomas.It Li L2_LINES_OUT.PF_CLEAN 8181e862e5aSFabien Thomas.Pq Event F2H , Umask 04H 8191e862e5aSFabien ThomasClean L2 cache lines evicted by the MLC prefetcher. 8201e862e5aSFabien Thomas.It Li L2_LINES_OUT.PF_DIRTY 8211e862e5aSFabien Thomas.Pq Event F2H , Umask 08H 8221e862e5aSFabien ThomasDirty L2 cache lines evicted by the MLC prefetcher. 8231e862e5aSFabien Thomas.El 8241e862e5aSFabien Thomas.Sh SEE ALSO 8251e862e5aSFabien Thomas.Xr pmc 3 , 826*b2934971SMitchell Horne.Xr pmc.amd 3 , 8271e862e5aSFabien Thomas.Xr pmc.atom 3 , 8281e862e5aSFabien Thomas.Xr pmc.core 3 , 82973461c24SJoel Dahl.Xr pmc.corei7 3 , 83073461c24SJoel Dahl.Xr pmc.corei7uc 3 , 8311e862e5aSFabien Thomas.Xr pmc.iaf 3 , 83273461c24SJoel Dahl.Xr pmc.ivybridgexeon 3 , 8331e862e5aSFabien Thomas.Xr pmc.sandybridge 3 , 8341e862e5aSFabien Thomas.Xr pmc.sandybridgeuc 3 , 83529f79bb3SSean Bruno.Xr pmc.sandybridgexeon 3 , 8361e862e5aSFabien Thomas.Xr pmc.soft 3 , 8371e862e5aSFabien Thomas.Xr pmc.tsc 3 , 83873461c24SJoel Dahl.Xr pmc.ucf 3 , 83973461c24SJoel Dahl.Xr pmc.westmere 3 , 84073461c24SJoel Dahl.Xr pmc.westmereuc 3 , 8411e862e5aSFabien Thomas.Xr pmc_cpuinfo 3 , 8421e862e5aSFabien Thomas.Xr pmclog 3 , 8431e862e5aSFabien Thomas.Xr hwpmc 4 8441e862e5aSFabien Thomas.Sh HISTORY 8451e862e5aSFabien ThomasThe 8461e862e5aSFabien Thomas.Nm pmc 8471e862e5aSFabien Thomaslibrary first appeared in 8481e862e5aSFabien Thomas.Fx 6.0 . 8491e862e5aSFabien Thomas.Sh AUTHORS 8502b7af31cSBaptiste Daroussin.An -nosplit 8511e862e5aSFabien ThomasThe 8521e862e5aSFabien Thomas.Lb libpmc 8531e862e5aSFabien Thomaslibrary was written by 8542b7af31cSBaptiste Daroussin.An Joseph Koshy Aq Mt jkoshy@FreeBSD.org . 8551e862e5aSFabien ThomasThe support for the Ivy Bridge 8561e862e5aSFabien Thomasmicroarchitecture was written by 8572b7af31cSBaptiste Daroussin.An Fabien Thomas Aq Mt fabient@FreeBSD.org . 858