|
Packit Service |
a1973e |
/*
|
|
Packit Service |
a1973e |
* Copyright (c) 2006 Hewlett-Packard Development Company, L.P.
|
|
Packit Service |
a1973e |
* Contributed by Stephane Eranian <eranian@hpl.hp.com>
|
|
Packit Service |
a1973e |
*
|
|
Packit Service |
a1973e |
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
Packit Service |
a1973e |
* of this software and associated documentation files (the "Software"), to deal
|
|
Packit Service |
a1973e |
* in the Software without restriction, including without limitation the rights
|
|
Packit Service |
a1973e |
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
|
Packit Service |
a1973e |
* of the Software, and to permit persons to whom the Software is furnished to do so,
|
|
Packit Service |
a1973e |
* subject to the following conditions:
|
|
Packit Service |
a1973e |
*
|
|
Packit Service |
a1973e |
* The above copyright notice and this permission notice shall be included in all
|
|
Packit Service |
a1973e |
* copies or substantial portions of the Software.
|
|
Packit Service |
a1973e |
*
|
|
Packit Service |
a1973e |
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
|
Packit Service |
a1973e |
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
|
Packit Service |
a1973e |
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
Packit Service |
a1973e |
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
|
|
Packit Service |
a1973e |
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
|
|
Packit Service |
a1973e |
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
Packit Service |
a1973e |
*
|
|
Packit Service |
a1973e |
* This file is part of libpfm, a performance monitoring support library for
|
|
Packit Service |
a1973e |
* applications on Linux.
|
|
Packit Service |
a1973e |
*/
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
#define INTEL_CORE_MESI_UMASKS \
|
|
Packit Service |
a1973e |
{ .pme_uname = "MESI",\
|
|
Packit Service |
a1973e |
.pme_udesc = "Any cacheline access (default)",\
|
|
Packit Service |
a1973e |
.pme_ucode = 0xf\
|
|
Packit Service |
a1973e |
},\
|
|
Packit Service |
a1973e |
{ .pme_uname = "I_STATE",\
|
|
Packit Service |
a1973e |
.pme_udesc = "Invalid cacheline",\
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1\
|
|
Packit Service |
a1973e |
},\
|
|
Packit Service |
a1973e |
{ .pme_uname = "S_STATE",\
|
|
Packit Service |
a1973e |
.pme_udesc = "Shared cacheline",\
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2\
|
|
Packit Service |
a1973e |
},\
|
|
Packit Service |
a1973e |
{ .pme_uname = "E_STATE",\
|
|
Packit Service |
a1973e |
.pme_udesc = "Exclusive cacheline",\
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4\
|
|
Packit Service |
a1973e |
},\
|
|
Packit Service |
a1973e |
{ .pme_uname = "M_STATE",\
|
|
Packit Service |
a1973e |
.pme_udesc = "Modified cacheline",\
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8\
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
#define INTEL_CORE_SPECIFICITY_UMASKS \
|
|
Packit Service |
a1973e |
{ .pme_uname = "SELF",\
|
|
Packit Service |
a1973e |
.pme_udesc = "This core",\
|
|
Packit Service |
a1973e |
.pme_ucode = 0x40\
|
|
Packit Service |
a1973e |
},\
|
|
Packit Service |
a1973e |
{ .pme_uname = "BOTH_CORES",\
|
|
Packit Service |
a1973e |
.pme_udesc = "Both cores",\
|
|
Packit Service |
a1973e |
.pme_ucode = 0xc0\
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
#define INTEL_CORE_HW_PREFETCH_UMASKS \
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",\
|
|
Packit Service |
a1973e |
.pme_udesc = "All inclusive",\
|
|
Packit Service |
a1973e |
.pme_ucode = 0x30\
|
|
Packit Service |
a1973e |
},\
|
|
Packit Service |
a1973e |
{ .pme_uname = "PREFETCH",\
|
|
Packit Service |
a1973e |
.pme_udesc = "Hardware prefetch only",\
|
|
Packit Service |
a1973e |
.pme_ucode = 0x10\
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
#define INTEL_CORE_AGENT_UMASKS \
|
|
Packit Service |
a1973e |
{ .pme_uname = "THIS_AGENT",\
|
|
Packit Service |
a1973e |
.pme_udesc = "This agent",\
|
|
Packit Service |
a1973e |
.pme_ucode = 0x00\
|
|
Packit Service |
a1973e |
},\
|
|
Packit Service |
a1973e |
{ .pme_uname = "ALL_AGENTS",\
|
|
Packit Service |
a1973e |
.pme_udesc = "Any agent on the bus",\
|
|
Packit Service |
a1973e |
.pme_ucode = 0x20\
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
static pme_core_entry_t core_pe[]={
|
|
Packit Service |
a1973e |
/*
|
|
Packit Service |
a1973e |
* BEGIN: architected Core events
|
|
Packit Service |
a1973e |
*/
|
|
Packit Service |
a1973e |
{.pme_name = "UNHALTED_CORE_CYCLES",
|
|
Packit Service |
a1973e |
.pme_code = 0x003c,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_FIXED1,
|
|
Packit Service |
a1973e |
.pme_desc = "count core clock cycles whenever the clock signal on the specific core is running (not halted). Alias to event CPU_CLK_UNHALTED:CORE_P"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{.pme_name = "INSTRUCTIONS_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0x00c0,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_FIXED0,
|
|
Packit Service |
a1973e |
.pme_desc = "count the number of instructions at retirement. Alias to event INST_RETIRED:ANY_P",
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{.pme_name = "UNHALTED_REFERENCE_CYCLES",
|
|
Packit Service |
a1973e |
.pme_code = 0x013c,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_FIXED2_ONLY,
|
|
Packit Service |
a1973e |
.pme_desc = "Unhalted reference cycles. Alias to event CPU_CLK_UNHALTED:REF",
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{.pme_name = "LAST_LEVEL_CACHE_REFERENCES",
|
|
Packit Service |
a1973e |
.pme_code = 0x4f2e,
|
|
Packit Service |
a1973e |
.pme_desc = "count each request originating from the core to reference a cache line in the last level cache. The count may include speculation, but excludes cache line fills due to hardware prefetch. Alias to L2_RQSTS:SELF_DEMAND_MESI",
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{.pme_name = "LAST_LEVEL_CACHE_MISSES",
|
|
Packit Service |
a1973e |
.pme_code = 0x412e,
|
|
Packit Service |
a1973e |
.pme_desc = "count each cache miss condition for references to the last level cache. The event count may include speculation, but excludes cache line fills due to hardware prefetch. Alias to event L2_RQSTS:SELF_DEMAND_I_STATE",
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{.pme_name = "BRANCH_INSTRUCTIONS_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0x00c4,
|
|
Packit Service |
a1973e |
.pme_desc = "count branch instructions at retirement. Specifically, this event counts the retirement of the last micro-op of a branch instruction. Alias to event BR_INST_RETIRED:ANY",
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{.pme_name = "MISPREDICTED_BRANCH_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0x00c5,
|
|
Packit Service |
a1973e |
.pme_desc = "count mispredicted branch instructions at retirement. Specifically, this event counts at retirement of the last micro-op of a branch instruction in the architectural path of the execution and experienced misprediction in the branch prediction hardware. Alias to BR_INST_RETIRED:MISPRED",
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
/*
|
|
Packit Service |
a1973e |
* END: architected events
|
|
Packit Service |
a1973e |
*/
|
|
Packit Service |
a1973e |
/*
|
|
Packit Service |
a1973e |
* BEGIN: Core 2 Duo events
|
|
Packit Service |
a1973e |
*/
|
|
Packit Service |
a1973e |
{ .pme_name = "RS_UOPS_DISPATCHED_CYCLES",
|
|
Packit Service |
a1973e |
.pme_code = 0xa1,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PMC0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles micro-ops dispatched for execution",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "PORT_0",
|
|
Packit Service |
a1973e |
.pme_udesc = "on port 0",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "PORT_1",
|
|
Packit Service |
a1973e |
.pme_udesc = "on port 1",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "PORT_2",
|
|
Packit Service |
a1973e |
.pme_udesc = "on port 2",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "PORT_3",
|
|
Packit Service |
a1973e |
.pme_udesc = "on port 3",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "PORT_4",
|
|
Packit Service |
a1973e |
.pme_udesc = "on port 4",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x10
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "PORT_5",
|
|
Packit Service |
a1973e |
.pme_udesc = "on port 5",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x20
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "on any port",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x3f
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 7
|
|
Packit Service |
a1973e |
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "RS_UOPS_DISPATCHED",
|
|
Packit Service |
a1973e |
.pme_code = 0xa0,
|
|
Packit Service |
a1973e |
.pme_desc = "Number of micro-ops dispatched for execution",
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "RS_UOPS_DISPATCHED_NONE",
|
|
Packit Service |
a1973e |
.pme_code = 0xa0 | (1 << 23 | 1 << 24),
|
|
Packit Service |
a1973e |
.pme_desc = "Number of of cycles in which no micro-ops is dispatched for execution",
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "LOAD_BLOCK",
|
|
Packit Service |
a1973e |
.pme_code = 0x3,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Loads blocked",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "STA",
|
|
Packit Service |
a1973e |
.pme_udesc = "Loads blocked by a preceding store with unknown address",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "STD",
|
|
Packit Service |
a1973e |
.pme_udesc = "Loads blocked by a preceding store with unknown data",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "OVERLAP_STORE",
|
|
Packit Service |
a1973e |
.pme_udesc = "Loads that partially overlap an earlier store, or 4K aliased with a previous store",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "UNTIL_RETIRE",
|
|
Packit Service |
a1973e |
.pme_udesc = "Loads blocked until retirement",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x10
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "L1D",
|
|
Packit Service |
a1973e |
.pme_udesc = "Loads blocked by the L1 data cache",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x20
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 5
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SB_DRAIN_CYCLES",
|
|
Packit Service |
a1973e |
.pme_code = 0x104,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles while stores are blocked due to store buffer drain"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "STORE_BLOCK",
|
|
Packit Service |
a1973e |
.pme_code = 0x4,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles while store is waiting",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "ORDER",
|
|
Packit Service |
a1973e |
.pme_udesc = "Cycles while store is waiting for a preceding store to be globally observed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "SNOOP",
|
|
Packit Service |
a1973e |
.pme_udesc = "A store is blocked due to a conflict with an external or internal snoop",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SEGMENT_REG_LOADS",
|
|
Packit Service |
a1973e |
.pme_code = 0x6,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Number of segment register loads"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SSE_PRE_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x7,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Streaming SIMD Extensions (SSE) Prefetch instructions executed",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "NTA",
|
|
Packit Service |
a1973e |
.pme_udesc = "Streaming SIMD Extensions (SSE) Prefetch NTA instructions executed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x0
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "L1",
|
|
Packit Service |
a1973e |
.pme_udesc = "Streaming SIMD Extensions (SSE) PrefetchT0 instructions executed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "L2",
|
|
Packit Service |
a1973e |
.pme_udesc = "Streaming SIMD Extensions (SSE) PrefetchT1 and PrefetchT2 instructions executed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "STORES",
|
|
Packit Service |
a1973e |
.pme_udesc = "Streaming SIMD Extensions (SSE) Weakly-ordered store instructions executed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x3
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "DTLB_MISSES",
|
|
Packit Service |
a1973e |
.pme_code = 0x8,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Memory accesses that missed the DTLB",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "Any memory access that missed the DTLB",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "MISS_LD",
|
|
Packit Service |
a1973e |
.pme_udesc = "DTLB misses due to load operations",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "L0_MISS_LD",
|
|
Packit Service |
a1973e |
.pme_udesc = "L0 DTLB misses due to load operations",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "MISS_ST",
|
|
Packit Service |
a1973e |
.pme_udesc = "DTLB misses due to store operations",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "MEMORY_DISAMBIGUATION",
|
|
Packit Service |
a1973e |
.pme_code = 0x9,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Memory disambiguation",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "RESET",
|
|
Packit Service |
a1973e |
.pme_udesc = "Memory disambiguation reset cycles",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "SUCCESS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Number of loads that were successfully disambiguated",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "PAGE_WALKS",
|
|
Packit Service |
a1973e |
.pme_code = 0xc,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Number of page-walks executed",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "COUNT",
|
|
Packit Service |
a1973e |
.pme_udesc = "Number of page-walks executed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "CYCLES",
|
|
Packit Service |
a1973e |
.pme_udesc = "Duration of page-walks in core cycles",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "FP_COMP_OPS_EXE",
|
|
Packit Service |
a1973e |
.pme_code = 0x10,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PMC0,
|
|
Packit Service |
a1973e |
.pme_desc = "Floating point computational micro-ops executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "FP_ASSIST",
|
|
Packit Service |
a1973e |
.pme_code = 0x11,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PMC1,
|
|
Packit Service |
a1973e |
.pme_desc = "Floating point assists"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "MUL",
|
|
Packit Service |
a1973e |
.pme_code = 0x12,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PMC1,
|
|
Packit Service |
a1973e |
.pme_desc = "Multiply operations executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "DIV",
|
|
Packit Service |
a1973e |
.pme_code = 0x13,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PMC1,
|
|
Packit Service |
a1973e |
.pme_desc = "Divide operations executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "CYCLES_DIV_BUSY",
|
|
Packit Service |
a1973e |
.pme_code = 0x14,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PMC0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles the divider is busy"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "IDLE_DURING_DIV",
|
|
Packit Service |
a1973e |
.pme_code = 0x18,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PMC0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles the divider is busy and all other execution units are idle"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "DELAYED_BYPASS",
|
|
Packit Service |
a1973e |
.pme_code = 0x19,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PMC1,
|
|
Packit Service |
a1973e |
.pme_desc = "Delayed bypass",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "FP",
|
|
Packit Service |
a1973e |
.pme_udesc = "Delayed bypass to FP operation",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x0
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "SIMD",
|
|
Packit Service |
a1973e |
.pme_udesc = "Delayed bypass to SIMD operation",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "LOAD",
|
|
Packit Service |
a1973e |
.pme_udesc = "Delayed bypass to load operation",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 3
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_ADS",
|
|
Packit Service |
a1973e |
.pme_code = 0x21,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles L2 address bus is in use",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_DBUS_BUSY_RD",
|
|
Packit Service |
a1973e |
.pme_code = 0x23,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles the L2 transfers data to the core",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_LINES_IN",
|
|
Packit Service |
a1973e |
.pme_code = 0x24,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "L2 cache misses",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_HW_PREFETCH_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_M_LINES_IN",
|
|
Packit Service |
a1973e |
.pme_code = 0x25,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "L2 cache line modifications",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_LINES_OUT",
|
|
Packit Service |
a1973e |
.pme_code = 0x26,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "L2 cache lines evicted",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_HW_PREFETCH_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_M_LINES_OUT",
|
|
Packit Service |
a1973e |
.pme_code = 0x27,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Modified lines evicted from the L2 cache",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_HW_PREFETCH_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_IFETCH",
|
|
Packit Service |
a1973e |
.pme_code = 0x28,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC|PFMLIB_CORE_MESI,
|
|
Packit Service |
a1973e |
.pme_desc = "L2 cacheable instruction fetch requests",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_MESI_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 7
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_LD",
|
|
Packit Service |
a1973e |
.pme_code = 0x29,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC|PFMLIB_CORE_MESI,
|
|
Packit Service |
a1973e |
.pme_desc = "L2 cache reads",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_MESI_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_HW_PREFETCH_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 9
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_ST",
|
|
Packit Service |
a1973e |
.pme_code = 0x2a,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC|PFMLIB_CORE_MESI,
|
|
Packit Service |
a1973e |
.pme_desc = "L2 store requests",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_MESI_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 7
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_LOCK",
|
|
Packit Service |
a1973e |
.pme_code = 0x2b,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC|PFMLIB_CORE_MESI,
|
|
Packit Service |
a1973e |
.pme_desc = "L2 locked accesses",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_MESI_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 7
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_RQSTS",
|
|
Packit Service |
a1973e |
.pme_code = 0x2e,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC|PFMLIB_CORE_MESI,
|
|
Packit Service |
a1973e |
.pme_desc = "L2 cache requests",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_MESI_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_HW_PREFETCH_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 9
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_REJECT_BUSQ",
|
|
Packit Service |
a1973e |
.pme_code = 0x30,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC|PFMLIB_CORE_MESI,
|
|
Packit Service |
a1973e |
.pme_desc = "Rejected L2 cache requests",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_MESI_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_HW_PREFETCH_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 9
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L2_NO_REQ",
|
|
Packit Service |
a1973e |
.pme_code = 0x32,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles no L2 cache requests are pending",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "EIST_TRANS",
|
|
Packit Service |
a1973e |
.pme_code = 0x3a,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Number of Enhanced Intel SpeedStep(R) Technology (EIST) transitions"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "THERMAL_TRIP",
|
|
Packit Service |
a1973e |
.pme_code = 0xc03b,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Number of thermal trips"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "CPU_CLK_UNHALTED",
|
|
Packit Service |
a1973e |
.pme_code = 0x3c,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_UMASK_NCOMBO,
|
|
Packit Service |
a1973e |
.pme_desc = "Core cycles when core is not halted",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "CORE_P",
|
|
Packit Service |
a1973e |
.pme_udesc = "Core cycles when core is not halted",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x0,
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "REF",
|
|
Packit Service |
a1973e |
.pme_udesc = "Reference cycles. This event is not affected by core changes such as P-states or TM2 transitions but counts at the same frequency as the time stamp counter. This event can approximate elapsed time. This event has a constant ratio with the CPU_CLK_UNHALTED:BUS event",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_FIXED2_ONLY /* Can only be measured on FIXED_CTR2 */
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "BUS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Bus cycles when core is not halted. This event can give a measurement of the elapsed time. This events has a constant ratio with CPU_CLK_UNHALTED:REF event, which is the maximum bus to processor frequency ratio",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1,
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "NO_OTHER",
|
|
Packit Service |
a1973e |
.pme_udesc = "Bus cycles when core is active and the other is halted",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1D_CACHE_LD",
|
|
Packit Service |
a1973e |
.pme_code = 0x40,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_MESI,
|
|
Packit Service |
a1973e |
.pme_desc = "L1 cacheable data reads",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_MESI_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 5
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1D_CACHE_ST",
|
|
Packit Service |
a1973e |
.pme_code = 0x41,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_MESI,
|
|
Packit Service |
a1973e |
.pme_desc = "L1 cacheable data writes",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_MESI_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 5
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1D_CACHE_LOCK",
|
|
Packit Service |
a1973e |
.pme_code = 0x42,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_MESI,
|
|
Packit Service |
a1973e |
.pme_desc = "L1 data cacheable locked reads",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_MESI_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 5
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1D_ALL_REF",
|
|
Packit Service |
a1973e |
.pme_code = 0x143,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "All references to the L1 data cache"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1D_ALL_CACHE_REF",
|
|
Packit Service |
a1973e |
.pme_code = 0x243,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "L1 Data cacheable reads and writes"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1D_REPL",
|
|
Packit Service |
a1973e |
.pme_code = 0xf45,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cache lines allocated in the L1 data cache"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1D_M_REPL",
|
|
Packit Service |
a1973e |
.pme_code = 0x46,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Modified cache lines allocated in the L1 data cache"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1D_M_EVICT",
|
|
Packit Service |
a1973e |
.pme_code = 0x47,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Modified cache lines evicted from the L1 data cache"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1D_PEND_MISS",
|
|
Packit Service |
a1973e |
.pme_code = 0x48,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Total number of outstanding L1 data cache misses at any cycle"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1D_SPLIT",
|
|
Packit Service |
a1973e |
.pme_code = 0x49,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cache line split from L1 data cache",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "LOADS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Cache line split loads from the L1 data cache",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "STORES",
|
|
Packit Service |
a1973e |
.pme_udesc = "Cache line split stores to the L1 data cache",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SSE_PRE_MISS",
|
|
Packit Service |
a1973e |
.pme_code = 0x4b,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Streaming SIMD Extensions (SSE) instructions missing all cache levels",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "NTA",
|
|
Packit Service |
a1973e |
.pme_udesc = "Streaming SIMD Extensions (SSE) Prefetch NTA instructions missing all cache levels",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x0
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "L1",
|
|
Packit Service |
a1973e |
.pme_udesc = "Streaming SIMD Extensions (SSE) PrefetchT0 instructions missing all cache levels",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "L2",
|
|
Packit Service |
a1973e |
.pme_udesc = "Streaming SIMD Extensions (SSE) PrefetchT1 and PrefetchT2 instructions missing all cache levels",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 3
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "LOAD_HIT_PRE",
|
|
Packit Service |
a1973e |
.pme_code = 0x4c,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Load operations conflicting with a software prefetch to the same address"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1D_PREFETCH",
|
|
Packit Service |
a1973e |
.pme_code = 0x4e,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "L1 data cache prefetch",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "REQUESTS",
|
|
Packit Service |
a1973e |
.pme_udesc = "L1 data cache prefetch requests",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x10
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_REQUEST_OUTSTANDING",
|
|
Packit Service |
a1973e |
.pme_code = 0x60,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Number of pending full cache line read transactions on the bus occurring in each cycle",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_BNR_DRV",
|
|
Packit Service |
a1973e |
.pme_code = 0x61,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Number of Bus Not Ready signals asserted",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_DRDY_CLOCKS",
|
|
Packit Service |
a1973e |
.pme_code = 0x62,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Bus cycles when data is sent on the bus",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_LOCK_CLOCKS",
|
|
Packit Service |
a1973e |
.pme_code = 0x63,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Bus cycles when a LOCK signal is asserted",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_DATA_RCV",
|
|
Packit Service |
a1973e |
.pme_code = 0x64,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Bus cycles while processor receives data",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_BRD",
|
|
Packit Service |
a1973e |
.pme_code = 0x65,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Burst read bus transactions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_RFO",
|
|
Packit Service |
a1973e |
.pme_code = 0x66,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "RFO bus transactions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_WB",
|
|
Packit Service |
a1973e |
.pme_code = 0x67,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Explicit writeback bus transactions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_IFETCH",
|
|
Packit Service |
a1973e |
.pme_code = 0x68,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Instruction-fetch bus transactions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_INVAL",
|
|
Packit Service |
a1973e |
.pme_code = 0x69,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Invalidate bus transactions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_PWR",
|
|
Packit Service |
a1973e |
.pme_code = 0x6a,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Partial write bus transaction",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_P",
|
|
Packit Service |
a1973e |
.pme_code = 0x6b,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Partial bus transactions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_IO",
|
|
Packit Service |
a1973e |
.pme_code = 0x6c,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "IO bus transactions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_DEF",
|
|
Packit Service |
a1973e |
.pme_code = 0x6d,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Deferred bus transactions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_BURST",
|
|
Packit Service |
a1973e |
.pme_code = 0x6e,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Burst (full cache-line) bus transactions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_MEM",
|
|
Packit Service |
a1973e |
.pme_code = 0x6f,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Memory bus transactions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_TRANS_ANY",
|
|
Packit Service |
a1973e |
.pme_code = 0x70,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "All bus transactions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "EXT_SNOOP",
|
|
Packit Service |
a1973e |
.pme_code = 0x77,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "External snoops responses",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS,
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "Any external snoop response",
|
|
Packit Service |
a1973e |
.pme_ucode = 0xb
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "CLEAN",
|
|
Packit Service |
a1973e |
.pme_udesc = "External snoop CLEAN response",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "HIT",
|
|
Packit Service |
a1973e |
.pme_udesc = "External snoop HIT response",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "HITM",
|
|
Packit Service |
a1973e |
.pme_udesc = "External snoop HITM response",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 6
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "CMP_SNOOP",
|
|
Packit Service |
a1973e |
.pme_code = 0x78,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "L1 data cache is snooped by other core",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "L1 data cache is snooped by other core",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x03
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "SHARE",
|
|
Packit Service |
a1973e |
.pme_udesc = "L1 data cache is snooped for sharing by other core",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x01
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "INVALIDATE",
|
|
Packit Service |
a1973e |
.pme_udesc = "L1 data cache is snooped for Invalidation by other core",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x02
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 5
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_HIT_DRV",
|
|
Packit Service |
a1973e |
.pme_code = 0x7a,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "HIT signal asserted",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_HITM_DRV",
|
|
Packit Service |
a1973e |
.pme_code = 0x7b,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "HITM signal asserted",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUSQ_EMPTY",
|
|
Packit Service |
a1973e |
.pme_code = 0x7d,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Bus queue is empty",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SNOOP_STALL_DRV",
|
|
Packit Service |
a1973e |
.pme_code = 0x7e,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "Bus stalled for snoops",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS,
|
|
Packit Service |
a1973e |
INTEL_CORE_AGENT_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BUS_IO_WAIT",
|
|
Packit Service |
a1973e |
.pme_code = 0x7f,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_CSPEC,
|
|
Packit Service |
a1973e |
.pme_desc = "IO requests waiting in the bus queue",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
INTEL_CORE_SPECIFICITY_UMASKS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1I_READS",
|
|
Packit Service |
a1973e |
.pme_code = 0x80,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Instruction fetches"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "L1I_MISSES",
|
|
Packit Service |
a1973e |
.pme_code = 0x81,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Instruction Fetch Unit misses"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "ITLB",
|
|
Packit Service |
a1973e |
.pme_code = 0x82,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "ITLB small page misses",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "SMALL_MISS",
|
|
Packit Service |
a1973e |
.pme_udesc = "ITLB small page misses",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "LARGE_MISS",
|
|
Packit Service |
a1973e |
.pme_udesc = "ITLB large page misses",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x10
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "FLUSH",
|
|
Packit Service |
a1973e |
.pme_udesc = "ITLB flushes",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x40
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "MISSES",
|
|
Packit Service |
a1973e |
.pme_udesc = "ITLB misses",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x12
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "INST_QUEUE",
|
|
Packit Service |
a1973e |
.pme_code = 0x83,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles during which the instruction queue is full",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "FULL",
|
|
Packit Service |
a1973e |
.pme_udesc = "Cycles during which the instruction queue is full",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "CYCLES_L1I_MEM_STALLED",
|
|
Packit Service |
a1973e |
.pme_code = 0x86,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles during which instruction fetches are stalled"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "ILD_STALL",
|
|
Packit Service |
a1973e |
.pme_code = 0x87,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Instruction Length Decoder stall cycles due to a length changing prefix"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_INST_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x88,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Branch instructions executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_MISSP_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x89,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Mispredicted branch instructions executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_BAC_MISSP_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x8a,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Branch instructions mispredicted at decoding"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_CND_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x8b,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Conditional branch instructions executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_CND_MISSP_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x8c,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Mispredicted conditional branch instructions executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_IND_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x8d,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Indirect branch instructions executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_IND_MISSP_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x8e,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Mispredicted indirect branch instructions executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_RET_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x8f,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "RET instructions executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_RET_MISSP_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x90,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Mispredicted RET instructions executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_RET_BAC_MISSP_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x91,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "RET instructions executed mispredicted at decoding"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_CALL_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x92,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "CALL instructions executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_CALL_MISSP_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x93,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Mispredicted CALL instructions executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_IND_CALL_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0x94,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Indirect CALL instructions executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_TKN_BUBBLE_1",
|
|
Packit Service |
a1973e |
.pme_code = 0x97,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Branch predicted taken with bubble I"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_TKN_BUBBLE_2",
|
|
Packit Service |
a1973e |
.pme_code = 0x98,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Branch predicted taken with bubble II"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
#if 0
|
|
Packit Service |
a1973e |
/*
|
|
Packit Service |
a1973e |
* Looks like event 0xa1 supersedes this one
|
|
Packit Service |
a1973e |
*/
|
|
Packit Service |
a1973e |
{ .pme_name = "RS_UOPS_DISPATCHED",
|
|
Packit Service |
a1973e |
.pme_code = 0xa0,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Micro-ops dispatched for execution"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
#endif
|
|
Packit Service |
a1973e |
{ .pme_name = "MACRO_INSTS",
|
|
Packit Service |
a1973e |
.pme_code = 0xaa,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Instructions decoded",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "DECODED",
|
|
Packit Service |
a1973e |
.pme_udesc = "Instructions decoded",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "CISC_DECODED",
|
|
Packit Service |
a1973e |
.pme_udesc = "CISC instructions decoded",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "ESP",
|
|
Packit Service |
a1973e |
.pme_code = 0xab,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "ESP register content synchronization",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "SYNCH",
|
|
Packit Service |
a1973e |
.pme_udesc = "ESP register content synchronization",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "ADDITIONS",
|
|
Packit Service |
a1973e |
.pme_udesc = "ESP register automatic additions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SIMD_UOPS_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0xb0,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "SIMD micro-ops executed (excluding stores)"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SIMD_SAT_UOP_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0xb1,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "SIMD saturated arithmetic micro-ops executed"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SIMD_UOP_TYPE_EXEC",
|
|
Packit Service |
a1973e |
.pme_code = 0xb3,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "SIMD packed multiply micro-ops executed",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "MUL",
|
|
Packit Service |
a1973e |
.pme_udesc = "SIMD packed multiply micro-ops executed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "SHIFT",
|
|
Packit Service |
a1973e |
.pme_udesc = "SIMD packed shift micro-ops executed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "PACK",
|
|
Packit Service |
a1973e |
.pme_udesc = "SIMD pack micro-ops executed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "UNPACK",
|
|
Packit Service |
a1973e |
.pme_udesc = "SIMD unpack micro-ops executed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "LOGICAL",
|
|
Packit Service |
a1973e |
.pme_udesc = "SIMD packed logical micro-ops executed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x10
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "ARITHMETIC",
|
|
Packit Service |
a1973e |
.pme_udesc = "SIMD packed arithmetic micro-ops executed",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x20
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 6
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "INST_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0xc0,
|
|
Packit Service |
a1973e |
.pme_desc = "Instructions retired",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY_P",
|
|
Packit Service |
a1973e |
.pme_udesc = "Instructions retired (precise event)",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x0,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PEBS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "LOADS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Instructions retired, which contain a load",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "STORES",
|
|
Packit Service |
a1973e |
.pme_udesc = "Instructions retired, which contain a store",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "OTHER",
|
|
Packit Service |
a1973e |
.pme_udesc = "Instructions retired, with no load or store operation",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "X87_OPS_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0xc1,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "FXCH instructions retired",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "FXCH",
|
|
Packit Service |
a1973e |
.pme_udesc = "FXCH instructions retired",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired floating-point computational operations (precise event)",
|
|
Packit Service |
a1973e |
.pme_ucode = 0xfe,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PEBS
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "UOPS_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0xc2,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Fused load+op or load+indirect branch retired",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "LD_IND_BR",
|
|
Packit Service |
a1973e |
.pme_udesc = "Fused load+op or load+indirect branch retired",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "STD_STA",
|
|
Packit Service |
a1973e |
.pme_udesc = "Fused store address + data retired",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "MACRO_FUSION",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired instruction pairs fused into one micro-op",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "NON_FUSED",
|
|
Packit Service |
a1973e |
.pme_udesc = "Non-fused micro-ops retired",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "FUSED",
|
|
Packit Service |
a1973e |
.pme_udesc = "Fused micro-ops retired",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x7
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "Micro-ops retired",
|
|
Packit Service |
a1973e |
.pme_ucode = 0xf
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 6
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "MACHINE_NUKES",
|
|
Packit Service |
a1973e |
.pme_code = 0xc3,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Self-Modifying Code detected",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "SMC",
|
|
Packit Service |
a1973e |
.pme_udesc = "Self-Modifying Code detected",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "MEM_ORDER",
|
|
Packit Service |
a1973e |
.pme_udesc = "Execution pipeline restart due to memory ordering conflict or memory disambiguation misprediction",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_INST_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0xc4,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Retired branch instructions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired branch instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x0
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "PRED_NOT_TAKEN",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired branch instructions that were predicted not-taken",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "MISPRED_NOT_TAKEN",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired branch instructions that were mispredicted not-taken",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "PRED_TAKEN",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired branch instructions that were predicted taken",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "MISPRED_TAKEN",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired branch instructions that were mispredicted taken",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "TAKEN",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired taken branch instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0xc
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 6
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_INST_RETIRED_MISPRED",
|
|
Packit Service |
a1973e |
.pme_code = 0x00c5,
|
|
Packit Service |
a1973e |
.pme_desc = "Retired mispredicted branch instructions (precise_event)",
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PEBS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "CYCLES_INT_MASKED",
|
|
Packit Service |
a1973e |
.pme_code = 0x1c6,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles during which interrupts are disabled"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "CYCLES_INT_PENDING_AND_MASKED",
|
|
Packit Service |
a1973e |
.pme_code = 0x2c6,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles during which interrupts are pending and disabled"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SIMD_INST_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0xc7,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Retired Streaming SIMD Extensions (SSE) packed-single instructions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "PACKED_SINGLE",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired Streaming SIMD Extensions (SSE) packed-single instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "SCALAR_SINGLE",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired Streaming SIMD Extensions (SSE) scalar-single instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "PACKED_DOUBLE",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired Streaming SIMD Extensions 2 (SSE2) packed-double instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "SCALAR_DOUBLE",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired Streaming SIMD Extensions 2 (SSE2) scalar-double instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "VECTOR",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired Streaming SIMD Extensions 2 (SSE2) vector integer instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x10
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired Streaming SIMD instructions (precise event)",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1f,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PEBS
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 6
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "HW_INT_RCV",
|
|
Packit Service |
a1973e |
.pme_code = 0xc8,
|
|
Packit Service |
a1973e |
.pme_desc = "Hardware interrupts received"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "ITLB_MISS_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0xc9,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Retired instructions that missed the ITLB"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SIMD_COMP_INST_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0xca,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Retired computational Streaming SIMD Extensions (SSE) packed-single instructions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "PACKED_SINGLE",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired computational Streaming SIMD Extensions (SSE) packed-single instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "SCALAR_SINGLE",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired computational Streaming SIMD Extensions (SSE) scalar-single instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "PACKED_DOUBLE",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired computational Streaming SIMD Extensions 2 (SSE2) packed-double instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "SCALAR_DOUBLE",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired computational Streaming SIMD Extensions 2 (SSE2) scalar-double instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "MEM_LOAD_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0xcb,
|
|
Packit Service |
a1973e |
.pme_desc = "Retired loads that miss the L1 data cache",
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PMC0,
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "L1D_MISS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired loads that miss the L1 data cache (precise event)",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PEBS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "L1D_LINE_MISS",
|
|
Packit Service |
a1973e |
.pme_udesc = "L1 data cache line missed by retired loads (precise event)",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PEBS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "L2_MISS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired loads that miss the L2 cache (precise event)",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PEBS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "L2_LINE_MISS",
|
|
Packit Service |
a1973e |
.pme_udesc = "L2 cache line missed by retired loads (precise event)",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PEBS
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "DTLB_MISS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Retired loads that miss the DTLB (precise event)",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x10,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PEBS
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 5
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "FP_MMX_TRANS",
|
|
Packit Service |
a1973e |
.pme_code = 0xcc,
|
|
Packit Service |
a1973e |
.pme_flags = PFMLIB_CORE_PEBS,
|
|
Packit Service |
a1973e |
.pme_desc = "Transitions from MMX (TM) Instructions to Floating Point Instructions",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "TO_FP",
|
|
Packit Service |
a1973e |
.pme_udesc = "Transitions from MMX (TM) Instructions to Floating Point Instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "TO_MMX",
|
|
Packit Service |
a1973e |
.pme_udesc = "Transitions from Floating Point to MMX (TM) Instructions",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SIMD_ASSIST",
|
|
Packit Service |
a1973e |
.pme_code = 0xcd,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "SIMD assists invoked"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SIMD_INSTR_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0xce,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "SIMD Instructions retired"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SIMD_SAT_INSTR_RETIRED",
|
|
Packit Service |
a1973e |
.pme_code = 0xcf,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Saturated arithmetic instructions retired"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "RAT_STALLS",
|
|
Packit Service |
a1973e |
.pme_code = 0xd2,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "ROB read port stalls cycles",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "ROB_READ_PORT",
|
|
Packit Service |
a1973e |
.pme_udesc = "ROB read port stalls cycles",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "PARTIAL_CYCLES",
|
|
Packit Service |
a1973e |
.pme_udesc = "Partial register stall cycles",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "FLAGS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Flag stall cycles",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "FPSW",
|
|
Packit Service |
a1973e |
.pme_udesc = "FPU status word stall",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "All RAT stall cycles",
|
|
Packit Service |
a1973e |
.pme_ucode = 0xf
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 5
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SEG_RENAME_STALLS",
|
|
Packit Service |
a1973e |
.pme_code = 0xd4,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Segment rename stalls - ES ",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "ES",
|
|
Packit Service |
a1973e |
.pme_udesc = "Segment rename stalls - ES ",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "DS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Segment rename stalls - DS",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "FS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Segment rename stalls - FS",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "GS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Segment rename stalls - GS",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "Any (ES/DS/FS/GS) segment rename stall",
|
|
Packit Service |
a1973e |
.pme_ucode = 0xf
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 5
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "SEG_REG_RENAMES",
|
|
Packit Service |
a1973e |
.pme_code = 0xd5,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Segment renames - ES",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "ES",
|
|
Packit Service |
a1973e |
.pme_udesc = "Segment renames - ES",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "DS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Segment renames - DS",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "FS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Segment renames - FS",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "GS",
|
|
Packit Service |
a1973e |
.pme_udesc = "Segment renames - GS",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "Any (ES/DS/FS/GS) segment rename",
|
|
Packit Service |
a1973e |
.pme_ucode = 0xf
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 5
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "RESOURCE_STALLS",
|
|
Packit Service |
a1973e |
.pme_code = 0xdc,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Cycles during which the ROB is full",
|
|
Packit Service |
a1973e |
.pme_umasks = {
|
|
Packit Service |
a1973e |
{ .pme_uname = "ROB_FULL",
|
|
Packit Service |
a1973e |
.pme_udesc = "Cycles during which the ROB is full",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "RS_FULL",
|
|
Packit Service |
a1973e |
.pme_udesc = "Cycles during which the RS is full",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x2
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "LD_ST",
|
|
Packit Service |
a1973e |
.pme_udesc = "Cycles during which the pipeline has exceeded load or store limit or waiting to commit all stores",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x4
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "FPCW",
|
|
Packit Service |
a1973e |
.pme_udesc = "Cycles stalled due to FPU control word write",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x8
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "BR_MISS_CLEAR",
|
|
Packit Service |
a1973e |
.pme_udesc = "Cycles stalled due to branch misprediction",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x10
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_uname = "ANY",
|
|
Packit Service |
a1973e |
.pme_udesc = "Resource related stalls",
|
|
Packit Service |
a1973e |
.pme_ucode = 0x1f
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
.pme_numasks = 6
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BR_INST_DECODED",
|
|
Packit Service |
a1973e |
.pme_code = 0xe0,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Branch instructions decoded"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BOGUS_BR",
|
|
Packit Service |
a1973e |
.pme_code = 0xe4,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Bogus branches"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "BACLEARS",
|
|
Packit Service |
a1973e |
.pme_code = 0xe6,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "BACLEARS asserted"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "PREF_RQSTS_UP",
|
|
Packit Service |
a1973e |
.pme_code = 0xf0,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Upward prefetches issued from the DPL"
|
|
Packit Service |
a1973e |
},
|
|
Packit Service |
a1973e |
{ .pme_name = "PREF_RQSTS_DN",
|
|
Packit Service |
a1973e |
.pme_code = 0xf8,
|
|
Packit Service |
a1973e |
.pme_flags = 0,
|
|
Packit Service |
a1973e |
.pme_desc = "Downward prefetches issued from the DPL"
|
|
Packit Service |
a1973e |
}
|
|
Packit Service |
a1973e |
};
|
|
Packit Service |
a1973e |
#define PME_CORE_UNHALTED_CORE_CYCLES 0
|
|
Packit Service |
a1973e |
#define PME_CORE_INSTRUCTIONS_RETIRED 1
|
|
Packit Service |
a1973e |
#define PME_CORE_EVENT_COUNT (sizeof(core_pe)/sizeof(pme_core_entry_t))
|