libpmcstat: compile in events based on json description
This commit is contained in:
parent
3741a56c31
commit
e98bbcf9ca
3
Makefile
3
Makefile
@ -481,7 +481,8 @@ worlds: .PHONY
|
|||||||
# existing system is.
|
# existing system is.
|
||||||
#
|
#
|
||||||
.if make(universe) || make(universe_kernels) || make(tinderbox) || make(targets)
|
.if make(universe) || make(universe_kernels) || make(tinderbox) || make(targets)
|
||||||
TARGETS?=amd64 arm arm64 i386 mips powerpc riscv sparc64
|
TARGETS?=amd64 i386 powerpc arm64
|
||||||
|
#riscv arm sparc64 mips
|
||||||
_UNIVERSE_TARGETS= ${TARGETS}
|
_UNIVERSE_TARGETS= ${TARGETS}
|
||||||
TARGET_ARCHES_arm?= arm armeb armv6 armv7
|
TARGET_ARCHES_arm?= arm armeb armv6 armv7
|
||||||
TARGET_ARCHES_arm64?= aarch64
|
TARGET_ARCHES_arm64?= aarch64
|
||||||
|
@ -2029,6 +2029,11 @@ _tcsh=bin/csh
|
|||||||
_libmagic=lib/libmagic
|
_libmagic=lib/libmagic
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
|
.if (${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \
|
||||||
|
${MACHINE_CPUARCH} == "powerpc")
|
||||||
|
_jevents=lib/libpmcstat/pmu-events
|
||||||
|
.endif
|
||||||
|
|
||||||
# kernel-toolchain skips _cleanobj, so handle cleaning up previous
|
# kernel-toolchain skips _cleanobj, so handle cleaning up previous
|
||||||
# build-tools directories if needed.
|
# build-tools directories if needed.
|
||||||
.if !defined(NO_CLEAN) && make(kernel-toolchain)
|
.if !defined(NO_CLEAN) && make(kernel-toolchain)
|
||||||
@ -2039,6 +2044,7 @@ _bt_clean= ${CLEANDIR}
|
|||||||
${_tcsh} \
|
${_tcsh} \
|
||||||
bin/sh \
|
bin/sh \
|
||||||
${LOCAL_TOOL_DIRS} \
|
${LOCAL_TOOL_DIRS} \
|
||||||
|
${_jevents} \
|
||||||
lib/ncurses/ncurses \
|
lib/ncurses/ncurses \
|
||||||
lib/ncurses/ncursesw \
|
lib/ncurses/ncursesw \
|
||||||
${_rescue} \
|
${_rescue} \
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
# $FreeBSD$
|
# $FreeBSD$
|
||||||
|
|
||||||
PACKAGE=lib${LIB}
|
PACKAGE=lib${LIB}
|
||||||
LIB= pmcstat
|
LIB= pmcstat
|
||||||
INTERNALLIB=
|
INTERNALLIB=
|
||||||
@ -10,7 +9,31 @@ SRCS= \
|
|||||||
libpmcstat_logging.c \
|
libpmcstat_logging.c \
|
||||||
libpmcstat_process.c \
|
libpmcstat_process.c \
|
||||||
libpmcstat_string.c \
|
libpmcstat_string.c \
|
||||||
libpmcstat_symbol.c
|
libpmcstat_symbol.c \
|
||||||
|
libpmcstat_pmu_util.c
|
||||||
INCS= libpmcstat.h
|
INCS= libpmcstat.h
|
||||||
|
|
||||||
|
CFLAGS+= -I${.CURDIR}
|
||||||
|
|
||||||
|
.if (${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \
|
||||||
|
${MACHINE_CPUARCH} == "powerpc")
|
||||||
|
.if ${MACHINE_CPUARCH} == "aarch64"
|
||||||
|
EVENT_ARCH="arm64"
|
||||||
|
.elif ${MACHINE_CPUARCH} == "amd64"
|
||||||
|
EVENT_ARCH="x86"
|
||||||
|
.elif ${MACHINE_CPUARCH} == "powerpc"
|
||||||
|
EVENT_ARCH="powerpc"
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.if defined(HOST_OBJTOP)
|
||||||
|
JEVENTS= ${HOST_OBJTOP}/${RELDIR}/pmu-events/jevents
|
||||||
|
.else
|
||||||
|
JEVENTS= pmu-events/jevents
|
||||||
|
.endif
|
||||||
|
|
||||||
|
libpmcstat_events.c: ${JEVENTS}
|
||||||
|
${JEVENTS} ${EVENT_ARCH} ${.CURDIR}/pmu-events/arch libpmcstat_events.c
|
||||||
|
SRCS+= libpmcstat_events.c
|
||||||
|
.endif
|
||||||
|
|
||||||
.include <bsd.lib.mk>
|
.include <bsd.lib.mk>
|
||||||
|
@ -53,6 +53,7 @@
|
|||||||
|
|
||||||
#define PMCSTAT_NHASH 256
|
#define PMCSTAT_NHASH 256
|
||||||
#define PMCSTAT_HASH_MASK 0xFF
|
#define PMCSTAT_HASH_MASK 0xFF
|
||||||
|
#define DEFAULT_SAMPLE_COUNT 65536
|
||||||
|
|
||||||
typedef const void *pmcstat_interned_string;
|
typedef const void *pmcstat_interned_string;
|
||||||
struct pmc_plugins;
|
struct pmc_plugins;
|
||||||
@ -380,6 +381,9 @@ int pmcstat_analyze_log(struct pmcstat_args *args,
|
|||||||
|
|
||||||
int pmcstat_open_log(const char *_p, int _mode);
|
int pmcstat_open_log(const char *_p, int _mode);
|
||||||
int pmcstat_close_log(struct pmcstat_args *args);
|
int pmcstat_close_log(struct pmcstat_args *args);
|
||||||
|
|
||||||
|
uint64_t pmcstat_pmu_sample_rate_get(const char *);
|
||||||
|
|
||||||
__END_DECLS
|
__END_DECLS
|
||||||
|
|
||||||
#endif /* !_LIBPMCSTAT_H_ */
|
#endif /* !_LIBPMCSTAT_H_ */
|
||||||
|
128
lib/libpmcstat/libpmcstat_pmu_util.c
Normal file
128
lib/libpmcstat/libpmcstat_pmu_util.c
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
/*-
|
||||||
|
* SPDX-License-Identifier: BSD-2-Clause-FreeBSD
|
||||||
|
*
|
||||||
|
* Copyright (c) 2018, Matthew Macy
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
* 1. Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
* 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in the
|
||||||
|
* documentation and/or other materials provided with the distribution.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||||
|
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||||
|
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
|
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||||
|
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||||
|
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||||
|
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
|
* SUCH DAMAGE.
|
||||||
|
*
|
||||||
|
* $FreeBSD$
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/errno.h>
|
||||||
|
#include <sys/sysctl.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <limits.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <pmc.h>
|
||||||
|
#include <pmclog.h>
|
||||||
|
#include <libpmcstat.h>
|
||||||
|
#include "pmu-events/pmu-events.h"
|
||||||
|
|
||||||
|
#if defined(__amd64__)
|
||||||
|
struct pmu_event_desc {
|
||||||
|
uint32_t ped_umask;
|
||||||
|
uint32_t ped_event;
|
||||||
|
uint64_t ped_period;
|
||||||
|
};
|
||||||
|
|
||||||
|
static const struct pmu_events_map *
|
||||||
|
pmu_events_map_get(void)
|
||||||
|
{
|
||||||
|
size_t s;
|
||||||
|
char buf[64];
|
||||||
|
const struct pmu_events_map *pme;
|
||||||
|
|
||||||
|
if (sysctlbyname("kern.hwpmc.cpuid", (void *)NULL, &s,
|
||||||
|
(void *)NULL, 0) == -1)
|
||||||
|
return (NULL);
|
||||||
|
if (sysctlbyname("kern.hwpmc.cpuid", buf, &s,
|
||||||
|
(void *)NULL, 0) == -1)
|
||||||
|
return (NULL);
|
||||||
|
for (pme = pmu_events_map; pme->cpuid != NULL; pme++)
|
||||||
|
if (strcmp(buf, pme->cpuid) == 0)
|
||||||
|
return (pme);
|
||||||
|
return (NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
static const struct pmu_event *
|
||||||
|
pmu_event_get(const char *event_name)
|
||||||
|
{
|
||||||
|
const struct pmu_events_map *pme;
|
||||||
|
const struct pmu_event *pe;
|
||||||
|
|
||||||
|
if ((pme = pmu_events_map_get()) == NULL)
|
||||||
|
return (NULL);
|
||||||
|
for (pe = pme->table; pe->name != NULL; pe++)
|
||||||
|
if (strcmp(pe->name, event_name) == 0)
|
||||||
|
return (pe);
|
||||||
|
return (NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
static int
|
||||||
|
pmu_parse_event(struct pmu_event_desc *ped, const char *eventin)
|
||||||
|
{
|
||||||
|
char *event;
|
||||||
|
char *kvp, *key, *value;
|
||||||
|
|
||||||
|
if ((event = strdup(eventin)) == NULL)
|
||||||
|
return (ENOMEM);
|
||||||
|
bzero(ped, sizeof(*ped));
|
||||||
|
while ((kvp = strsep(&event, ",")) != NULL) {
|
||||||
|
key = strsep(&kvp, "=");
|
||||||
|
if (key == NULL)
|
||||||
|
abort();
|
||||||
|
value = kvp;
|
||||||
|
if (strcmp(key, "umask") == 0)
|
||||||
|
ped->ped_umask = strtol(value, NULL, 16);
|
||||||
|
if (strcmp(key, "event") == 0)
|
||||||
|
ped->ped_event = strtol(value, NULL, 16);
|
||||||
|
if (strcmp(key, "period") == 0)
|
||||||
|
ped->ped_umask = strtol(value, NULL, 10);
|
||||||
|
}
|
||||||
|
free(event);
|
||||||
|
return (0);
|
||||||
|
}
|
||||||
|
|
||||||
|
uint64_t
|
||||||
|
pmcstat_pmu_sample_rate_get(const char *event_name)
|
||||||
|
{
|
||||||
|
const struct pmu_event *pe;
|
||||||
|
struct pmu_event_desc ped;
|
||||||
|
|
||||||
|
if ((pe = pmu_event_get(event_name)) == NULL)
|
||||||
|
return (DEFAULT_SAMPLE_COUNT);
|
||||||
|
if (pe->alias && (pe = pmu_event_get(pe->alias)) == NULL)
|
||||||
|
return (DEFAULT_SAMPLE_COUNT);
|
||||||
|
if (pe->event == NULL)
|
||||||
|
return (DEFAULT_SAMPLE_COUNT);
|
||||||
|
if (pmu_parse_event(&ped, pe->event))
|
||||||
|
return (DEFAULT_SAMPLE_COUNT);
|
||||||
|
return (ped.ped_period);
|
||||||
|
}
|
||||||
|
|
||||||
|
#else
|
||||||
|
uint64_t pmcstat_pmu_sample_rate_get(void) { return (DEFAULT_SAMPLE_COUNT); }
|
||||||
|
#endif
|
9
lib/libpmcstat/pmu-events/Makefile
Normal file
9
lib/libpmcstat/pmu-events/Makefile
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# $FreeBSD$
|
||||||
|
|
||||||
|
PROG=jevents
|
||||||
|
SRCS=jevents.c jsmn.c json.c
|
||||||
|
CFLAGS+= -Wno-cast-qual
|
||||||
|
.PATH: ${.CURDIR}
|
||||||
|
build-tools: jevents
|
||||||
|
MAN=
|
||||||
|
.include <bsd.prog.mk>
|
152
lib/libpmcstat/pmu-events/README
Normal file
152
lib/libpmcstat/pmu-events/README
Normal file
@ -0,0 +1,152 @@
|
|||||||
|
|
||||||
|
The contents of this directory allow users to specify PMU events in their
|
||||||
|
CPUs by their symbolic names rather than raw event codes (see example below).
|
||||||
|
|
||||||
|
The main program in this directory, is the 'jevents', which is built and
|
||||||
|
executed _BEFORE_ the perf binary itself is built.
|
||||||
|
|
||||||
|
The 'jevents' program tries to locate and process JSON files in the directory
|
||||||
|
tree tools/perf/pmu-events/arch/foo.
|
||||||
|
|
||||||
|
- Regular files with '.json' extension in the name are assumed to be
|
||||||
|
JSON files, each of which describes a set of PMU events.
|
||||||
|
|
||||||
|
- The CSV file that maps a specific CPU to its set of PMU events is to
|
||||||
|
be named 'mapfile.csv' (see below for mapfile format).
|
||||||
|
|
||||||
|
- Directories are traversed, but all other files are ignored.
|
||||||
|
|
||||||
|
- To reduce JSON event duplication per architecture, platform JSONs may
|
||||||
|
use "ArchStdEvent" keyword to dereference an "Architecture standard
|
||||||
|
events", defined in architecture standard JSONs.
|
||||||
|
Architecture standard JSONs must be located in the architecture root
|
||||||
|
folder. Matching is based on the "EventName" field.
|
||||||
|
|
||||||
|
The PMU events supported by a CPU model are expected to grouped into topics
|
||||||
|
such as Pipelining, Cache, Memory, Floating-point etc. All events for a topic
|
||||||
|
should be placed in a separate JSON file - where the file name identifies
|
||||||
|
the topic. Eg: "Floating-point.json".
|
||||||
|
|
||||||
|
All the topic JSON files for a CPU model/family should be in a separate
|
||||||
|
sub directory. Thus for the Silvermont X86 CPU:
|
||||||
|
|
||||||
|
$ ls tools/perf/pmu-events/arch/x86/Silvermont_core
|
||||||
|
Cache.json Memory.json Virtual-Memory.json
|
||||||
|
Frontend.json Pipeline.json
|
||||||
|
|
||||||
|
The JSONs folder for a CPU model/family may be placed in the root arch
|
||||||
|
folder, or may be placed in a vendor sub-folder under the arch folder
|
||||||
|
for instances where the arch and vendor are not the same.
|
||||||
|
|
||||||
|
Using the JSON files and the mapfile, 'jevents' generates the C source file,
|
||||||
|
'pmu-events.c', which encodes the two sets of tables:
|
||||||
|
|
||||||
|
- Set of 'PMU events tables' for all known CPUs in the architecture,
|
||||||
|
(one table like the following, per JSON file; table name 'pme_power8'
|
||||||
|
is derived from JSON file name, 'power8.json').
|
||||||
|
|
||||||
|
struct pmu_event pme_power8[] = {
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
{
|
||||||
|
.name = "pm_1plus_ppc_cmpl",
|
||||||
|
.event = "event=0x100f2",
|
||||||
|
.desc = "1 or more ppc insts finished,",
|
||||||
|
},
|
||||||
|
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
- A 'mapping table' that maps each CPU of the architecture, to its
|
||||||
|
'PMU events table'
|
||||||
|
|
||||||
|
struct pmu_events_map pmu_events_map[] = {
|
||||||
|
{
|
||||||
|
.cpuid = "004b0000",
|
||||||
|
.version = "1",
|
||||||
|
.type = "core",
|
||||||
|
.table = pme_power8
|
||||||
|
},
|
||||||
|
...
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
After the 'pmu-events.c' is generated, it is compiled and the resulting
|
||||||
|
'pmu-events.o' is added to 'libperf.a' which is then used to build perf.
|
||||||
|
|
||||||
|
NOTES:
|
||||||
|
1. Several CPUs can support same set of events and hence use a common
|
||||||
|
JSON file. Hence several entries in the pmu_events_map[] could map
|
||||||
|
to a single 'PMU events table'.
|
||||||
|
|
||||||
|
2. The 'pmu-events.h' has an extern declaration for the mapping table
|
||||||
|
and the generated 'pmu-events.c' defines this table.
|
||||||
|
|
||||||
|
3. _All_ known CPU tables for architecture are included in the perf
|
||||||
|
binary.
|
||||||
|
|
||||||
|
At run time, perf determines the actual CPU it is running on, finds the
|
||||||
|
matching events table and builds aliases for those events. This allows
|
||||||
|
users to specify events by their name:
|
||||||
|
|
||||||
|
$ perf stat -e pm_1plus_ppc_cmpl sleep 1
|
||||||
|
|
||||||
|
where 'pm_1plus_ppc_cmpl' is a Power8 PMU event.
|
||||||
|
|
||||||
|
However some errors in processing may cause the perf build to fail.
|
||||||
|
|
||||||
|
Mapfile format
|
||||||
|
===============
|
||||||
|
|
||||||
|
The mapfile enables multiple CPU models to share a single set of PMU events.
|
||||||
|
It is required even if such mapping is 1:1.
|
||||||
|
|
||||||
|
The mapfile.csv format is expected to be:
|
||||||
|
|
||||||
|
Header line
|
||||||
|
CPUID,Version,Dir/path/name,Type
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
Comma:
|
||||||
|
is the required field delimiter (i.e other fields cannot
|
||||||
|
have commas within them).
|
||||||
|
|
||||||
|
Comments:
|
||||||
|
Lines in which the first character is either '\n' or '#'
|
||||||
|
are ignored.
|
||||||
|
|
||||||
|
Header line
|
||||||
|
The header line is the first line in the file, which is
|
||||||
|
always _IGNORED_. It can empty.
|
||||||
|
|
||||||
|
CPUID:
|
||||||
|
CPUID is an arch-specific char string, that can be used
|
||||||
|
to identify CPU (and associate it with a set of PMU events
|
||||||
|
it supports). Multiple CPUIDS can point to the same
|
||||||
|
File/path/name.json.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
CPUID == 'GenuineIntel-6-2E' (on x86).
|
||||||
|
CPUID == '004b0100' (PVR value in Powerpc)
|
||||||
|
Version:
|
||||||
|
is the Version of the mapfile.
|
||||||
|
|
||||||
|
Dir/path/name:
|
||||||
|
is the pathname to the directory containing the CPU's JSON
|
||||||
|
files, relative to the directory containing the mapfile.csv
|
||||||
|
|
||||||
|
Type:
|
||||||
|
indicates whether the events or "core" or "uncore" events.
|
||||||
|
|
||||||
|
|
||||||
|
Eg:
|
||||||
|
|
||||||
|
$ grep Silvermont tools/perf/pmu-events/arch/x86/mapfile.csv
|
||||||
|
GenuineIntel-6-37,V13,Silvermont_core,core
|
||||||
|
GenuineIntel-6-4D,V13,Silvermont_core,core
|
||||||
|
GenuineIntel-6-4C,V13,Silvermont_core,core
|
||||||
|
|
||||||
|
i.e the three CPU models use the JSON files (i.e PMU events) listed
|
||||||
|
in the directory 'tools/perf/pmu-events/arch/x86/Silvermont_core'.
|
@ -0,0 +1,25 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "BR_INDIRECT_SPEC",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC9",
|
||||||
|
"EventName": "BR_COND",
|
||||||
|
"BriefDescription": "Conditional branch executed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"EventName": "BR_INDIRECT_MISPRED",
|
||||||
|
"BriefDescription": "Indirect branch mispredicted"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCB",
|
||||||
|
"EventName": "BR_INDIRECT_MISPRED_ADDR",
|
||||||
|
"BriefDescription": "Indirect branch mispredicted because of address miscompare"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCC",
|
||||||
|
"EventName": "BR_COND_MISPRED",
|
||||||
|
"BriefDescription": "Conditional branch mispredicted"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,8 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "BUS_ACCESS_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "BUS_ACCESS_WR",
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,27 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0xC2",
|
||||||
|
"EventName": "PREFETCH_LINEFILL",
|
||||||
|
"BriefDescription": "Linefill because of prefetch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC3",
|
||||||
|
"EventName": "PREFETCH_LINEFILL_DROP",
|
||||||
|
"BriefDescription": "Instruction Cache Throttle occurred"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"EventName": "READ_ALLOC_ENTER",
|
||||||
|
"BriefDescription": "Entering read allocate mode"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC5",
|
||||||
|
"EventName": "READ_ALLOC",
|
||||||
|
"BriefDescription": "Read allocate mode"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC8",
|
||||||
|
"EventName": "EXT_SNOOP",
|
||||||
|
"BriefDescription": "SCU Snooped data from another CPU for this CPU"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,12 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0xC0",
|
||||||
|
"EventName": "EXT_MEM_REQ",
|
||||||
|
"BriefDescription": "External memory request"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC1",
|
||||||
|
"EventName": "EXT_MEM_REQ_NC",
|
||||||
|
"BriefDescription": "Non-cacheable external memory request"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,28 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "EXC_IRQ",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "EXC_FIQ",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC6",
|
||||||
|
"EventName": "PRE_DECODE_ERR",
|
||||||
|
"BriefDescription": "Pre-decode error"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"EventName": "L1I_CACHE_ERR",
|
||||||
|
"BriefDescription": "L1 Instruction Cache (data or tag) memory error"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"EventName": "L1D_CACHE_ERR",
|
||||||
|
"BriefDescription": "L1 Data Cache (data, tag or dirty) memory error, correctable or non-correctable"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD2",
|
||||||
|
"EventName": "TLB_ERR",
|
||||||
|
"BriefDescription": "TLB memory error"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,52 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"EventName": "STALL_SB_FULL",
|
||||||
|
"BriefDescription": "Data Write operation that stalls the pipeline because the store buffer is full"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE0",
|
||||||
|
"EventName": "OTHER_IQ_DEP_STALL",
|
||||||
|
"BriefDescription": "Cycles that the DPU IQ is empty and that is not because of a recent micro-TLB miss, instruction cache miss or pre-decode error"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE1",
|
||||||
|
"EventName": "IC_DEP_STALL",
|
||||||
|
"BriefDescription": "Cycles the DPU IQ is empty and there is an instruction cache miss being processed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE2",
|
||||||
|
"EventName": "IUTLB_DEP_STALL",
|
||||||
|
"BriefDescription": "Cycles the DPU IQ is empty and there is an instruction micro-TLB miss being processed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE3",
|
||||||
|
"EventName": "DECODE_DEP_STALL",
|
||||||
|
"BriefDescription": "Cycles the DPU IQ is empty and there is a pre-decode error being processed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE4",
|
||||||
|
"EventName": "OTHER_INTERLOCK_STALL",
|
||||||
|
"BriefDescription": "Cycles there is an interlock other than Advanced SIMD/Floating-point instructions or load/store instruction"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE5",
|
||||||
|
"EventName": "AGU_DEP_STALL",
|
||||||
|
"BriefDescription": "Cycles there is an interlock for a load/store instruction waiting for data to calculate the address in the AGU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE6",
|
||||||
|
"EventName": "SIMD_DEP_STALL",
|
||||||
|
"BriefDescription": "Cycles there is an interlock for an Advanced SIMD/Floating-point operation."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE7",
|
||||||
|
"EventName": "LD_DEP_STALL",
|
||||||
|
"BriefDescription": "Cycles there is a stall in the Wr stage because of a load miss"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE8",
|
||||||
|
"EventName": "ST_DEP_STALL",
|
||||||
|
"BriefDescription": "Cycles there is a stall in the Wr stage because of a store"
|
||||||
|
}
|
||||||
|
]
|
452
lib/libpmcstat/pmu-events/arch/arm64/armv8-recommended.json
Normal file
452
lib/libpmcstat/pmu-events/arch/arm64/armv8-recommended.json
Normal file
@ -0,0 +1,452 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data cache access, read",
|
||||||
|
"EventCode": "0x40",
|
||||||
|
"EventName": "L1D_CACHE_RD",
|
||||||
|
"BriefDescription": "L1D cache access, read"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data cache access, write",
|
||||||
|
"EventCode": "0x41",
|
||||||
|
"EventName": "L1D_CACHE_WR",
|
||||||
|
"BriefDescription": "L1D cache access, write"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data cache refill, read",
|
||||||
|
"EventCode": "0x42",
|
||||||
|
"EventName": "L1D_CACHE_REFILL_RD",
|
||||||
|
"BriefDescription": "L1D cache refill, read"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data cache refill, write",
|
||||||
|
"EventCode": "0x43",
|
||||||
|
"EventName": "L1D_CACHE_REFILL_WR",
|
||||||
|
"BriefDescription": "L1D cache refill, write"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data cache refill, inner",
|
||||||
|
"EventCode": "0x44",
|
||||||
|
"EventName": "L1D_CACHE_REFILL_INNER",
|
||||||
|
"BriefDescription": "L1D cache refill, inner"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data cache refill, outer",
|
||||||
|
"EventCode": "0x45",
|
||||||
|
"EventName": "L1D_CACHE_REFILL_OUTER",
|
||||||
|
"BriefDescription": "L1D cache refill, outer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data cache Write-Back, victim",
|
||||||
|
"EventCode": "0x46",
|
||||||
|
"EventName": "L1D_CACHE_WB_VICTIM",
|
||||||
|
"BriefDescription": "L1D cache Write-Back, victim"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Level 1 data cache Write-Back, cleaning and coherency",
|
||||||
|
"EventCode": "0x47",
|
||||||
|
"EventName": "L1D_CACHE_WB_CLEAN",
|
||||||
|
"BriefDescription": "L1D cache Write-Back, cleaning and coherency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data cache invalidate",
|
||||||
|
"EventCode": "0x48",
|
||||||
|
"EventName": "L1D_CACHE_INVAL",
|
||||||
|
"BriefDescription": "L1D cache invalidate"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data TLB refill, read",
|
||||||
|
"EventCode": "0x4C",
|
||||||
|
"EventName": "L1D_TLB_REFILL_RD",
|
||||||
|
"BriefDescription": "L1D tlb refill, read"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data TLB refill, write",
|
||||||
|
"EventCode": "0x4D",
|
||||||
|
"EventName": "L1D_TLB_REFILL_WR",
|
||||||
|
"BriefDescription": "L1D tlb refill, write"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data or unified TLB access, read",
|
||||||
|
"EventCode": "0x4E",
|
||||||
|
"EventName": "L1D_TLB_RD",
|
||||||
|
"BriefDescription": "L1D tlb access, read"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 1 data or unified TLB access, write",
|
||||||
|
"EventCode": "0x4F",
|
||||||
|
"EventName": "L1D_TLB_WR",
|
||||||
|
"BriefDescription": "L1D tlb access, write"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 2 data cache access, read",
|
||||||
|
"EventCode": "0x50",
|
||||||
|
"EventName": "L2D_CACHE_RD",
|
||||||
|
"BriefDescription": "L2D cache access, read"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 2 data cache access, write",
|
||||||
|
"EventCode": "0x51",
|
||||||
|
"EventName": "L2D_CACHE_WR",
|
||||||
|
"BriefDescription": "L2D cache access, write"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 2 data cache refill, read",
|
||||||
|
"EventCode": "0x52",
|
||||||
|
"EventName": "L2D_CACHE_REFILL_RD",
|
||||||
|
"BriefDescription": "L2D cache refill, read"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 2 data cache refill, write",
|
||||||
|
"EventCode": "0x53",
|
||||||
|
"EventName": "L2D_CACHE_REFILL_WR",
|
||||||
|
"BriefDescription": "L2D cache refill, write"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 2 data cache Write-Back, victim",
|
||||||
|
"EventCode": "0x56",
|
||||||
|
"EventName": "L2D_CACHE_WB_VICTIM",
|
||||||
|
"BriefDescription": "L2D cache Write-Back, victim"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Level 2 data cache Write-Back, cleaning and coherency",
|
||||||
|
"EventCode": "0x57",
|
||||||
|
"EventName": "L2D_CACHE_WB_CLEAN",
|
||||||
|
"BriefDescription": "L2D cache Write-Back, cleaning and coherency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 2 data cache invalidate",
|
||||||
|
"EventCode": "0x58",
|
||||||
|
"EventName": "L2D_CACHE_INVAL",
|
||||||
|
"BriefDescription": "L2D cache invalidate"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 2 data or unified TLB refill, read",
|
||||||
|
"EventCode": "0x5c",
|
||||||
|
"EventName": "L2D_TLB_REFILL_RD",
|
||||||
|
"BriefDescription": "L2D cache refill, read"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 2 data or unified TLB refill, write",
|
||||||
|
"EventCode": "0x5d",
|
||||||
|
"EventName": "L2D_TLB_REFILL_WR",
|
||||||
|
"BriefDescription": "L2D cache refill, write"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 2 data or unified TLB access, read",
|
||||||
|
"EventCode": "0x5e",
|
||||||
|
"EventName": "L2D_TLB_RD",
|
||||||
|
"BriefDescription": "L2D cache access, read"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 2 data or unified TLB access, write",
|
||||||
|
"EventCode": "0x5f",
|
||||||
|
"EventName": "L2D_TLB_WR",
|
||||||
|
"BriefDescription": "L2D cache access, write"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Bus access read",
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"EventName": "BUS_ACCESS_RD",
|
||||||
|
"BriefDescription": "Bus access read"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Bus access write",
|
||||||
|
"EventCode": "0x61",
|
||||||
|
"EventName": "BUS_ACCESS_WR",
|
||||||
|
"BriefDescription": "Bus access write"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Bus access, Normal, Cacheable, Shareable",
|
||||||
|
"EventCode": "0x62",
|
||||||
|
"EventName": "BUS_ACCESS_SHARED",
|
||||||
|
"BriefDescription": "Bus access, Normal, Cacheable, Shareable"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Bus access, not Normal, Cacheable, Shareable",
|
||||||
|
"EventCode": "0x63",
|
||||||
|
"EventName": "BUS_ACCESS_NOT_SHARED",
|
||||||
|
"BriefDescription": "Bus access, not Normal, Cacheable, Shareable"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Bus access, Normal",
|
||||||
|
"EventCode": "0x64",
|
||||||
|
"EventName": "BUS_ACCESS_NORMAL",
|
||||||
|
"BriefDescription": "Bus access, Normal"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Bus access, peripheral",
|
||||||
|
"EventCode": "0x65",
|
||||||
|
"EventName": "BUS_ACCESS_PERIPH",
|
||||||
|
"BriefDescription": "Bus access, peripheral"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Data memory access, read",
|
||||||
|
"EventCode": "0x66",
|
||||||
|
"EventName": "MEM_ACCESS_RD",
|
||||||
|
"BriefDescription": "Data memory access, read"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Data memory access, write",
|
||||||
|
"EventCode": "0x67",
|
||||||
|
"EventName": "MEM_ACCESS_WR",
|
||||||
|
"BriefDescription": "Data memory access, write"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Unaligned access, read",
|
||||||
|
"EventCode": "0x68",
|
||||||
|
"EventName": "UNALIGNED_LD_SPEC",
|
||||||
|
"BriefDescription": "Unaligned access, read"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Unaligned access, write",
|
||||||
|
"EventCode": "0x69",
|
||||||
|
"EventName": "UNALIGNED_ST_SPEC",
|
||||||
|
"BriefDescription": "Unaligned access, write"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Unaligned access",
|
||||||
|
"EventCode": "0x6a",
|
||||||
|
"EventName": "UNALIGNED_LDST_SPEC",
|
||||||
|
"BriefDescription": "Unaligned access"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exclusive operation speculatively executed, LDREX or LDX",
|
||||||
|
"EventCode": "0x6c",
|
||||||
|
"EventName": "LDREX_SPEC",
|
||||||
|
"BriefDescription": "Exclusive operation speculatively executed, LDREX or LDX"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exclusive operation speculatively executed, STREX or STX pass",
|
||||||
|
"EventCode": "0x6d",
|
||||||
|
"EventName": "STREX_PASS_SPEC",
|
||||||
|
"BriefDescription": "Exclusive operation speculatively executed, STREX or STX pass"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exclusive operation speculatively executed, STREX or STX fail",
|
||||||
|
"EventCode": "0x6e",
|
||||||
|
"EventName": "STREX_FAIL_SPEC",
|
||||||
|
"BriefDescription": "Exclusive operation speculatively executed, STREX or STX fail"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exclusive operation speculatively executed, STREX or STX",
|
||||||
|
"EventCode": "0x6f",
|
||||||
|
"EventName": "STREX_SPEC",
|
||||||
|
"BriefDescription": "Exclusive operation speculatively executed, STREX or STX"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Operation speculatively executed, load",
|
||||||
|
"EventCode": "0x70",
|
||||||
|
"EventName": "LD_SPEC",
|
||||||
|
"BriefDescription": "Operation speculatively executed, load"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Operation speculatively executed, store"
|
||||||
|
"EventCode": "0x71",
|
||||||
|
"EventName": "ST_SPEC",
|
||||||
|
"BriefDescription": "Operation speculatively executed, store"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Operation speculatively executed, load or store",
|
||||||
|
"EventCode": "0x72",
|
||||||
|
"EventName": "LDST_SPEC",
|
||||||
|
"BriefDescription": "Operation speculatively executed, load or store"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Operation speculatively executed, integer data processing",
|
||||||
|
"EventCode": "0x73",
|
||||||
|
"EventName": "DP_SPEC",
|
||||||
|
"BriefDescription": "Operation speculatively executed, integer data processing"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Operation speculatively executed, Advanced SIMD instruction",
|
||||||
|
"EventCode": "0x74",
|
||||||
|
"EventName": "ASE_SPEC",
|
||||||
|
"BriefDescription": "Operation speculatively executed, Advanced SIMD instruction",
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Operation speculatively executed, floating-point instruction",
|
||||||
|
"EventCode": "0x75",
|
||||||
|
"EventName": "VFP_SPEC",
|
||||||
|
"BriefDescription": "Operation speculatively executed, floating-point instruction"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Operation speculatively executed, software change of the PC",
|
||||||
|
"EventCode": "0x76",
|
||||||
|
"EventName": "PC_WRITE_SPEC",
|
||||||
|
"BriefDescription": "Operation speculatively executed, software change of the PC"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Operation speculatively executed, Cryptographic instruction",
|
||||||
|
"EventCode": "0x77",
|
||||||
|
"EventName": "CRYPTO_SPEC",
|
||||||
|
"BriefDescription": "Operation speculatively executed, Cryptographic instruction"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Branch speculatively executed, immediate branch"
|
||||||
|
"EventCode": "0x78",
|
||||||
|
"EventName": "BR_IMMED_SPEC",
|
||||||
|
"BriefDescription": "Branch speculatively executed, immediate branch"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Branch speculatively executed, procedure return"
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"EventName": "BR_RETURN_SPEC",
|
||||||
|
"BriefDescription": "Branch speculatively executed, procedure return"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Branch speculatively executed, indirect branch"
|
||||||
|
"EventCode": "0x7a",
|
||||||
|
"EventName": "BR_INDIRECT_SPEC",
|
||||||
|
"BriefDescription": "Branch speculatively executed, indirect branch"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Barrier speculatively executed, ISB"
|
||||||
|
"EventCode": "0x7c",
|
||||||
|
"EventName": "ISB_SPEC",
|
||||||
|
"BriefDescription": "Barrier speculatively executed, ISB"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Barrier speculatively executed, DSB"
|
||||||
|
"EventCode": "0x7d",
|
||||||
|
"EventName": "DSB_SPEC",
|
||||||
|
"BriefDescription": "Barrier speculatively executed, DSB"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Barrier speculatively executed, DMB"
|
||||||
|
"EventCode": "0x7e",
|
||||||
|
"EventName": "DMB_SPEC",
|
||||||
|
"BriefDescription": "Barrier speculatively executed, DMB"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, Other synchronous"
|
||||||
|
"EventCode": "0x81",
|
||||||
|
"EventName": "EXC_UNDEF",
|
||||||
|
"BriefDescription": "Exception taken, Other synchronous"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, Supervisor Call"
|
||||||
|
"EventCode": "0x82",
|
||||||
|
"EventName": "EXC_SVC",
|
||||||
|
"BriefDescription": "Exception taken, Supervisor Call"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, Instruction Abort"
|
||||||
|
"EventCode": "0x83",
|
||||||
|
"EventName": "EXC_PABORT",
|
||||||
|
"BriefDescription": "Exception taken, Instruction Abort"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, Data Abort and SError"
|
||||||
|
"EventCode": "0x84",
|
||||||
|
"EventName": "EXC_DABORT",
|
||||||
|
"BriefDescription": "Exception taken, Data Abort and SError"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, IRQ"
|
||||||
|
"EventCode": "0x86",
|
||||||
|
"EventName": "EXC_IRQ",
|
||||||
|
"BriefDescription": "Exception taken, IRQ"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, FIQ"
|
||||||
|
"EventCode": "0x87",
|
||||||
|
"EventName": "EXC_FIQ",
|
||||||
|
"BriefDescription": "Exception taken, FIQ"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, Secure Monitor Call"
|
||||||
|
"EventCode": "0x88",
|
||||||
|
"EventName": "EXC_SMC",
|
||||||
|
"BriefDescription": "Exception taken, Secure Monitor Call"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, Hypervisor Call"
|
||||||
|
"EventCode": "0x8a",
|
||||||
|
"EventName": "EXC_HVC",
|
||||||
|
"BriefDescription": "Exception taken, Hypervisor Call"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, Instruction Abort not taken locally"
|
||||||
|
"EventCode": "0x8b",
|
||||||
|
"EventName": "EXC_TRAP_PABORT",
|
||||||
|
"BriefDescription": "Exception taken, Instruction Abort not taken locally"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, Data Abort or SError not taken locally"
|
||||||
|
"EventCode": "0x8c",
|
||||||
|
"EventName": "EXC_TRAP_DABORT",
|
||||||
|
"BriefDescription": "Exception taken, Data Abort or SError not taken locally"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, Other traps not taken locally"
|
||||||
|
"EventCode": "0x8d",
|
||||||
|
"EventName": "EXC_TRAP_OTHER",
|
||||||
|
"BriefDescription": "Exception taken, Other traps not taken locally"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, IRQ not taken locally"
|
||||||
|
"EventCode": "0x8e",
|
||||||
|
"EventName": "EXC_TRAP_IRQ",
|
||||||
|
"BriefDescription": "Exception taken, IRQ not taken locally"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Exception taken, FIQ not taken locally"
|
||||||
|
"EventCode": "0x8f",
|
||||||
|
"EventName": "EXC_TRAP_FIQ",
|
||||||
|
"BriefDescription": "Exception taken, FIQ not taken locally"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Release consistency operation speculatively executed, Load-Acquire"
|
||||||
|
"EventCode": "0x90",
|
||||||
|
"EventName": "RC_LD_SPEC",
|
||||||
|
"BriefDescription": "Release consistency operation speculatively executed, Load-Acquire"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Release consistency operation speculatively executed, Store-Release"
|
||||||
|
"EventCode": "0x91",
|
||||||
|
"EventName": "RC_ST_SPEC",
|
||||||
|
"BriefDescription": "Release consistency operation speculatively executed, Store-Release"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 3 data or unified cache access, read"
|
||||||
|
"EventCode": "0xa0",
|
||||||
|
"EventName": "L3D_CACHE_RD",
|
||||||
|
"BriefDescription": "Attributable Level 3 data or unified cache access, read"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 3 data or unified cache access, write"
|
||||||
|
"EventCode": "0xa1",
|
||||||
|
"EventName": "L3D_CACHE_WR",
|
||||||
|
"BriefDescription": "Attributable Level 3 data or unified cache access, write"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 3 data or unified cache refill, read"
|
||||||
|
"EventCode": "0xa2",
|
||||||
|
"EventName": "L3D_CACHE_REFILL_RD",
|
||||||
|
"BriefDescription": "Attributable Level 3 data or unified cache refill, read"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 3 data or unified cache refill, write"
|
||||||
|
"EventCode": "0xa3",
|
||||||
|
"EventName": "L3D_CACHE_REFILL_WR",
|
||||||
|
"BriefDescription": "Attributable Level 3 data or unified cache refill, write"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 3 data or unified cache Write-Back, victim"
|
||||||
|
"EventCode": "0xa6",
|
||||||
|
"EventName": "L3D_CACHE_WB_VICTIM",
|
||||||
|
"BriefDescription": "Attributable Level 3 data or unified cache Write-Back, victim"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 3 data or unified cache Write-Back, cache clean"
|
||||||
|
"EventCode": "0xa7",
|
||||||
|
"EventName": "L3D_CACHE_WB_CLEAN",
|
||||||
|
"BriefDescription": "Attributable Level 3 data or unified cache Write-Back, cache clean"
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"PublicDescription": "Attributable Level 3 data or unified cache access, invalidate"
|
||||||
|
"EventCode": "0xa8",
|
||||||
|
"EventName": "L3D_CACHE_INVAL",
|
||||||
|
"BriefDescription": "Attributable Level 3 data or unified cache access, invalidate"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,32 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_CACHE_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_CACHE_WR",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_CACHE_REFILL_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_CACHE_REFILL_WR",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_TLB_REFILL_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_TLB_REFILL_WR",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_TLB_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_TLB_WR",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "BUS_ACCESS_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "BUS_ACCESS_WR",
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,122 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_CACHE_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_CACHE_WR",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_CACHE_REFILL_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_CACHE_REFILL_WR",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_CACHE_WB_VICTIM",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_CACHE_WB_CLEAN",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_CACHE_INVAL",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_TLB_REFILL_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_TLB_REFILL_WR",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_TLB_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L1D_TLB_WR",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L2D_CACHE_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L2D_CACHE_WR",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L2D_CACHE_REFILL_RD",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L2D_CACHE_REFILL_WR",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L2D_CACHE_WB_VICTIM",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L2D_CACHE_WB_CLEAN",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "L2D_CACHE_INVAL",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Level 1 instruction cache prefetch access count",
|
||||||
|
"EventCode": "0x102e",
|
||||||
|
"EventName": "L1I_CACHE_PRF",
|
||||||
|
"BriefDescription": "L1I cache prefetch access count",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Level 1 instruction cache miss due to prefetch access count",
|
||||||
|
"EventCode": "0x102f",
|
||||||
|
"EventName": "L1I_CACHE_PRF_REFILL",
|
||||||
|
"BriefDescription": "L1I cache miss due to prefetch access count",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Instruction queue is empty",
|
||||||
|
"EventCode": "0x1043",
|
||||||
|
"EventName": "IQ_IS_EMPTY",
|
||||||
|
"BriefDescription": "Instruction queue is empty",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Instruction fetch stall cycles",
|
||||||
|
"EventCode": "0x1044",
|
||||||
|
"EventName": "IF_IS_STALL",
|
||||||
|
"BriefDescription": "Instruction fetch stall cycles",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Instructions can receive, but not send",
|
||||||
|
"EventCode": "0x2014",
|
||||||
|
"EventName": "FETCH_BUBBLE",
|
||||||
|
"BriefDescription": "Instructions can receive, but not send",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Prefetch request from LSU",
|
||||||
|
"EventCode": "0x6013",
|
||||||
|
"EventName": "PRF_REQ",
|
||||||
|
"BriefDescription": "Prefetch request from LSU",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Hit on prefetched data",
|
||||||
|
"EventCode": "0x6014",
|
||||||
|
"EventName": "HIT_ON_PRF",
|
||||||
|
"BriefDescription": "Hit on prefetched data",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Cycles of that the number of issuing micro operations are less than 4",
|
||||||
|
"EventCode": "0x7001",
|
||||||
|
"EventName": "EXE_STALL_CYCLE",
|
||||||
|
"BriefDescription": "Cycles of that the number of issue ups are less than 4",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "No any micro operation is issued and meanwhile any load operation is not resolved",
|
||||||
|
"EventCode": "0x7004",
|
||||||
|
"EventName": "MEM_STALL_ANYLOAD",
|
||||||
|
"BriefDescription": "No any micro operation is issued and meanwhile any load operation is not resolved",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "No any micro operation is issued and meanwhile there is any load operation missing L1 cache and pending data refill",
|
||||||
|
"EventCode": "0x7006",
|
||||||
|
"EventName": "MEM_STALL_L1MISS",
|
||||||
|
"BriefDescription": "No any micro operation is issued and meanwhile there is any load operation missing L1 cache and pending data refill",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "No any micro operation is issued and meanwhile there is any load operation missing both L1 and L2 cache and pending data refill from L3 cache",
|
||||||
|
"EventCode": "0x7007",
|
||||||
|
"EventName": "MEM_STALL_L2MISS",
|
||||||
|
"BriefDescription": "No any micro operation is issued and meanwhile there is any load operation missing both L1 and L2 cache and pending data refill from L3 cache",
|
||||||
|
},
|
||||||
|
]
|
18
lib/libpmcstat/pmu-events/arch/arm64/mapfile.csv
Normal file
18
lib/libpmcstat/pmu-events/arch/arm64/mapfile.csv
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
# Format:
|
||||||
|
# MIDR,Version,JSON/file/pathname,Type
|
||||||
|
#
|
||||||
|
# where
|
||||||
|
# MIDR Processor version
|
||||||
|
# Variant[23:20] and Revision [3:0] should be zero.
|
||||||
|
# Version could be used to track version of of JSON file
|
||||||
|
# but currently unused.
|
||||||
|
# JSON/file/pathname is the path to JSON file, relative
|
||||||
|
# to tools/perf/pmu-events/arch/arm64/.
|
||||||
|
# Type is core, uncore etc
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#Family-model,Version,Filename,EventType
|
||||||
|
0x00000000410fd03[[:xdigit:]],v1,arm/cortex-a53,core
|
||||||
|
0x00000000420f5160,v1,cavium/thunderx2,core
|
||||||
|
0x00000000430f0af0,v1,cavium/thunderx2,core
|
||||||
|
0x00000000480fd010,v1,hisilicon/hip08,core
|
|
17
lib/libpmcstat/pmu-events/arch/powerpc/mapfile.csv
Normal file
17
lib/libpmcstat/pmu-events/arch/powerpc/mapfile.csv
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
# Format:
|
||||||
|
# PVR,Version,JSON/file/pathname,Type
|
||||||
|
#
|
||||||
|
# where
|
||||||
|
# PVR Processor version
|
||||||
|
# Version could be used to track version of of JSON file
|
||||||
|
# but currently unused.
|
||||||
|
# JSON/file/pathname is the path to JSON file, relative
|
||||||
|
# to tools/perf/pmu-events/arch/powerpc/.
|
||||||
|
# Type is core, uncore etc
|
||||||
|
#
|
||||||
|
# Multiple PVRs could map to a single JSON file.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Power8 entries
|
||||||
|
004[bcd][[:xdigit:]]{4},1,power8,core
|
||||||
|
004e[[:xdigit:]]{4},1,power9,core
|
|
176
lib/libpmcstat/pmu-events/arch/powerpc/power8/cache.json
Normal file
176
lib/libpmcstat/pmu-events/arch/powerpc/power8/cache.json
Normal file
@ -0,0 +1,176 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c048",
|
||||||
|
"EventName": "PM_DATA_FROM_DL2L3_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3c048",
|
||||||
|
"EventName": "PM_DATA_FROM_DL2L3_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3c04c",
|
||||||
|
"EventName": "PM_DATA_FROM_DL4",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's L4 on a different Node or Group (Distant) due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from another chip's L4 on a different Node or Group (Distant) due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c042",
|
||||||
|
"EventName": "PM_DATA_FROM_L2",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from local core's L2 due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200fe",
|
||||||
|
"EventName": "PM_DATA_FROM_L2MISS",
|
||||||
|
"BriefDescription": "Demand LD - L2 Miss (not L2 hit)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c04e",
|
||||||
|
"EventName": "PM_DATA_FROM_L2MISS_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from a localtion other than the local core's L2 due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from a localtion other than the local core's L2 due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3c040",
|
||||||
|
"EventName": "PM_DATA_FROM_L2_DISP_CONFLICT_LDHITST",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 with load hit store conflict due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from local core's L2 with load hit store conflict due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c040",
|
||||||
|
"EventName": "PM_DATA_FROM_L2_DISP_CONFLICT_OTHER",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 with dispatch conflict due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from local core's L2 with dispatch conflict due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c040",
|
||||||
|
"EventName": "PM_DATA_FROM_L2_MEPF",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 hit without dispatch conflicts on Mepf state due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from local core's L2 hit without dispatch conflicts on Mepf state due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c040",
|
||||||
|
"EventName": "PM_DATA_FROM_L2_NO_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 without conflict due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from local core's L2 without conflict due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c042",
|
||||||
|
"EventName": "PM_DATA_FROM_L3",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from local core's L3 due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300fe",
|
||||||
|
"EventName": "PM_DATA_FROM_L3MISS",
|
||||||
|
"BriefDescription": "Demand LD - L3 Miss (not L2 hit and not L3 hit)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c04e",
|
||||||
|
"EventName": "PM_DATA_FROM_L3MISS_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from a localtion other than the local core's L3 due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from a localtion other than the local core's L3 due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3c042",
|
||||||
|
"EventName": "PM_DATA_FROM_L3_DISP_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 with dispatch conflict due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from local core's L3 with dispatch conflict due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c042",
|
||||||
|
"EventName": "PM_DATA_FROM_L3_MEPF",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 without dispatch conflicts hit on Mepf state due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from local core's L3 without dispatch conflicts hit on Mepf state due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c044",
|
||||||
|
"EventName": "PM_DATA_FROM_L3_NO_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 without conflict due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from local core's L3 without conflict due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c04c",
|
||||||
|
"EventName": "PM_DATA_FROM_LL4",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from the local chip's L4 cache due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from the local chip's L4 cache due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c04a",
|
||||||
|
"EventName": "PM_DATA_FROM_OFF_CHIP_CACHE",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c048",
|
||||||
|
"EventName": "PM_DATA_FROM_ON_CHIP_CACHE",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded either shared or modified data from another core's L2/L3 on the same chip due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded either shared or modified data from another core's L2/L3 on the same chip due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c046",
|
||||||
|
"EventName": "PM_DATA_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c04a",
|
||||||
|
"EventName": "PM_DATA_FROM_RL2L3_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3001a",
|
||||||
|
"EventName": "PM_DATA_TABLEWALK_CYC",
|
||||||
|
"BriefDescription": "Tablwalk Cycles (could be 1 or 2 active)",
|
||||||
|
"PublicDescription": "Data Tablewalk Active"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4e04e",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L3MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a localtion other than the local core's L3 due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0xd094",
|
||||||
|
"EventName": "PM_DSLB_MISS",
|
||||||
|
"BriefDescription": "Data SLB Miss - Total of all segment sizes",
|
||||||
|
"PublicDescription": "Data SLB Miss - Total of all segment sizesData SLB misses"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1002c",
|
||||||
|
"EventName": "PM_L1_DCACHE_RELOADED_ALL",
|
||||||
|
"BriefDescription": "L1 data cache reloaded for demand or prefetch",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300f6",
|
||||||
|
"EventName": "PM_L1_DCACHE_RELOAD_VALID",
|
||||||
|
"BriefDescription": "DL1 reloaded due to Demand Load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3e054",
|
||||||
|
"EventName": "PM_LD_MISS_L1",
|
||||||
|
"BriefDescription": "Load Missed L1",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x100ee",
|
||||||
|
"EventName": "PM_LD_REF_L1",
|
||||||
|
"BriefDescription": "All L1 D cache load references counted at finish, gated by reject",
|
||||||
|
"PublicDescription": "Load Ref count combined for all units"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300f0",
|
||||||
|
"EventName": "PM_ST_MISS_L1",
|
||||||
|
"BriefDescription": "Store Missed L1",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
]
|
@ -0,0 +1,14 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2000e",
|
||||||
|
"EventName": "PM_FXU_BUSY",
|
||||||
|
"BriefDescription": "fxu0 busy and fxu1 busy",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1000e",
|
||||||
|
"EventName": "PM_FXU_IDLE",
|
||||||
|
"BriefDescription": "fxu0 idle and fxu1 idle",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
]
|
470
lib/libpmcstat/pmu-events/arch/powerpc/power8/frontend.json
Normal file
470
lib/libpmcstat/pmu-events/arch/powerpc/power8/frontend.json
Normal file
@ -0,0 +1,470 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2505e",
|
||||||
|
"EventName": "PM_BACK_BR_CMPL",
|
||||||
|
"BriefDescription": "Branch instruction completed with a target address less than current instruction address",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10068",
|
||||||
|
"EventName": "PM_BRU_FIN",
|
||||||
|
"BriefDescription": "Branch Instruction Finished",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20036",
|
||||||
|
"EventName": "PM_BR_2PATH",
|
||||||
|
"BriefDescription": "two path branch",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40060",
|
||||||
|
"EventName": "PM_BR_CMPL",
|
||||||
|
"BriefDescription": "Branch Instruction completed",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x400f6",
|
||||||
|
"EventName": "PM_BR_MPRED_CMPL",
|
||||||
|
"BriefDescription": "Number of Branch Mispredicts",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200fa",
|
||||||
|
"EventName": "PM_BR_TAKEN_CMPL",
|
||||||
|
"BriefDescription": "New event for Branch Taken",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10018",
|
||||||
|
"EventName": "PM_IC_DEMAND_CYC",
|
||||||
|
"BriefDescription": "Cycles when a demand ifetch was pending",
|
||||||
|
"PublicDescription": "Demand ifetch pending"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x100f6",
|
||||||
|
"EventName": "PM_IERAT_RELOAD",
|
||||||
|
"BriefDescription": "Number of I-ERAT reloads",
|
||||||
|
"PublicDescription": "IERAT Reloaded (Miss)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4006a",
|
||||||
|
"EventName": "PM_IERAT_RELOAD_16M",
|
||||||
|
"BriefDescription": "IERAT Reloaded (Miss) for a 16M page",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20064",
|
||||||
|
"EventName": "PM_IERAT_RELOAD_4K",
|
||||||
|
"BriefDescription": "IERAT Miss (Not implemented as DI on POWER6)",
|
||||||
|
"PublicDescription": "IERAT Reloaded (Miss) for a 4k page"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3006a",
|
||||||
|
"EventName": "PM_IERAT_RELOAD_64K",
|
||||||
|
"BriefDescription": "IERAT Reloaded (Miss) for a 64k page",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14050",
|
||||||
|
"EventName": "PM_INST_CHIP_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was chip pump (prediction=correct) for an instruction fetch",
|
||||||
|
"PublicDescription": "Initial and Final Pump Scope and data sourced across this scope was chip pump (prediction=correct) for an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2",
|
||||||
|
"EventName": "PM_INST_CMPL",
|
||||||
|
"BriefDescription": "Number of PowerPC Instructions that completed",
|
||||||
|
"PublicDescription": "PPC Instructions Finished (completed)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200f2",
|
||||||
|
"EventName": "PM_INST_DISP",
|
||||||
|
"BriefDescription": "PPC Dispatched",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x44048",
|
||||||
|
"EventName": "PM_INST_FROM_DL2L3_MOD",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34048",
|
||||||
|
"EventName": "PM_INST_FROM_DL2L3_SHR",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3404c",
|
||||||
|
"EventName": "PM_INST_FROM_DL4",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from another chip's L4 on a different Node or Group (Distant) due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from another chip's L4 on a different Node or Group (Distant) due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4404c",
|
||||||
|
"EventName": "PM_INST_FROM_DMEM",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from another chip's memory on the same Node or Group (Distant) due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from another chip's memory on the same Node or Group (Distant) due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14042",
|
||||||
|
"EventName": "PM_INST_FROM_L2",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L2 due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from local core's L2 due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1404e",
|
||||||
|
"EventName": "PM_INST_FROM_L2MISS",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from a localtion other than the local core's L2 due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from a localtion other than the local core's L2 due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34040",
|
||||||
|
"EventName": "PM_INST_FROM_L2_DISP_CONFLICT_LDHITST",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L2 with load hit store conflict due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from local core's L2 with load hit store conflict due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x44040",
|
||||||
|
"EventName": "PM_INST_FROM_L2_DISP_CONFLICT_OTHER",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L2 with dispatch conflict due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from local core's L2 with dispatch conflict due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24040",
|
||||||
|
"EventName": "PM_INST_FROM_L2_MEPF",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L2 hit without dispatch conflicts on Mepf state. due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from local core's L2 hit without dispatch conflicts on Mepf state. due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14040",
|
||||||
|
"EventName": "PM_INST_FROM_L2_NO_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L2 without conflict due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from local core's L2 without conflict due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x44042",
|
||||||
|
"EventName": "PM_INST_FROM_L3",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L3 due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from local core's L3 due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300fa",
|
||||||
|
"EventName": "PM_INST_FROM_L3MISS",
|
||||||
|
"BriefDescription": "Marked instruction was reloaded from a location beyond the local chiplet",
|
||||||
|
"PublicDescription": "Inst from L3 miss"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4404e",
|
||||||
|
"EventName": "PM_INST_FROM_L3MISS_MOD",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from a localtion other than the local core's L3 due to a instruction fetch",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from a localtion other than the local core's L3 due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34042",
|
||||||
|
"EventName": "PM_INST_FROM_L3_DISP_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L3 with dispatch conflict due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from local core's L3 with dispatch conflict due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24042",
|
||||||
|
"EventName": "PM_INST_FROM_L3_MEPF",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L3 without dispatch conflicts hit on Mepf state. due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from local core's L3 without dispatch conflicts hit on Mepf state. due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14044",
|
||||||
|
"EventName": "PM_INST_FROM_L3_NO_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L3 without conflict due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from local core's L3 without conflict due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1404c",
|
||||||
|
"EventName": "PM_INST_FROM_LL4",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from the local chip's L4 cache due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from the local chip's L4 cache due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24048",
|
||||||
|
"EventName": "PM_INST_FROM_LMEM",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from the local chip's Memory due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from the local chip's Memory due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2404c",
|
||||||
|
"EventName": "PM_INST_FROM_MEMORY",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from a memory location including L4 from local remote or distant due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from a memory location including L4 from local remote or distant due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4404a",
|
||||||
|
"EventName": "PM_INST_FROM_OFF_CHIP_CACHE",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14048",
|
||||||
|
"EventName": "PM_INST_FROM_ON_CHIP_CACHE",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded either shared or modified data from another core's L2/L3 on the same chip due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded either shared or modified data from another core's L2/L3 on the same chip due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24046",
|
||||||
|
"EventName": "PM_INST_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1404a",
|
||||||
|
"EventName": "PM_INST_FROM_RL2L3_SHR",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2404a",
|
||||||
|
"EventName": "PM_INST_FROM_RL4",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from another chip's L4 on the same Node or Group ( Remote) due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from another chip's L4 on the same Node or Group ( Remote) due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3404a",
|
||||||
|
"EventName": "PM_INST_FROM_RMEM",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from another chip's memory on the same Node or Group ( Remote) due to an instruction fetch (not prefetch)",
|
||||||
|
"PublicDescription": "The processor's Instruction cache was reloaded from another chip's memory on the same Node or Group ( Remote) due to either an instruction fetch or instruction fetch plus prefetch if MMCR1[17] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24050",
|
||||||
|
"EventName": "PM_INST_GRP_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was group pump (prediction=correct) for an instruction fetch",
|
||||||
|
"PublicDescription": "Initial and Final Pump Scope and data sourced across this scope was group pump for an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24052",
|
||||||
|
"EventName": "PM_INST_GRP_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Final Pump Scope (Group) ended up either larger or smaller than Initial Pump Scope for an instruction fetch",
|
||||||
|
"PublicDescription": "Final Pump Scope(Group) to get data sourced, ended up larger than Initial Pump Scope OR Final Pump Scope(Group) got data from source that was at smaller scope(Chip) Final pump was group pump and initial pump was chip or final and initial pump was gro"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14052",
|
||||||
|
"EventName": "PM_INST_GRP_PUMP_MPRED_RTY",
|
||||||
|
"BriefDescription": "Final Pump Scope (Group) ended up larger than Initial Pump Scope (Chip) for an instruction fetch",
|
||||||
|
"PublicDescription": "Final Pump Scope(Group) to get data sourced, ended up larger than Initial Pump Scope (Chip) Final pump was group pump and initial pump was chip pumpfor an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1003a",
|
||||||
|
"EventName": "PM_INST_IMC_MATCH_CMPL",
|
||||||
|
"BriefDescription": "IMC Match Count ( Not architected in P8)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14054",
|
||||||
|
"EventName": "PM_INST_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Pump prediction correct. Counts across all types of pumps for an instruction fetch",
|
||||||
|
"PublicDescription": "Pump prediction correct. Counts across all types of pumpsfor an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x44052",
|
||||||
|
"EventName": "PM_INST_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Pump misprediction. Counts across all types of pumps for an instruction fetch",
|
||||||
|
"PublicDescription": "Pump Mis prediction Counts across all types of pumpsfor an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34050",
|
||||||
|
"EventName": "PM_INST_SYS_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was system pump (prediction=correct) for an instruction fetch",
|
||||||
|
"PublicDescription": "Initial and Final Pump Scope and data sourced across this scope was system pump for an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34052",
|
||||||
|
"EventName": "PM_INST_SYS_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) mispredicted. Either the original scope was too small (Chip/Group) or the original scope was System and it should have been smaller. Counts for an instruction fetch",
|
||||||
|
"PublicDescription": "Final Pump Scope(system) to get data sourced, ended up larger than Initial Pump Scope(Chip/Group) OR Final Pump Scope(system) got data from source that was at smaller scope(Chip/group) Final pump was system pump and initial pump was chip or group or"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x44050",
|
||||||
|
"EventName": "PM_INST_SYS_PUMP_MPRED_RTY",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) ended up larger than Initial Pump Scope (Chip/Group) for an instruction fetch",
|
||||||
|
"PublicDescription": "Final Pump Scope(system) to get data sourced, ended up larger than Initial Pump Scope (Chip or Group) for an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x45048",
|
||||||
|
"EventName": "PM_IPTEG_FROM_DL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x35048",
|
||||||
|
"EventName": "PM_IPTEG_FROM_DL2L3_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3504c",
|
||||||
|
"EventName": "PM_IPTEG_FROM_DL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's L4 on a different Node or Group (Distant) due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4504c",
|
||||||
|
"EventName": "PM_IPTEG_FROM_DMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's memory on the same Node or Group (Distant) due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15042",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L2",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1504e",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L2MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a localtion other than the local core's L2 due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x25040",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L2_MEPF",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 hit without dispatch conflicts on Mepf state. due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15040",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L2_NO_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 without conflict due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x45042",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4504e",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L3MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a localtion other than the local core's L3 due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x35042",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L3_DISP_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 with dispatch conflict due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x25042",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L3_MEPF",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without dispatch conflicts hit on Mepf state. due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15044",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L3_NO_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without conflict due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1504c",
|
||||||
|
"EventName": "PM_IPTEG_FROM_LL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from the local chip's L4 cache due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x25048",
|
||||||
|
"EventName": "PM_IPTEG_FROM_LMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from the local chip's Memory due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2504c",
|
||||||
|
"EventName": "PM_IPTEG_FROM_MEMORY",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a memory location including L4 from local remote or distant due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4504a",
|
||||||
|
"EventName": "PM_IPTEG_FROM_OFF_CHIP_CACHE",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15048",
|
||||||
|
"EventName": "PM_IPTEG_FROM_ON_CHIP_CACHE",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB either shared or modified data from another core's L2/L3 on the same chip due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x25046",
|
||||||
|
"EventName": "PM_IPTEG_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1504a",
|
||||||
|
"EventName": "PM_IPTEG_FROM_RL2L3_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2504a",
|
||||||
|
"EventName": "PM_IPTEG_FROM_RL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's L4 on the same Node or Group ( Remote) due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3504a",
|
||||||
|
"EventName": "PM_IPTEG_FROM_RMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's memory on the same Node or Group ( Remote) due to a instruction side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0xd096",
|
||||||
|
"EventName": "PM_ISLB_MISS",
|
||||||
|
"BriefDescription": "I SLB Miss",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x400fc",
|
||||||
|
"EventName": "PM_ITLB_MISS",
|
||||||
|
"BriefDescription": "ITLB Reloaded (always zero on POWER6)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200fd",
|
||||||
|
"EventName": "PM_L1_ICACHE_MISS",
|
||||||
|
"BriefDescription": "Demand iCache Miss",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40012",
|
||||||
|
"EventName": "PM_L1_ICACHE_RELOADED_ALL",
|
||||||
|
"BriefDescription": "Counts all Icache reloads includes demand, prefetchm prefetch turned into demand and demand turned into prefetch",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30068",
|
||||||
|
"EventName": "PM_L1_ICACHE_RELOADED_PREF",
|
||||||
|
"BriefDescription": "Counts all Icache prefetch reloads ( includes demand turned into prefetch)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300f4",
|
||||||
|
"EventName": "PM_THRD_CONC_RUN_INST",
|
||||||
|
"BriefDescription": "PPC Instructions Finished when both threads in run_cycles",
|
||||||
|
"PublicDescription": "Concurrent Run Instructions"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30060",
|
||||||
|
"EventName": "PM_TM_TRANS_RUN_INST",
|
||||||
|
"BriefDescription": "Instructions completed in transactional state",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4e014",
|
||||||
|
"EventName": "PM_TM_TX_PASS_RUN_INST",
|
||||||
|
"BriefDescription": "run instructions spent in successful transactions",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
]
|
794
lib/libpmcstat/pmu-events/arch/powerpc/power8/marked.json
Normal file
794
lib/libpmcstat/pmu-events/arch/powerpc/power8/marked.json
Normal file
@ -0,0 +1,794 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3515e",
|
||||||
|
"EventName": "PM_MRK_BACK_BR_CMPL",
|
||||||
|
"BriefDescription": "Marked branch instruction completed with a target address less than current instruction address",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2013a",
|
||||||
|
"EventName": "PM_MRK_BRU_FIN",
|
||||||
|
"BriefDescription": "bru marked instr finish",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1016e",
|
||||||
|
"EventName": "PM_MRK_BR_CMPL",
|
||||||
|
"BriefDescription": "Branch Instruction completed",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x301e4",
|
||||||
|
"EventName": "PM_MRK_BR_MPRED_CMPL",
|
||||||
|
"BriefDescription": "Marked Branch Mispredicted",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101e2",
|
||||||
|
"EventName": "PM_MRK_BR_TAKEN_CMPL",
|
||||||
|
"BriefDescription": "Marked Branch Taken completed",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d148",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_DL2L3_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d128",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_DL2L3_MOD_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3d148",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_DL2L3_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c128",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_DL2L3_SHR_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3d14c",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_DL4",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's L4 on a different Node or Group (Distant) due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c12c",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_DL4_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from another chip's L4 on a different Node or Group (Distant) due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d14c",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_DMEM",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's memory on the same Node or Group (Distant) due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d12c",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_DMEM_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from another chip's memory on the same Node or Group (Distant) due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1d142",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1d14e",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2MISS",
|
||||||
|
"BriefDescription": "Data cache reload L2 miss",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c12e",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2MISS_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from a localtion other than the local core's L2 due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c122",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from local core's L2 due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3d140",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_DISP_CONFLICT_LDHITST",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 with load hit store conflict due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c120",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_DISP_CONFLICT_LDHITST_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from local core's L2 with load hit store conflict due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d140",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_DISP_CONFLICT_OTHER",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 with dispatch conflict due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d120",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_DISP_CONFLICT_OTHER_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from local core's L2 with dispatch conflict due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d140",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_MEPF",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 hit without dispatch conflicts on Mepf state. due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d120",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_MEPF_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from local core's L2 hit without dispatch conflicts on Mepf state. due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1d140",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_NO_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 without conflict due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c120",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_NO_CONFLICT_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from local core's L2 without conflict due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d142",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x201e4",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3MISS",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from a localtion other than the local core's L3 due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d12e",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3MISS_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from a localtion other than the local core's L3 due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d122",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from local core's L3 due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3d142",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3_DISP_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 with dispatch conflict due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c122",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3_DISP_CONFLICT_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from local core's L3 with dispatch conflict due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d142",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3_MEPF",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 without dispatch conflicts hit on Mepf state. due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d122",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3_MEPF_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from local core's L3 without dispatch conflicts hit on Mepf state. due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1d144",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3_NO_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 without conflict due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c124",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3_NO_CONFLICT_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from local core's L3 without conflict due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1d14c",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_LL4",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from the local chip's L4 cache due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c12c",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_LL4_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from the local chip's L4 cache due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d148",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_LMEM",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from the local chip's Memory due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d128",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_LMEM_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from the local chip's Memory due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d14c",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_MEMORY",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from a memory location including L4 from local remote or distant due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d12c",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_MEMORY_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from a memory location including L4 from local remote or distant due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d14a",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_OFF_CHIP_CACHE",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d12a",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_OFF_CHIP_CACHE_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1d148",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_ON_CHIP_CACHE",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded either shared or modified data from another core's L2/L3 on the same chip due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c128",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_ON_CHIP_CACHE_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload either shared or modified data from another core's L2/L3 on the same chip due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d146",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d126",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL2L3_MOD_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1d14a",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL2L3_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c12a",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL2L3_SHR_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d14a",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL4",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's L4 on the same Node or Group ( Remote) due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d12a",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL4_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from another chip's L4 on the same Node or Group ( Remote) due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3d14a",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RMEM",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's memory on the same Node or Group ( Remote) due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c12a",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RMEM_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from another chip's memory on the same Node or Group ( Remote) due to a marked load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40118",
|
||||||
|
"EventName": "PM_MRK_DCACHE_RELOAD_INTV",
|
||||||
|
"BriefDescription": "Combined Intervention event",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x301e6",
|
||||||
|
"EventName": "PM_MRK_DERAT_MISS",
|
||||||
|
"BriefDescription": "Erat Miss (TLB Access) All page sizes",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d154",
|
||||||
|
"EventName": "PM_MRK_DERAT_MISS_16G",
|
||||||
|
"BriefDescription": "Marked Data ERAT Miss (Data TLB Access) page size 16G",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3d154",
|
||||||
|
"EventName": "PM_MRK_DERAT_MISS_16M",
|
||||||
|
"BriefDescription": "Marked Data ERAT Miss (Data TLB Access) page size 16M",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1d156",
|
||||||
|
"EventName": "PM_MRK_DERAT_MISS_4K",
|
||||||
|
"BriefDescription": "Marked Data ERAT Miss (Data TLB Access) page size 4K",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d154",
|
||||||
|
"EventName": "PM_MRK_DERAT_MISS_64K",
|
||||||
|
"BriefDescription": "Marked Data ERAT Miss (Data TLB Access) page size 64K",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20132",
|
||||||
|
"EventName": "PM_MRK_DFU_FIN",
|
||||||
|
"BriefDescription": "Decimal Unit marked Instruction Finish",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4f148",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_DL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3f148",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_DL2L3_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3f14c",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_DL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's L4 on a different Node or Group (Distant) due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4f14c",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_DMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's memory on the same Node or Group (Distant) due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1f142",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L2",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1f14e",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L2MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a localtion other than the local core's L2 due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2f140",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L2_MEPF",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 hit without dispatch conflicts on Mepf state. due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1f140",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L2_NO_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 without conflict due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4f142",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4f14e",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L3MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a localtion other than the local core's L3 due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3f142",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L3_DISP_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 with dispatch conflict due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2f142",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L3_MEPF",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without dispatch conflicts hit on Mepf state. due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1f144",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L3_NO_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without conflict due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1f14c",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_LL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from the local chip's L4 cache due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2f148",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_LMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from the local chip's Memory due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2f14c",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_MEMORY",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a memory location including L4 from local remote or distant due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4f14a",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_OFF_CHIP_CACHE",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1f148",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_ON_CHIP_CACHE",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB either shared or modified data from another core's L2/L3 on the same chip due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2f146",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1f14a",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_RL2L3_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2f14a",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_RL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's L4 on the same Node or Group ( Remote) due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3f14a",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_RMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's memory on the same Node or Group ( Remote) due to a marked data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x401e4",
|
||||||
|
"EventName": "PM_MRK_DTLB_MISS",
|
||||||
|
"BriefDescription": "Marked dtlb miss",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1d158",
|
||||||
|
"EventName": "PM_MRK_DTLB_MISS_16G",
|
||||||
|
"BriefDescription": "Marked Data TLB Miss page size 16G",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d156",
|
||||||
|
"EventName": "PM_MRK_DTLB_MISS_16M",
|
||||||
|
"BriefDescription": "Marked Data TLB Miss page size 16M",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d156",
|
||||||
|
"EventName": "PM_MRK_DTLB_MISS_4K",
|
||||||
|
"BriefDescription": "Marked Data TLB Miss page size 4k",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3d156",
|
||||||
|
"EventName": "PM_MRK_DTLB_MISS_64K",
|
||||||
|
"BriefDescription": "Marked Data TLB Miss page size 64K",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40154",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_BKILL",
|
||||||
|
"BriefDescription": "Marked store had to do a bkill",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2f150",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_BKILL_CYC",
|
||||||
|
"BriefDescription": "cycles L2 RC took for a bkill",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3015e",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_CLAIM_RTY",
|
||||||
|
"BriefDescription": "Sampled store did a rwitm and got a rty",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30154",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_DCLAIM",
|
||||||
|
"BriefDescription": "Marked store had to do a dclaim",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2f152",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_DCLAIM_CYC",
|
||||||
|
"BriefDescription": "cycles L2 RC took for a dclaim",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4015e",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_RD_RTY",
|
||||||
|
"BriefDescription": "Sampled L2 reads retry count",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1015e",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_RD_T_INTV",
|
||||||
|
"BriefDescription": "Sampled Read got a T intervention",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4f150",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_RWITM_CYC",
|
||||||
|
"BriefDescription": "cycles L2 RC took for a rwitm",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2015e",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_RWITM_RTY",
|
||||||
|
"BriefDescription": "Sampled store did a rwitm and got a rty",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20134",
|
||||||
|
"EventName": "PM_MRK_FXU_FIN",
|
||||||
|
"BriefDescription": "fxu marked instr finish",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x401e0",
|
||||||
|
"EventName": "PM_MRK_INST_CMPL",
|
||||||
|
"BriefDescription": "marked instruction completed",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20130",
|
||||||
|
"EventName": "PM_MRK_INST_DECODED",
|
||||||
|
"BriefDescription": "marked instruction decoded",
|
||||||
|
"PublicDescription": "marked instruction decoded. Name from ISU?"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101e0",
|
||||||
|
"EventName": "PM_MRK_INST_DISP",
|
||||||
|
"BriefDescription": "The thread has dispatched a randomly sampled marked instruction",
|
||||||
|
"PublicDescription": "Marked Instruction dispatched"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30130",
|
||||||
|
"EventName": "PM_MRK_INST_FIN",
|
||||||
|
"BriefDescription": "marked instruction finished",
|
||||||
|
"PublicDescription": "marked instr finish any unit"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x401e6",
|
||||||
|
"EventName": "PM_MRK_INST_FROM_L3MISS",
|
||||||
|
"BriefDescription": "Marked instruction was reloaded from a location beyond the local chiplet",
|
||||||
|
"PublicDescription": "n/a"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10132",
|
||||||
|
"EventName": "PM_MRK_INST_ISSUED",
|
||||||
|
"BriefDescription": "Marked instruction issued",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40134",
|
||||||
|
"EventName": "PM_MRK_INST_TIMEO",
|
||||||
|
"BriefDescription": "marked Instruction finish timeout (instruction lost)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101e4",
|
||||||
|
"EventName": "PM_MRK_L1_ICACHE_MISS",
|
||||||
|
"BriefDescription": "sampled Instruction suffered an icache Miss",
|
||||||
|
"PublicDescription": "Marked L1 Icache Miss"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101ea",
|
||||||
|
"EventName": "PM_MRK_L1_RELOAD_VALID",
|
||||||
|
"BriefDescription": "Marked demand reload",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20114",
|
||||||
|
"EventName": "PM_MRK_L2_RC_DISP",
|
||||||
|
"BriefDescription": "Marked Instruction RC dispatched in L2",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3012a",
|
||||||
|
"EventName": "PM_MRK_L2_RC_DONE",
|
||||||
|
"BriefDescription": "Marked RC done",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40116",
|
||||||
|
"EventName": "PM_MRK_LARX_FIN",
|
||||||
|
"BriefDescription": "Larx finished",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1013e",
|
||||||
|
"EventName": "PM_MRK_LD_MISS_EXPOSED_CYC",
|
||||||
|
"BriefDescription": "Marked Load exposed Miss cycles",
|
||||||
|
"PublicDescription": "Marked Load exposed Miss (use edge detect to count #)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x201e2",
|
||||||
|
"EventName": "PM_MRK_LD_MISS_L1",
|
||||||
|
"BriefDescription": "Marked DL1 Demand Miss counted at exec time",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4013e",
|
||||||
|
"EventName": "PM_MRK_LD_MISS_L1_CYC",
|
||||||
|
"BriefDescription": "Marked ld latency",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40132",
|
||||||
|
"EventName": "PM_MRK_LSU_FIN",
|
||||||
|
"BriefDescription": "lsu marked instr finish",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20112",
|
||||||
|
"EventName": "PM_MRK_NTF_FIN",
|
||||||
|
"BriefDescription": "Marked next to finish instruction finished",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1d15e",
|
||||||
|
"EventName": "PM_MRK_RUN_CYC",
|
||||||
|
"BriefDescription": "Marked run cycles",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3013e",
|
||||||
|
"EventName": "PM_MRK_STALL_CMPLU_CYC",
|
||||||
|
"BriefDescription": "Marked Group completion Stall",
|
||||||
|
"PublicDescription": "Marked Group Completion Stall cycles (use edge detect to count #)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3e158",
|
||||||
|
"EventName": "PM_MRK_STCX_FAIL",
|
||||||
|
"BriefDescription": "marked stcx failed",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10134",
|
||||||
|
"EventName": "PM_MRK_ST_CMPL",
|
||||||
|
"BriefDescription": "marked store completed and sent to nest",
|
||||||
|
"PublicDescription": "Marked store completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30134",
|
||||||
|
"EventName": "PM_MRK_ST_CMPL_INT",
|
||||||
|
"BriefDescription": "marked store finished with intervention",
|
||||||
|
"PublicDescription": "marked store complete (data home) with intervention"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3f150",
|
||||||
|
"EventName": "PM_MRK_ST_DRAIN_TO_L2DISP_CYC",
|
||||||
|
"BriefDescription": "cycles to drain st from core to L2",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3012c",
|
||||||
|
"EventName": "PM_MRK_ST_FWD",
|
||||||
|
"BriefDescription": "Marked st forwards",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1f150",
|
||||||
|
"EventName": "PM_MRK_ST_L2DISP_TO_CMPL_CYC",
|
||||||
|
"BriefDescription": "cycles from L2 rc disp to l2 rc completion",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20138",
|
||||||
|
"EventName": "PM_MRK_ST_NEST",
|
||||||
|
"BriefDescription": "Marked store sent to nest",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30132",
|
||||||
|
"EventName": "PM_MRK_VSU_FIN",
|
||||||
|
"BriefDescription": "VSU marked instr finish",
|
||||||
|
"PublicDescription": "vsu (fpu) marked instr finish"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3d15e",
|
||||||
|
"EventName": "PM_MULT_MRK",
|
||||||
|
"BriefDescription": "mult marked instr",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15152",
|
||||||
|
"EventName": "PM_SYNC_MRK_BR_LINK",
|
||||||
|
"BriefDescription": "Marked Branch and link branch that can cause a synchronous interrupt",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1515c",
|
||||||
|
"EventName": "PM_SYNC_MRK_BR_MPRED",
|
||||||
|
"BriefDescription": "Marked Branch mispredict that can cause a synchronous interrupt",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15156",
|
||||||
|
"EventName": "PM_SYNC_MRK_FX_DIVIDE",
|
||||||
|
"BriefDescription": "Marked fixed point divide that can cause a synchronous interrupt",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15158",
|
||||||
|
"EventName": "PM_SYNC_MRK_L2HIT",
|
||||||
|
"BriefDescription": "Marked L2 Hits that can throw a synchronous interrupt",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1515a",
|
||||||
|
"EventName": "PM_SYNC_MRK_L2MISS",
|
||||||
|
"BriefDescription": "Marked L2 Miss that can throw a synchronous interrupt",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15154",
|
||||||
|
"EventName": "PM_SYNC_MRK_L3MISS",
|
||||||
|
"BriefDescription": "Marked L3 misses that can throw a synchronous interrupt",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15150",
|
||||||
|
"EventName": "PM_SYNC_MRK_PROBE_NOP",
|
||||||
|
"BriefDescription": "Marked probeNops which can cause synchronous interrupts",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
]
|
212
lib/libpmcstat/pmu-events/arch/powerpc/power8/memory.json
Normal file
212
lib/libpmcstat/pmu-events/arch/powerpc/power8/memory.json
Normal file
@ -0,0 +1,212 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10050",
|
||||||
|
"EventName": "PM_CHIP_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was chip pump (prediction=correct) for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)",
|
||||||
|
"PublicDescription": "Initial and Final Pump Scope and data sourced across this scope was chip pump (prediction=correct) for all data types ( demand load,data,inst prefetch,inst fetch,xlate (I or d)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c050",
|
||||||
|
"EventName": "PM_DATA_CHIP_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was chip pump (prediction=correct) for a demand load",
|
||||||
|
"PublicDescription": "Initial and Final Pump Scope and data sourced across this scope was chip pump (prediction=correct) for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c04c",
|
||||||
|
"EventName": "PM_DATA_FROM_DMEM",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's memory on the same Node or Group (Distant) due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from another chip's memory on the same Node or Group (Distant) due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c048",
|
||||||
|
"EventName": "PM_DATA_FROM_LMEM",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from the local chip's Memory due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from the local chip's Memory due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c04c",
|
||||||
|
"EventName": "PM_DATA_FROM_MEMORY",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from a memory location including L4 from local remote or distant due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from a memory location including L4 from local remote or distant due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c04a",
|
||||||
|
"EventName": "PM_DATA_FROM_RL4",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's L4 on the same Node or Group ( Remote) due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from another chip's L4 on the same Node or Group ( Remote) due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3c04a",
|
||||||
|
"EventName": "PM_DATA_FROM_RMEM",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's memory on the same Node or Group ( Remote) due to a demand load",
|
||||||
|
"PublicDescription": "The processor's data cache was reloaded from another chip's memory on the same Node or Group ( Remote) due to either only demand loads or demand loads plus prefetches if MMCR1[16] is 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c050",
|
||||||
|
"EventName": "PM_DATA_GRP_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was group pump (prediction=correct) for a demand load",
|
||||||
|
"PublicDescription": "Initial and Final Pump Scope and data sourced across this scope was group pump for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c052",
|
||||||
|
"EventName": "PM_DATA_GRP_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Final Pump Scope (Group) ended up either larger or smaller than Initial Pump Scope for a demand load",
|
||||||
|
"PublicDescription": "Final Pump Scope(Group) to get data sourced, ended up larger than Initial Pump Scope OR Final Pump Scope(Group) got data from source that was at smaller scope(Chip) Final pump was group pump and initial pump was chip or final and initial pump was gro"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c052",
|
||||||
|
"EventName": "PM_DATA_GRP_PUMP_MPRED_RTY",
|
||||||
|
"BriefDescription": "Final Pump Scope (Group) ended up larger than Initial Pump Scope (Chip) for a demand load",
|
||||||
|
"PublicDescription": "Final Pump Scope(Group) to get data sourced, ended up larger than Initial Pump Scope (Chip) Final pump was group pump and initial pump was chip pumpfor a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c054",
|
||||||
|
"EventName": "PM_DATA_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Pump prediction correct. Counts across all types of pumps for a demand load",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c052",
|
||||||
|
"EventName": "PM_DATA_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Pump misprediction. Counts across all types of pumps for a demand load",
|
||||||
|
"PublicDescription": "Pump Mis prediction Counts across all types of pumpsfor a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3c050",
|
||||||
|
"EventName": "PM_DATA_SYS_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was system pump (prediction=correct) for a demand load",
|
||||||
|
"PublicDescription": "Initial and Final Pump Scope and data sourced across this scope was system pump for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3c052",
|
||||||
|
"EventName": "PM_DATA_SYS_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) mispredicted. Either the original scope was too small (Chip/Group) or the original scope was System and it should have been smaller. Counts for a demand load",
|
||||||
|
"PublicDescription": "Final Pump Scope(system) to get data sourced, ended up larger than Initial Pump Scope(Chip/Group) OR Final Pump Scope(system) got data from source that was at smaller scope(Chip/group) Final pump was system pump and initial pump was chip or group or"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c050",
|
||||||
|
"EventName": "PM_DATA_SYS_PUMP_MPRED_RTY",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) ended up larger than Initial Pump Scope (Chip/Group) for a demand load",
|
||||||
|
"PublicDescription": "Final Pump Scope(system) to get data sourced, ended up larger than Initial Pump Scope (Chip or Group) for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3e04c",
|
||||||
|
"EventName": "PM_DPTEG_FROM_DL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's L4 on a different Node or Group (Distant) due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4e04c",
|
||||||
|
"EventName": "PM_DPTEG_FROM_DMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's memory on the same Node or Group (Distant) due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3e04a",
|
||||||
|
"EventName": "PM_DPTEG_FROM_RMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's memory on the same Node or Group ( Remote) due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20050",
|
||||||
|
"EventName": "PM_GRP_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope and data sourced across this scope was group pump for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20052",
|
||||||
|
"EventName": "PM_GRP_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Final Pump Scope (Group) ended up either larger or smaller than Initial Pump Scope for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)",
|
||||||
|
"PublicDescription": "Final Pump Scope(Group) to get data sourced, ended up larger than Initial Pump Scope OR Final Pump Scope(Group) got data from source that was at smaller scope(Chip) Final pump was group pump and initial pump was chip or final and initial pump was gro"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10052",
|
||||||
|
"EventName": "PM_GRP_PUMP_MPRED_RTY",
|
||||||
|
"BriefDescription": "Final Pump Scope (Group) ended up larger than Initial Pump Scope (Chip) for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)",
|
||||||
|
"PublicDescription": "Final Pump Scope(Group) to get data sourced, ended up larger than Initial Pump Scope (Chip) Final pump was group pump and initial pump was chip pumpfor all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x18082",
|
||||||
|
"EventName": "PM_L3_CO_MEPF",
|
||||||
|
"BriefDescription": "L3 CO of line in Mep state ( includes casthrough",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c058",
|
||||||
|
"EventName": "PM_MEM_CO",
|
||||||
|
"BriefDescription": "Memory castouts from this lpar",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10058",
|
||||||
|
"EventName": "PM_MEM_LOC_THRESH_IFU",
|
||||||
|
"BriefDescription": "Local Memory above threshold for IFU speculation control",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40056",
|
||||||
|
"EventName": "PM_MEM_LOC_THRESH_LSU_HIGH",
|
||||||
|
"BriefDescription": "Local memory above threshold for LSU medium",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c05e",
|
||||||
|
"EventName": "PM_MEM_LOC_THRESH_LSU_MED",
|
||||||
|
"BriefDescription": "Local memory above theshold for data prefetch",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c058",
|
||||||
|
"EventName": "PM_MEM_PREF",
|
||||||
|
"BriefDescription": "Memory prefetch for this lpar. Includes L4",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10056",
|
||||||
|
"EventName": "PM_MEM_READ",
|
||||||
|
"BriefDescription": "Reads from Memory from this lpar (includes data/inst/xlate/l1prefetch/inst prefetch). Includes L4",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3c05e",
|
||||||
|
"EventName": "PM_MEM_RWITM",
|
||||||
|
"BriefDescription": "Memory rwitm for this lpar",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3006e",
|
||||||
|
"EventName": "PM_NEST_REF_CLK",
|
||||||
|
"BriefDescription": "Multiply by 4 to obtain the number of PB cycles",
|
||||||
|
"PublicDescription": "Nest reference clocks"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10054",
|
||||||
|
"EventName": "PM_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Pump prediction correct. Counts across all types of pumps for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)",
|
||||||
|
"PublicDescription": "Pump prediction correct. Counts across all types of pumpsfor all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40052",
|
||||||
|
"EventName": "PM_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Pump misprediction. Counts across all types of pumps for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)",
|
||||||
|
"PublicDescription": "Pump Mis prediction Counts across all types of pumpsfor all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30050",
|
||||||
|
"EventName": "PM_SYS_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was system pump for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)",
|
||||||
|
"PublicDescription": "Initial and Final Pump Scope and data sourced across this scope was system pump for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30052",
|
||||||
|
"EventName": "PM_SYS_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) mispredicted. Either the original scope was too small (Chip/Group) or the original scope was System and it should have been smaller. Counts for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)",
|
||||||
|
"PublicDescription": "Final Pump Scope(system) to get data sourced, ended up larger than Initial Pump Scope(Chip/Group) OR Final Pump Scope(system) got data from source that was at smaller scope(Chip/group) Final pump was system pump and initial pump was chip or group or"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40050",
|
||||||
|
"EventName": "PM_SYS_PUMP_MPRED_RTY",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) ended up larger than Initial Pump Scope (Chip/Group) for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)",
|
||||||
|
"PublicDescription": "Final Pump Scope(system) to get data sourced, ended up larger than Initial Pump Scope (Chip or Group) for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
]
|
4064
lib/libpmcstat/pmu-events/arch/powerpc/power8/other.json
Normal file
4064
lib/libpmcstat/pmu-events/arch/powerpc/power8/other.json
Normal file
File diff suppressed because it is too large
Load Diff
350
lib/libpmcstat/pmu-events/arch/powerpc/power8/pipeline.json
Normal file
350
lib/libpmcstat/pmu-events/arch/powerpc/power8/pipeline.json
Normal file
@ -0,0 +1,350 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x100f2",
|
||||||
|
"EventName": "PM_1PLUS_PPC_CMPL",
|
||||||
|
"BriefDescription": "1 or more ppc insts finished",
|
||||||
|
"PublicDescription": "1 or more ppc insts finished (completed)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x400f2",
|
||||||
|
"EventName": "PM_1PLUS_PPC_DISP",
|
||||||
|
"BriefDescription": "Cycles at least one Instr Dispatched",
|
||||||
|
"PublicDescription": "Cycles at least one Instr Dispatched. Could be a group with only microcode. Issue HW016521"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x100fa",
|
||||||
|
"EventName": "PM_ANY_THRD_RUN_CYC",
|
||||||
|
"BriefDescription": "One of threads in run_cycles",
|
||||||
|
"PublicDescription": "Any thread in run_cycles (was one thread in run_cycles)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4000a",
|
||||||
|
"EventName": "PM_CMPLU_STALL",
|
||||||
|
"BriefDescription": "Completion stall",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d018",
|
||||||
|
"EventName": "PM_CMPLU_STALL_BRU",
|
||||||
|
"BriefDescription": "Completion stall due to a Branch Unit",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c012",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DCACHE_MISS",
|
||||||
|
"BriefDescription": "Completion stall by Dcache miss",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c018",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DMISS_L21_L31",
|
||||||
|
"BriefDescription": "Completion stall by Dcache miss which resolved on chip ( excluding local L2/L3)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c016",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DMISS_L2L3",
|
||||||
|
"BriefDescription": "Completion stall by Dcache miss which resolved in L2/L3",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c016",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DMISS_L2L3_CONFLICT",
|
||||||
|
"BriefDescription": "Completion stall due to cache miss that resolves in the L2 or L3 with a conflict",
|
||||||
|
"PublicDescription": "Completion stall due to cache miss resolving in core's L2/L3 with a conflict"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c01a",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DMISS_L3MISS",
|
||||||
|
"BriefDescription": "Completion stall due to cache miss resolving missed the L3",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c018",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DMISS_LMEM",
|
||||||
|
"BriefDescription": "Completion stall due to cache miss that resolves in local memory",
|
||||||
|
"PublicDescription": "Completion stall due to cache miss resolving in core's Local Memory"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c01c",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DMISS_REMOTE",
|
||||||
|
"BriefDescription": "Completion stall by Dcache miss which resolved from remote chip (cache or memory)",
|
||||||
|
"PublicDescription": "Completion stall by Dcache miss which resolved on chip ( excluding local L2/L3)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c012",
|
||||||
|
"EventName": "PM_CMPLU_STALL_ERAT_MISS",
|
||||||
|
"BriefDescription": "Completion stall due to LSU reject ERAT miss",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d016",
|
||||||
|
"EventName": "PM_CMPLU_STALL_FXLONG",
|
||||||
|
"BriefDescription": "Completion stall due to a long latency fixed point instruction",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2d016",
|
||||||
|
"EventName": "PM_CMPLU_STALL_FXU",
|
||||||
|
"BriefDescription": "Completion stall due to FXU",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30036",
|
||||||
|
"EventName": "PM_CMPLU_STALL_HWSYNC",
|
||||||
|
"BriefDescription": "completion stall due to hwsync",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4d014",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LOAD_FINISH",
|
||||||
|
"BriefDescription": "Completion stall due to a Load finish",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c010",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LSU",
|
||||||
|
"BriefDescription": "Completion stall by LSU instruction",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10036",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LWSYNC",
|
||||||
|
"BriefDescription": "completion stall due to isync/lwsync",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30006",
|
||||||
|
"EventName": "PM_CMPLU_STALL_OTHER_CMPL",
|
||||||
|
"BriefDescription": "Instructions core completed while this tread was stalled",
|
||||||
|
"PublicDescription": "Instructions core completed while this thread was stalled"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c01c",
|
||||||
|
"EventName": "PM_CMPLU_STALL_ST_FWD",
|
||||||
|
"BriefDescription": "Completion stall due to store forward",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1001c",
|
||||||
|
"EventName": "PM_CMPLU_STALL_THRD",
|
||||||
|
"BriefDescription": "Completion Stalled due to thread conflict. Group ready to complete but it was another thread's turn",
|
||||||
|
"PublicDescription": "Completion stall due to thread conflict"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1e",
|
||||||
|
"EventName": "PM_CYC",
|
||||||
|
"BriefDescription": "Cycles",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10006",
|
||||||
|
"EventName": "PM_DISP_HELD",
|
||||||
|
"BriefDescription": "Dispatch Held",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4003c",
|
||||||
|
"EventName": "PM_DISP_HELD_SYNC_HOLD",
|
||||||
|
"BriefDescription": "Dispatch held due to SYNC hold",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200f8",
|
||||||
|
"EventName": "PM_EXT_INT",
|
||||||
|
"BriefDescription": "external interrupt",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x400f8",
|
||||||
|
"EventName": "PM_FLUSH",
|
||||||
|
"BriefDescription": "Flush (any type)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30012",
|
||||||
|
"EventName": "PM_FLUSH_COMPLETION",
|
||||||
|
"BriefDescription": "Completion Flush",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3000c",
|
||||||
|
"EventName": "PM_FREQ_DOWN",
|
||||||
|
"BriefDescription": "Power Management: Below Threshold B",
|
||||||
|
"PublicDescription": "Frequency is being slewed down due to Power Management"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4000c",
|
||||||
|
"EventName": "PM_FREQ_UP",
|
||||||
|
"BriefDescription": "Power Management: Above Threshold A",
|
||||||
|
"PublicDescription": "Frequency is being slewed up due to Power Management"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2000a",
|
||||||
|
"EventName": "PM_HV_CYC",
|
||||||
|
"BriefDescription": "Cycles in which msr_hv is high. Note that this event does not take msr_pr into consideration",
|
||||||
|
"PublicDescription": "cycles in hypervisor mode"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3405e",
|
||||||
|
"EventName": "PM_IFETCH_THROTTLE",
|
||||||
|
"BriefDescription": "Cycles in which Instruction fetch throttle was active",
|
||||||
|
"PublicDescription": "Cycles instruction fecth was throttled in IFU"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10014",
|
||||||
|
"EventName": "PM_IOPS_CMPL",
|
||||||
|
"BriefDescription": "Internal Operations completed",
|
||||||
|
"PublicDescription": "IOPS Completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3c058",
|
||||||
|
"EventName": "PM_LARX_FIN",
|
||||||
|
"BriefDescription": "Larx finished",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1002e",
|
||||||
|
"EventName": "PM_LD_CMPL",
|
||||||
|
"BriefDescription": "count of Loads completed",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10062",
|
||||||
|
"EventName": "PM_LD_L3MISS_PEND_CYC",
|
||||||
|
"BriefDescription": "Cycles L3 miss was pending for this thread",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30066",
|
||||||
|
"EventName": "PM_LSU_FIN",
|
||||||
|
"BriefDescription": "LSU Finished an instruction (up to 2 per cycle)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2003e",
|
||||||
|
"EventName": "PM_LSU_LMQ_SRQ_EMPTY_CYC",
|
||||||
|
"BriefDescription": "LSU empty (lmq and srq empty)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2e05c",
|
||||||
|
"EventName": "PM_LSU_REJECT_ERAT_MISS",
|
||||||
|
"BriefDescription": "LSU Reject due to ERAT (up to 4 per cycles)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4e05c",
|
||||||
|
"EventName": "PM_LSU_REJECT_LHS",
|
||||||
|
"BriefDescription": "LSU Reject due to LHS (up to 4 per cycle)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1e05c",
|
||||||
|
"EventName": "PM_LSU_REJECT_LMQ_FULL",
|
||||||
|
"BriefDescription": "LSU reject due to LMQ full ( 4 per cycle)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1001a",
|
||||||
|
"EventName": "PM_LSU_SRQ_FULL_CYC",
|
||||||
|
"BriefDescription": "Storage Queue is full and is blocking dispatch",
|
||||||
|
"PublicDescription": "SRQ is Full"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40014",
|
||||||
|
"EventName": "PM_PROBE_NOP_DISP",
|
||||||
|
"BriefDescription": "ProbeNops dispatched",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x600f4",
|
||||||
|
"EventName": "PM_RUN_CYC",
|
||||||
|
"BriefDescription": "Run_cycles",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3006c",
|
||||||
|
"EventName": "PM_RUN_CYC_SMT2_MODE",
|
||||||
|
"BriefDescription": "Cycles run latch is set and core is in SMT2 mode",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2006c",
|
||||||
|
"EventName": "PM_RUN_CYC_SMT4_MODE",
|
||||||
|
"BriefDescription": "cycles this threads run latch is set and the core is in SMT4 mode",
|
||||||
|
"PublicDescription": "Cycles run latch is set and core is in SMT4 mode"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1006c",
|
||||||
|
"EventName": "PM_RUN_CYC_ST_MODE",
|
||||||
|
"BriefDescription": "Cycles run latch is set and core is in ST mode",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x500fa",
|
||||||
|
"EventName": "PM_RUN_INST_CMPL",
|
||||||
|
"BriefDescription": "Run_Instructions",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1e058",
|
||||||
|
"EventName": "PM_STCX_FAIL",
|
||||||
|
"BriefDescription": "stcx failed",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20016",
|
||||||
|
"EventName": "PM_ST_CMPL",
|
||||||
|
"BriefDescription": "Store completion count",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200f0",
|
||||||
|
"EventName": "PM_ST_FIN",
|
||||||
|
"BriefDescription": "Store Instructions Finished",
|
||||||
|
"PublicDescription": "Store Instructions Finished (store sent to nest)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20018",
|
||||||
|
"EventName": "PM_ST_FWD",
|
||||||
|
"BriefDescription": "Store forwards that finished",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10026",
|
||||||
|
"EventName": "PM_TABLEWALK_CYC",
|
||||||
|
"BriefDescription": "Cycles when a tablewalk (I or D) is active",
|
||||||
|
"PublicDescription": "Tablewalk Active"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300f8",
|
||||||
|
"EventName": "PM_TB_BIT_TRANS",
|
||||||
|
"BriefDescription": "timebase event",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2000c",
|
||||||
|
"EventName": "PM_THRD_ALL_RUN_CYC",
|
||||||
|
"BriefDescription": "All Threads in Run_cycles (was both threads in run_cycles)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30058",
|
||||||
|
"EventName": "PM_TLBIE_FIN",
|
||||||
|
"BriefDescription": "tlbie finished",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10060",
|
||||||
|
"EventName": "PM_TM_TRANS_RUN_CYC",
|
||||||
|
"BriefDescription": "run cycles in transactional state",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2e012",
|
||||||
|
"EventName": "PM_TM_TX_PASS_RUN_CYC",
|
||||||
|
"BriefDescription": "cycles spent in successful transactions",
|
||||||
|
"PublicDescription": "run cycles spent in successful transactions"
|
||||||
|
},
|
||||||
|
]
|
140
lib/libpmcstat/pmu-events/arch/powerpc/power8/pmc.json
Normal file
140
lib/libpmcstat/pmu-events/arch/powerpc/power8/pmc.json
Normal file
@ -0,0 +1,140 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20010",
|
||||||
|
"EventName": "PM_PMC1_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 1",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30010",
|
||||||
|
"EventName": "PM_PMC2_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 2",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30020",
|
||||||
|
"EventName": "PM_PMC2_REWIND",
|
||||||
|
"BriefDescription": "PMC2 Rewind Event (did not match condition)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10022",
|
||||||
|
"EventName": "PM_PMC2_SAVED",
|
||||||
|
"BriefDescription": "PMC2 Rewind Value saved",
|
||||||
|
"PublicDescription": "PMC2 Rewind Value saved (matched condition)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40010",
|
||||||
|
"EventName": "PM_PMC3_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 3",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10010",
|
||||||
|
"EventName": "PM_PMC4_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 4",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10020",
|
||||||
|
"EventName": "PM_PMC4_REWIND",
|
||||||
|
"BriefDescription": "PMC4 Rewind Event",
|
||||||
|
"PublicDescription": "PMC4 Rewind Event (did not match condition)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30022",
|
||||||
|
"EventName": "PM_PMC4_SAVED",
|
||||||
|
"BriefDescription": "PMC4 Rewind Value saved (matched condition)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10024",
|
||||||
|
"EventName": "PM_PMC5_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 5",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30024",
|
||||||
|
"EventName": "PM_PMC6_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 6",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x400f4",
|
||||||
|
"EventName": "PM_RUN_PURR",
|
||||||
|
"BriefDescription": "Run_PURR",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10008",
|
||||||
|
"EventName": "PM_RUN_SPURR",
|
||||||
|
"BriefDescription": "Run SPURR",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x0",
|
||||||
|
"EventName": "PM_SUSPENDED",
|
||||||
|
"BriefDescription": "Counter OFF",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x301ea",
|
||||||
|
"EventName": "PM_THRESH_EXC_1024",
|
||||||
|
"BriefDescription": "Threshold counter exceeded a value of 1024",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x401ea",
|
||||||
|
"EventName": "PM_THRESH_EXC_128",
|
||||||
|
"BriefDescription": "Threshold counter exceeded a value of 128",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x401ec",
|
||||||
|
"EventName": "PM_THRESH_EXC_2048",
|
||||||
|
"BriefDescription": "Threshold counter exceeded a value of 2048",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101e8",
|
||||||
|
"EventName": "PM_THRESH_EXC_256",
|
||||||
|
"BriefDescription": "Threshold counter exceed a count of 256",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x201e6",
|
||||||
|
"EventName": "PM_THRESH_EXC_32",
|
||||||
|
"BriefDescription": "Threshold counter exceeded a value of 32",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101e6",
|
||||||
|
"EventName": "PM_THRESH_EXC_4096",
|
||||||
|
"BriefDescription": "Threshold counter exceed a count of 4096",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x201e8",
|
||||||
|
"EventName": "PM_THRESH_EXC_512",
|
||||||
|
"BriefDescription": "Threshold counter exceeded a value of 512",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x301e8",
|
||||||
|
"EventName": "PM_THRESH_EXC_64",
|
||||||
|
"BriefDescription": "IFU non-branch finished",
|
||||||
|
"PublicDescription": "Threshold counter exceeded a value of 64"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101ec",
|
||||||
|
"EventName": "PM_THRESH_MET",
|
||||||
|
"BriefDescription": "threshold exceeded",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4016e",
|
||||||
|
"EventName": "PM_THRESH_NOT_MET",
|
||||||
|
"BriefDescription": "Threshold counter did not meet threshold",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
]
|
176
lib/libpmcstat/pmu-events/arch/powerpc/power8/translation.json
Normal file
176
lib/libpmcstat/pmu-events/arch/powerpc/power8/translation.json
Normal file
@ -0,0 +1,176 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c054",
|
||||||
|
"EventName": "PM_DERAT_MISS_16G",
|
||||||
|
"BriefDescription": "Data ERAT Miss (Data TLB Access) page size 16G",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3c054",
|
||||||
|
"EventName": "PM_DERAT_MISS_16M",
|
||||||
|
"BriefDescription": "Data ERAT Miss (Data TLB Access) page size 16M",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c056",
|
||||||
|
"EventName": "PM_DERAT_MISS_4K",
|
||||||
|
"BriefDescription": "Data ERAT Miss (Data TLB Access) page size 4K",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c054",
|
||||||
|
"EventName": "PM_DERAT_MISS_64K",
|
||||||
|
"BriefDescription": "Data ERAT Miss (Data TLB Access) page size 64K",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4e048",
|
||||||
|
"EventName": "PM_DPTEG_FROM_DL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3e048",
|
||||||
|
"EventName": "PM_DPTEG_FROM_DL2L3_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1e042",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L2",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1e04e",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L2MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a localtion other than the local core's L2 due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2e040",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L2_MEPF",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 hit without dispatch conflicts on Mepf state. due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1e040",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L2_NO_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 without conflict due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4e042",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3e042",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L3_DISP_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 with dispatch conflict due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2e042",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L3_MEPF",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without dispatch conflicts hit on Mepf state. due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1e044",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L3_NO_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without conflict due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1e04c",
|
||||||
|
"EventName": "PM_DPTEG_FROM_LL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from the local chip's L4 cache due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2e048",
|
||||||
|
"EventName": "PM_DPTEG_FROM_LMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from the local chip's Memory due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2e04c",
|
||||||
|
"EventName": "PM_DPTEG_FROM_MEMORY",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a memory location including L4 from local remote or distant due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4e04a",
|
||||||
|
"EventName": "PM_DPTEG_FROM_OFF_CHIP_CACHE",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1e048",
|
||||||
|
"EventName": "PM_DPTEG_FROM_ON_CHIP_CACHE",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB either shared or modified data from another core's L2/L3 on the same chip due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2e046",
|
||||||
|
"EventName": "PM_DPTEG_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1e04a",
|
||||||
|
"EventName": "PM_DPTEG_FROM_RL2L3_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2e04a",
|
||||||
|
"EventName": "PM_DPTEG_FROM_RL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's L4 on the same Node or Group ( Remote) due to a data side request",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300fc",
|
||||||
|
"EventName": "PM_DTLB_MISS",
|
||||||
|
"BriefDescription": "Data PTEG reload",
|
||||||
|
"PublicDescription": "Data PTEG Reloaded (DTLB Miss)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1c058",
|
||||||
|
"EventName": "PM_DTLB_MISS_16G",
|
||||||
|
"BriefDescription": "Data TLB Miss page size 16G",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4c056",
|
||||||
|
"EventName": "PM_DTLB_MISS_16M",
|
||||||
|
"BriefDescription": "Data TLB Miss page size 16M",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2c056",
|
||||||
|
"EventName": "PM_DTLB_MISS_4K",
|
||||||
|
"BriefDescription": "Data TLB Miss page size 4k",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3c056",
|
||||||
|
"EventName": "PM_DTLB_MISS_64K",
|
||||||
|
"BriefDescription": "Data TLB Miss page size 64K",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200f6",
|
||||||
|
"EventName": "PM_LSU_DERAT_MISS",
|
||||||
|
"BriefDescription": "DERAT Reloaded due to a DERAT miss",
|
||||||
|
"PublicDescription": "DERAT Reloaded (Miss)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20066",
|
||||||
|
"EventName": "PM_TLB_MISS",
|
||||||
|
"BriefDescription": "TLB Miss (I + D)",
|
||||||
|
"PublicDescription": ""
|
||||||
|
},
|
||||||
|
]
|
107
lib/libpmcstat/pmu-events/arch/powerpc/power9/cache.json
Normal file
107
lib/libpmcstat/pmu-events/arch/powerpc/power9/cache.json
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300F4",
|
||||||
|
"EventName": "PM_THRD_CONC_RUN_INST",
|
||||||
|
"BriefDescription": "PPC Instructions Finished by this thread when all threads in the core had the run-latch set"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E056",
|
||||||
|
"EventName": "PM_CMPLU_STALL_FLUSH_ANY_THREAD",
|
||||||
|
"BriefDescription": "Cycles in which the NTC instruction is not allowed to complete because any of the 4 threads in the same core suffered a flush, which blocks completion"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D016",
|
||||||
|
"EventName": "PM_CMPLU_STALL_FXLONG",
|
||||||
|
"BriefDescription": "Completion stall due to a long latency scalar fixed point instruction (division, square root)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D016",
|
||||||
|
"EventName": "PM_CMPLU_STALL_FXU",
|
||||||
|
"BriefDescription": "Finish stall due to a scalar fixed point or CR instruction in the execution pipeline. These instructions get routed to the ALU, ALU2, and DIV pipes"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D12A",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL4_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from another chip's L4 on the same Node or Group ( Remote) due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1003C",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DMISS_L2L3",
|
||||||
|
"BriefDescription": "Completion stall by Dcache miss which resolved in L2/L3"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C014",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LMQ_FULL",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a load that missed in the L1 and the LMQ was unable to accept this load miss request because it was full"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14048",
|
||||||
|
"EventName": "PM_INST_FROM_ON_CHIP_CACHE",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded either shared or modified data from another core's L2/L3 on the same chip due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D014",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LOAD_FINISH",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a load instruction with all its dependencies satisfied just going through the LSU pipe to finish"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2404A",
|
||||||
|
"EventName": "PM_INST_FROM_RL4",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from another chip's L4 on the same Node or Group ( Remote) due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1404A",
|
||||||
|
"EventName": "PM_INST_FROM_RL2L3_SHR",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x401EA",
|
||||||
|
"EventName": "PM_THRESH_EXC_128",
|
||||||
|
"BriefDescription": "Threshold counter exceeded a value of 128"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x400F6",
|
||||||
|
"EventName": "PM_BR_MPRED_CMPL",
|
||||||
|
"BriefDescription": "Number of Branch Mispredicts"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2F140",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L2_MEPF",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 hit without dispatch conflicts on Mepf state. due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101E6",
|
||||||
|
"EventName": "PM_THRESH_EXC_4096",
|
||||||
|
"BriefDescription": "Threshold counter exceed a count of 4096"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3F14A",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_RMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's memory on the same Node or Group ( Remote) due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C016",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DMISS_L2L3_CONFLICT",
|
||||||
|
"BriefDescription": "Completion stall due to cache miss that resolves in the L2 or L3 with a conflict"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C01A",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LHS",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a load that hit on an older store and it was waiting for store data"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x401E4",
|
||||||
|
"EventName": "PM_MRK_DTLB_MISS",
|
||||||
|
"BriefDescription": "Marked dtlb miss"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24046",
|
||||||
|
"EventName": "PM_INST_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1002A",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LARX",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a larx waiting to be satisfied"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,32 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1415A",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_DISP_CONFLICT_LDHITST_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from local core's L2 with load hit store conflict due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10058",
|
||||||
|
"EventName": "PM_MEM_LOC_THRESH_IFU",
|
||||||
|
"BriefDescription": "Local Memory above threshold for IFU speculation control"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D028",
|
||||||
|
"EventName": "PM_RADIX_PWC_L2_PDE_FROM_L2",
|
||||||
|
"BriefDescription": "A Page Directory Entry was reloaded to a level 2 page walk cache from the core's L2 data cache"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30012",
|
||||||
|
"EventName": "PM_FLUSH_COMPLETION",
|
||||||
|
"BriefDescription": "The instruction that was next to complete did not complete because it suffered a flush"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D154",
|
||||||
|
"EventName": "PM_MRK_DERAT_MISS_64K",
|
||||||
|
"BriefDescription": "Marked Data ERAT Miss (Data TLB Access) page size 64K"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4016E",
|
||||||
|
"EventName": "PM_THRESH_NOT_MET",
|
||||||
|
"BriefDescription": "Threshold counter did not meet threshold"
|
||||||
|
}
|
||||||
|
]
|
357
lib/libpmcstat/pmu-events/arch/powerpc/power9/frontend.json
Normal file
357
lib/libpmcstat/pmu-events/arch/powerpc/power9/frontend.json
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x25044",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L31_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another core's L3 on the same chip due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101E8",
|
||||||
|
"EventName": "PM_THRESH_EXC_256",
|
||||||
|
"BriefDescription": "Threshold counter exceed a count of 256"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4504E",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L3MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a location other than the local core's L3 due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1006A",
|
||||||
|
"EventName": "PM_NTC_ISSUE_HELD_DARQ_FULL",
|
||||||
|
"BriefDescription": "The NTC instruction is being held at dispatch because there are no slots in the DARQ for it"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4E016",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LSAQ_ARB",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a load or store that was held in LSAQ because an older instruction from SRQ or LRQ won arbitration to the LSU pipe when this instruction tried to launch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1001A",
|
||||||
|
"EventName": "PM_LSU_SRQ_FULL_CYC",
|
||||||
|
"BriefDescription": "Cycles in which the Store Queue is full on all 4 slices. This is event is not per thread. All the threads will see the same count for this core resource"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E15E",
|
||||||
|
"EventName": "PM_MRK_L2_TM_REQ_ABORT",
|
||||||
|
"BriefDescription": "TM abort"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34052",
|
||||||
|
"EventName": "PM_INST_SYS_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) mispredicted. Either the original scope was too small (Chip/Group) or the original scope was System and it should have been smaller. Counts for an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20114",
|
||||||
|
"EventName": "PM_MRK_L2_RC_DISP",
|
||||||
|
"BriefDescription": "Marked Instruction RC dispatched in L2"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C044",
|
||||||
|
"EventName": "PM_DATA_FROM_L31_ECO_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Modified (M) data from another core's ECO L3 on the same chip due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1C044",
|
||||||
|
"EventName": "PM_DATA_FROM_L3_NO_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 without conflict due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x44050",
|
||||||
|
"EventName": "PM_INST_SYS_PUMP_MPRED_RTY",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) ended up larger than Initial Pump Scope (Chip/Group) for an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30154",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_DCLAIM",
|
||||||
|
"BriefDescription": "Marked store had to do a dclaim"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30014",
|
||||||
|
"EventName": "PM_CMPLU_STALL_STORE_FIN_ARB",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a store waiting for a slot in the store finish pipe. This means the instruction is ready to finish but there are instructions ahead of it, using the finish pipe"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3E054",
|
||||||
|
"EventName": "PM_LD_MISS_L1",
|
||||||
|
"BriefDescription": "Load Missed L1, counted at execution time (can be greater than loads finished). LMQ merges are not included in this count. i.e. if a load instruction misses on an address that is already allocated on the LMQ, this event will not increment for that load). Note that this count is per slice, so if a load spans multiple slices this event will increment multiple times for a single load."
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E01A",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LSU_FLUSH_NEXT",
|
||||||
|
"BriefDescription": "Completion stall of one cycle because the LSU requested to flush the next iop in the sequence. It takes 1 cycle for the ISU to process this request before the LSU instruction is allowed to complete"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D01C",
|
||||||
|
"EventName": "PM_CMPLU_STALL_STCX",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a stcx waiting for response from L2"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C010",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LSU",
|
||||||
|
"BriefDescription": "Completion stall by LSU instruction"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C042",
|
||||||
|
"EventName": "PM_DATA_FROM_L3_MEPF",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 without dispatch conflicts hit on Mepf state due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4E012",
|
||||||
|
"EventName": "PM_CMPLU_STALL_MTFPSCR",
|
||||||
|
"BriefDescription": "Completion stall because the ISU is updating the register and notifying the Effective Address Table (EAT)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x100F2",
|
||||||
|
"EventName": "PM_1PLUS_PPC_CMPL",
|
||||||
|
"BriefDescription": "1 or more ppc insts finished"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3001C",
|
||||||
|
"EventName": "PM_LSU_REJECT_LMQ_FULL",
|
||||||
|
"BriefDescription": "LSU Reject due to LMQ full (up to 4 per cycles)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15046",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L31_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another core's L3 on the same chip due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1015E",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_RD_T_INTV",
|
||||||
|
"BriefDescription": "Sampled Read got a T intervention"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101EC",
|
||||||
|
"EventName": "PM_THRESH_MET",
|
||||||
|
"BriefDescription": "threshold exceeded"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10020",
|
||||||
|
"EventName": "PM_PMC4_REWIND",
|
||||||
|
"BriefDescription": "PMC4 Rewind Event"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x301EA",
|
||||||
|
"EventName": "PM_THRESH_EXC_1024",
|
||||||
|
"BriefDescription": "Threshold counter exceeded a value of 1024"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34056",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LSU_MFSPR",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a mfspr instruction targeting an LSU SPR and it was waiting for the register data to be returned"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x44056",
|
||||||
|
"EventName": "PM_VECTOR_ST_CMPL",
|
||||||
|
"BriefDescription": "Number of vector store instructions completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C124",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_DISP_CONFLICT_OTHER",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 with dispatch conflict due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C12A",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL2L3_SHR_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30060",
|
||||||
|
"EventName": "PM_TM_TRANS_RUN_INST",
|
||||||
|
"BriefDescription": "Run instructions completed in transactional state (gated by the run latch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C014",
|
||||||
|
"EventName": "PM_CMPLU_STALL_STORE_FINISH",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a store with all its dependencies met, just waiting to go through the LSU pipe to finish"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3515A",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_ON_CHIP_CACHE_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload either shared or modified data from another core's L2/L3 on the same chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34050",
|
||||||
|
"EventName": "PM_INST_SYS_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was system pump (prediction=correct) for an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3015E",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_CLAIM_RTY",
|
||||||
|
"BriefDescription": "Sampled store did a rwitm and got a rty"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x0",
|
||||||
|
"EventName": "PM_SUSPENDED",
|
||||||
|
"BriefDescription": "Counter OFF"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10010",
|
||||||
|
"EventName": "PM_PMC4_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 4"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3E04A",
|
||||||
|
"EventName": "PM_DPTEG_FROM_RMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's memory on the same Node or Group ( Remote) due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2F152",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_DCLAIM_CYC",
|
||||||
|
"BriefDescription": "cycles L2 RC took for a dclaim"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10004",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LRQ_OTHER",
|
||||||
|
"BriefDescription": "Finish stall due to LRQ miscellaneous reasons, lost arbitration to LMQ slot, bank collisions, set prediction cleanup, set prediction multihit and others"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F150",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_RWITM_CYC",
|
||||||
|
"BriefDescription": "cycles L2 RC took for a rwitm"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4E042",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F054",
|
||||||
|
"EventName": "PM_TLB_HIT",
|
||||||
|
"BriefDescription": "Number of times the TLB had the data required by the instruction. Applies to both HPT and RPT"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C01E",
|
||||||
|
"EventName": "PM_CMPLU_STALL_SYNC_PMU_INT",
|
||||||
|
"BriefDescription": "Cycles in which the NTC instruction is waiting for a synchronous PMU interrupt"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24050",
|
||||||
|
"EventName": "PM_IOPS_CMPL",
|
||||||
|
"BriefDescription": "Internal Operations completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1515C",
|
||||||
|
"EventName": "PM_SYNC_MRK_BR_MPRED",
|
||||||
|
"BriefDescription": "Marked Branch mispredict that can cause a synchronous interrupt"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300FA",
|
||||||
|
"EventName": "PM_INST_FROM_L3MISS",
|
||||||
|
"BriefDescription": "Marked instruction was reloaded from a location beyond the local chiplet"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15044",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L3_NO_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without conflict due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15152",
|
||||||
|
"EventName": "PM_SYNC_MRK_BR_LINK",
|
||||||
|
"BriefDescription": "Marked Branch and link branch that can cause a synchronous interrupt"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E050",
|
||||||
|
"EventName": "PM_CMPLU_STALL_TEND",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a tend instruction awaiting response from L2"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1013E",
|
||||||
|
"EventName": "PM_MRK_LD_MISS_EXPOSED_CYC",
|
||||||
|
"BriefDescription": "Marked Load exposed Miss (use edge detect to count #)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x25042",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L3_MEPF",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without dispatch conflicts hit on Mepf state. due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14054",
|
||||||
|
"EventName": "PM_INST_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Pump prediction correct. Counts across all types of pumps for an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4015E",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_RD_RTY",
|
||||||
|
"BriefDescription": "Sampled L2 reads retry count"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x45048",
|
||||||
|
"EventName": "PM_IPTEG_FROM_DL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x44052",
|
||||||
|
"EventName": "PM_INST_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Pump misprediction. Counts across all types of pumps for an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30026",
|
||||||
|
"EventName": "PM_CMPLU_STALL_STORE_DATA",
|
||||||
|
"BriefDescription": "Finish stall because the next to finish instruction was a store waiting on data"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x301E6",
|
||||||
|
"EventName": "PM_MRK_DERAT_MISS",
|
||||||
|
"BriefDescription": "Erat Miss (TLB Access) All page sizes"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24154",
|
||||||
|
"EventName": "PM_THRESH_ACC",
|
||||||
|
"BriefDescription": "This event increments every time the threshold event counter ticks. Thresholding must be enabled (via MMCRA) and the thresholding start event must occur for this counter to increment. It will stop incrementing when the thresholding stop event occurs or when thresholding is disabled, until the next time a configured thresholding start event occurs."
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2015E",
|
||||||
|
"EventName": "PM_MRK_FAB_RSP_RWITM_RTY",
|
||||||
|
"BriefDescription": "Sampled store did a rwitm and got a rty"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200FA",
|
||||||
|
"EventName": "PM_BR_TAKEN_CMPL",
|
||||||
|
"BriefDescription": "New event for Branch Taken"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x35044",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L31_ECO_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another core's ECO L3 on the same chip due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C010",
|
||||||
|
"EventName": "PM_CMPLU_STALL_STORE_PIPE_ARB",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a store waiting for the next relaunch opportunity after an internal reject. This means the instruction is ready to relaunch and tried once but lost arbitration"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C01C",
|
||||||
|
"EventName": "PM_CMPLU_STALL_ST_FWD",
|
||||||
|
"BriefDescription": "Completion stall due to store forward"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3515C",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL4",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's L4 on the same Node or Group ( Remote) due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D14C",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L31_ECO_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another core's ECO L3 on the same chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40116",
|
||||||
|
"EventName": "PM_MRK_LARX_FIN",
|
||||||
|
"BriefDescription": "Larx finished"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1003A",
|
||||||
|
"EventName": "PM_CMPLU_STALL_LSU_FIN",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was an LSU op (other than a load or a store) with all its dependencies met and just going through the LSU pipe to finish"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3012A",
|
||||||
|
"EventName": "PM_MRK_L2_RC_DONE",
|
||||||
|
"BriefDescription": "Marked RC done"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x45044",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L31_ECO_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another core's ECO L3 on the same chip due to a instruction side request"
|
||||||
|
}
|
||||||
|
]
|
627
lib/libpmcstat/pmu-events/arch/powerpc/power9/marked.json
Normal file
627
lib/libpmcstat/pmu-events/arch/powerpc/power9/marked.json
Normal file
@ -0,0 +1,627 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3013E",
|
||||||
|
"EventName": "PM_MRK_STALL_CMPLU_CYC",
|
||||||
|
"BriefDescription": "Number of cycles the marked instruction is experiencing a stall while it is next to complete (NTC)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F056",
|
||||||
|
"EventName": "PM_RADIX_PWC_L1_PDE_FROM_L3MISS",
|
||||||
|
"BriefDescription": "A Page Directory Entry was reloaded to a level 1 page walk cache from beyond the core's L3 data cache. The source could be local/remote/distant memory or another core's cache"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24158",
|
||||||
|
"EventName": "PM_MRK_INST",
|
||||||
|
"BriefDescription": "An instruction was marked. Includes both Random Instruction Sampling (RIS) at decode time and Random Event Sampling (RES) at the time the configured event happens"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E046",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L31_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another core's L3 on the same chip due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3C04A",
|
||||||
|
"EventName": "PM_DATA_FROM_RMEM",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's memory on the same Node or Group ( Remote) due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C01C",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DMISS_REMOTE",
|
||||||
|
"BriefDescription": "Completion stall by Dcache miss which resolved from remote chip (cache or memory)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x44040",
|
||||||
|
"EventName": "PM_INST_FROM_L2_DISP_CONFLICT_OTHER",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L2 with dispatch conflict due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E050",
|
||||||
|
"EventName": "PM_DARQ0_7_9_ENTRIES",
|
||||||
|
"BriefDescription": "Cycles in which 7,8, or 9 DARQ entries (out of 12) are in use"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D02E",
|
||||||
|
"EventName": "PM_RADIX_PWC_L3_PTE_FROM_L2",
|
||||||
|
"BriefDescription": "A Page Table Entry was reloaded to a level 3 page walk cache from the core's L2 data cache. This implies that a level 4 PWC access was not necessary for this translation"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3F05E",
|
||||||
|
"EventName": "PM_RADIX_PWC_L3_PTE_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Table Entry was reloaded to a level 3 page walk cache from the core's L3 data cache. This implies that a level 4 PWC access was not necessary for this translation"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E01E",
|
||||||
|
"EventName": "PM_CMPLU_STALL_NTC_FLUSH",
|
||||||
|
"BriefDescription": "Completion stall due to ntc flush"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F14C",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_LL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from the local chip's L4 cache due to a marked data side request.. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20130",
|
||||||
|
"EventName": "PM_MRK_INST_DECODED",
|
||||||
|
"BriefDescription": "An instruction was marked at decode time. Random Instruction Sampling (RIS) only"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3F144",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L31_ECO_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another core's ECO L3 on the same chip due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D058",
|
||||||
|
"EventName": "PM_VECTOR_FLOP_CMPL",
|
||||||
|
"BriefDescription": "Vector FP instruction completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14040",
|
||||||
|
"EventName": "PM_INST_FROM_L2_NO_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L2 without conflict due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4404E",
|
||||||
|
"EventName": "PM_INST_FROM_L3MISS_MOD",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from a location other than the local core's L3 due to a instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3003A",
|
||||||
|
"EventName": "PM_CMPLU_STALL_EXCEPTION",
|
||||||
|
"BriefDescription": "Cycles in which the NTC instruction is not allowed to complete because it was interrupted by ANY exception, which has to be serviced before the instruction can complete"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F144",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L31_ECO_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another core's ECO L3 on the same chip due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3E044",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L31_ECO_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another core's ECO L3 on the same chip due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300F6",
|
||||||
|
"EventName": "PM_L1_DCACHE_RELOAD_VALID",
|
||||||
|
"BriefDescription": "DL1 reloaded due to Demand Load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1415E",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3MISS_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from a location other than the local core's L3 due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E052",
|
||||||
|
"EventName": "PM_CMPLU_STALL_SLB",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was awaiting L2 response for an SLB"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4404C",
|
||||||
|
"EventName": "PM_INST_FROM_DMEM",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from another chip's memory on the same Node or Group (Distant) due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3000E",
|
||||||
|
"EventName": "PM_FXU_1PLUS_BUSY",
|
||||||
|
"BriefDescription": "At least one of the 4 FXU units is busy"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C048",
|
||||||
|
"EventName": "PM_DATA_FROM_LMEM",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from the local chip's Memory due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3000A",
|
||||||
|
"EventName": "PM_CMPLU_STALL_PM",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was issued to the Permute execution pipe and waiting to finish. Includes permute and decimal fixed point instructions (128 bit BCD arithmetic) + a few 128 bit fixpoint add/subtract instructions with carry. Not qualified by vector or multicycle"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1504E",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L2MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a location other than the local core's L2 due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1C052",
|
||||||
|
"EventName": "PM_DATA_GRP_PUMP_MPRED_RTY",
|
||||||
|
"BriefDescription": "Final Pump Scope (Group) ended up larger than Initial Pump Scope (Chip) for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30008",
|
||||||
|
"EventName": "PM_DISP_STARVED",
|
||||||
|
"BriefDescription": "Dispatched Starved"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14042",
|
||||||
|
"EventName": "PM_INST_FROM_L2",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L2 due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4000C",
|
||||||
|
"EventName": "PM_FREQ_UP",
|
||||||
|
"BriefDescription": "Power Management: Above Threshold A"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3C050",
|
||||||
|
"EventName": "PM_DATA_SYS_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was system pump (prediction=correct) for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x25040",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L2_MEPF",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 hit without dispatch conflicts on Mepf state. due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10132",
|
||||||
|
"EventName": "PM_MRK_INST_ISSUED",
|
||||||
|
"BriefDescription": "Marked instruction issued"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1C046",
|
||||||
|
"EventName": "PM_DATA_FROM_L31_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another core's L3 on the same chip due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C044",
|
||||||
|
"EventName": "PM_DATA_FROM_L31_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Modified (M) data from another core's L3 on the same chip due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C04A",
|
||||||
|
"EventName": "PM_DATA_FROM_RL4",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's L4 on the same Node or Group ( Remote) due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24044",
|
||||||
|
"EventName": "PM_INST_FROM_L31_MOD",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Modified (M) data from another core's L3 on the same chip due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C050",
|
||||||
|
"EventName": "PM_DATA_SYS_PUMP_MPRED_RTY",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) ended up larger than Initial Pump Scope (Chip/Group) for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C052",
|
||||||
|
"EventName": "PM_DATA_GRP_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Final Pump Scope (Group) ended up either larger or smaller than Initial Pump Scope for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2F148",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_LMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from the local chip's Memory due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D01A",
|
||||||
|
"EventName": "PM_CMPLU_STALL_EIEIO",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction is an EIEIO waiting for response from L2"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F14E",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L3MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a location other than the local core's L3 due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F05A",
|
||||||
|
"EventName": "PM_RADIX_PWC_L4_PTE_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Table Entry was reloaded to a level 4 page walk cache from the core's L3 data cache. This is the deepest level of PWC possible for a translation"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F05A",
|
||||||
|
"EventName": "PM_RADIX_PWC_L4_PTE_FROM_L2",
|
||||||
|
"BriefDescription": "A Page Table Entry was reloaded to a level 4 page walk cache from the core's L2 data cache. This is the deepest level of PWC possible for a translation"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30068",
|
||||||
|
"EventName": "PM_L1_ICACHE_RELOADED_PREF",
|
||||||
|
"BriefDescription": "Counts all Icache prefetch reloads ( includes demand turned into prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C04A",
|
||||||
|
"EventName": "PM_DATA_FROM_OFF_CHIP_CACHE",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x400FE",
|
||||||
|
"EventName": "PM_DATA_FROM_MEMORY",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from a memory location including L4 from local remote or distant due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3F058",
|
||||||
|
"EventName": "PM_RADIX_PWC_L1_PDE_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Directory Entry was reloaded to a level 1 page walk cache from the core's L3 data cache"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3C052",
|
||||||
|
"EventName": "PM_DATA_SYS_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) mispredicted. Either the original scope was too small (Chip/Group) or the original scope was System and it should have been smaller. Counts for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D142",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L3",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30050",
|
||||||
|
"EventName": "PM_SYS_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was system pump for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30028",
|
||||||
|
"EventName": "PM_CMPLU_STALL_SPEC_FINISH",
|
||||||
|
"BriefDescription": "Finish stall while waiting for the non-speculative finish of either a stcx waiting for its result or a load waiting for non-critical sectors of data and ECC"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x400F4",
|
||||||
|
"EventName": "PM_RUN_PURR",
|
||||||
|
"BriefDescription": "Run_PURR"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3404C",
|
||||||
|
"EventName": "PM_INST_FROM_DL4",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from another chip's L4 on a different Node or Group (Distant) due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3D05A",
|
||||||
|
"EventName": "PM_NTC_ISSUE_HELD_OTHER",
|
||||||
|
"BriefDescription": "The NTC instruction is being held at dispatch during regular pipeline cycles, or because the VSU is busy with multi-cycle instructions, or because of a write-back collision with VSU"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E048",
|
||||||
|
"EventName": "PM_DPTEG_FROM_LMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from the local chip's Memory due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D02A",
|
||||||
|
"EventName": "PM_RADIX_PWC_L3_PDE_FROM_L2",
|
||||||
|
"BriefDescription": "A Page Directory Entry was reloaded to a level 3 page walk cache from the core's L2 data cache"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F05C",
|
||||||
|
"EventName": "PM_RADIX_PWC_L3_PDE_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Directory Entry was reloaded to a level 3 page walk cache from the core's L3 data cache"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D04A",
|
||||||
|
"EventName": "PM_DARQ0_0_3_ENTRIES",
|
||||||
|
"BriefDescription": "Cycles in which 3 or less DARQ entries (out of 12) are in use"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1404C",
|
||||||
|
"EventName": "PM_INST_FROM_LL4",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from the local chip's L4 cache due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200FD",
|
||||||
|
"EventName": "PM_L1_ICACHE_MISS",
|
||||||
|
"BriefDescription": "Demand iCache Miss"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34040",
|
||||||
|
"EventName": "PM_INST_FROM_L2_DISP_CONFLICT_LDHITST",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L2 with load hit store conflict due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20138",
|
||||||
|
"EventName": "PM_MRK_ST_NEST",
|
||||||
|
"BriefDescription": "Marked store sent to nest"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x44048",
|
||||||
|
"EventName": "PM_INST_FROM_DL2L3_MOD",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x35046",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L21_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another core's L2 on the same chip due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C04E",
|
||||||
|
"EventName": "PM_DATA_FROM_L3MISS_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from a location other than the local core's L3 due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x401E0",
|
||||||
|
"EventName": "PM_MRK_INST_CMPL",
|
||||||
|
"BriefDescription": "marked instruction completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C128",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_DL2L3_SHR_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34044",
|
||||||
|
"EventName": "PM_INST_FROM_L31_ECO_SHR",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Shared (S) data from another core's ECO L3 on the same chip due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4E018",
|
||||||
|
"EventName": "PM_CMPLU_STALL_NTC_DISP_FIN",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was one that must finish at dispatch."
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E05E",
|
||||||
|
"EventName": "PM_LMQ_EMPTY_CYC",
|
||||||
|
"BriefDescription": "Cycles in which the LMQ has no pending load misses for this thread"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C122",
|
||||||
|
"EventName": "PM_DARQ1_0_3_ENTRIES",
|
||||||
|
"BriefDescription": "Cycles in which 3 or fewer DARQ1 entries (out of 12) are in use"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F058",
|
||||||
|
"EventName": "PM_RADIX_PWC_L2_PTE_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Table Entry was reloaded to a level 2 page walk cache from the core's L3 data cache. This implies that level 3 and level 4 PWC accesses were not necessary for this translation"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14046",
|
||||||
|
"EventName": "PM_INST_FROM_L31_SHR",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Shared (S) data from another core's L3 on the same chip due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3012C",
|
||||||
|
"EventName": "PM_MRK_ST_FWD",
|
||||||
|
"BriefDescription": "Marked st forwards"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101E0",
|
||||||
|
"EventName": "PM_MRK_INST_DISP",
|
||||||
|
"BriefDescription": "The thread has dispatched a randomly sampled marked instruction"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1D058",
|
||||||
|
"EventName": "PM_DARQ0_10_12_ENTRIES",
|
||||||
|
"BriefDescription": "Cycles in which 10 or more DARQ entries (out of 12) are in use"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300FE",
|
||||||
|
"EventName": "PM_DATA_FROM_L3MISS",
|
||||||
|
"BriefDescription": "Demand LD - L3 Miss (not L2 hit and not L3 hit)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30006",
|
||||||
|
"EventName": "PM_CMPLU_STALL_OTHER_CMPL",
|
||||||
|
"BriefDescription": "Instructions the core completed while this tread was stalled"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1005C",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DP",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a scalar instruction issued to the Double Precision execution pipe and waiting to finish. Includes binary floating point instructions in 32 and 64 bit binary floating point format. Not qualified multicycle. Qualified by NOT vector"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E042",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L2",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1016E",
|
||||||
|
"EventName": "PM_MRK_BR_CMPL",
|
||||||
|
"BriefDescription": "Branch Instruction completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2013A",
|
||||||
|
"EventName": "PM_MRK_BRU_FIN",
|
||||||
|
"BriefDescription": "bru marked instr finish"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F05E",
|
||||||
|
"EventName": "PM_RADIX_PWC_L3_PTE_FROM_L3MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was reloaded to a level 3 page walk cache from beyond the core's L3 data cache. This implies that a level 4 PWC access was not necessary for this translation. The source could be local/remote/distant memory or another core's cache"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x400FC",
|
||||||
|
"EventName": "PM_ITLB_MISS",
|
||||||
|
"BriefDescription": "ITLB Reloaded. Counts 1 per ITLB miss for HPT but multiple for radix depending on number of levels traveresed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E044",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L3_NO_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without conflict due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D05A",
|
||||||
|
"EventName": "PM_NON_MATH_FLOP_CMPL",
|
||||||
|
"BriefDescription": "Non FLOP operation completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x101E2",
|
||||||
|
"EventName": "PM_MRK_BR_TAKEN_CMPL",
|
||||||
|
"BriefDescription": "Marked Branch Taken completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3E158",
|
||||||
|
"EventName": "PM_MRK_STCX_FAIL",
|
||||||
|
"BriefDescription": "marked stcx failed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1C048",
|
||||||
|
"EventName": "PM_DATA_FROM_ON_CHIP_CACHE",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded either shared or modified data from another core's L2/L3 on the same chip due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1C054",
|
||||||
|
"EventName": "PM_DATA_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Pump prediction correct. Counts across all types of pumps for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4405E",
|
||||||
|
"EventName": "PM_DARQ_STORE_REJECT",
|
||||||
|
"BriefDescription": "The DARQ attempted to transmit a store into an LSAQ or SRQ entry but It was rejected. Divide by PM_DARQ_STORE_XMIT to get reject ratio"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1C042",
|
||||||
|
"EventName": "PM_DATA_FROM_L2",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1D14C",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_LL4",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from the local chip's L4 cache due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1006C",
|
||||||
|
"EventName": "PM_RUN_CYC_ST_MODE",
|
||||||
|
"BriefDescription": "Cycles run latch is set and core is in ST mode"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3C044",
|
||||||
|
"EventName": "PM_DATA_FROM_L31_ECO_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another core's ECO L3 on the same chip due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C052",
|
||||||
|
"EventName": "PM_DATA_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Pump misprediction. Counts across all types of pumps for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20050",
|
||||||
|
"EventName": "PM_GRP_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope and data sourced across this scope was group pump for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F150",
|
||||||
|
"EventName": "PM_MRK_ST_L2DISP_TO_CMPL_CYC",
|
||||||
|
"BriefDescription": "cycles from L2 rc disp to l2 rc completion"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4505A",
|
||||||
|
"EventName": "PM_SP_FLOP_CMPL",
|
||||||
|
"BriefDescription": "SP instruction completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4000A",
|
||||||
|
"EventName": "PM_ISQ_36_44_ENTRIES",
|
||||||
|
"BriefDescription": "Cycles in which 36 or more Issue Queue entries are in use. This is a shared event, not per thread. There are 44 issue queue entries across 4 slices in the whole core"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C12E",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_LL4_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from the local chip's L4 cache due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C058",
|
||||||
|
"EventName": "PM_MEM_PREF",
|
||||||
|
"BriefDescription": "Memory prefetch for this thread. Includes L4"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40012",
|
||||||
|
"EventName": "PM_L1_ICACHE_RELOADED_ALL",
|
||||||
|
"BriefDescription": "Counts all Icache reloads includes demand, prefetch, prefetch turned into demand and demand turned into prefetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3003C",
|
||||||
|
"EventName": "PM_CMPLU_STALL_NESTED_TEND",
|
||||||
|
"BriefDescription": "Completion stall because the ISU is updating the TEXASR to keep track of the nested tend and decrement the TEXASR nested level. This is a short delay"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3D05C",
|
||||||
|
"EventName": "PM_DISP_HELD_HB_FULL",
|
||||||
|
"BriefDescription": "Dispatch held due to History Buffer full. Could be GPR/VSR/VMR/FPR/CR/XVF; CR; XVF (XER/VSCR/FPSCR)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30052",
|
||||||
|
"EventName": "PM_SYS_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) mispredicted. Either the original scope was too small (Chip/Group) or the original scope was System and it should have been smaller. Counts for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E044",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L31_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another core's L3 on the same chip due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34048",
|
||||||
|
"EventName": "PM_INST_FROM_DL2L3_SHR",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x45042",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15042",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L2",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1C05E",
|
||||||
|
"EventName": "PM_MEM_LOC_THRESH_LSU_MED",
|
||||||
|
"BriefDescription": "Local memory above threshold for data prefetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40134",
|
||||||
|
"EventName": "PM_MRK_INST_TIMEO",
|
||||||
|
"BriefDescription": "marked Instruction finish timeout (instruction lost)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1002C",
|
||||||
|
"EventName": "PM_L1_DCACHE_RELOADED_ALL",
|
||||||
|
"BriefDescription": "L1 data cache reloaded for demand. If MMCR1[16] is 1, prefetches will be included as well"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30130",
|
||||||
|
"EventName": "PM_MRK_INST_FIN",
|
||||||
|
"BriefDescription": "marked instruction finished"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F14A",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_RL2L3_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked data side request.. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3504E",
|
||||||
|
"EventName": "PM_DARQ0_4_6_ENTRIES",
|
||||||
|
"BriefDescription": "Cycles in which 4, 5, or 6 DARQ entries (out of 12) are in use"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30064",
|
||||||
|
"EventName": "PM_DARQ_STORE_XMIT",
|
||||||
|
"BriefDescription": "The DARQ attempted to transmit a store into an LSAQ or SRQ entry. Includes rejects. Not qualified by thread, so it includes counts for the whole core"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x45046",
|
||||||
|
"EventName": "PM_IPTEG_FROM_L21_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another core's L2 on the same chip due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C016",
|
||||||
|
"EventName": "PM_CMPLU_STALL_PASTE",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a paste waiting for response from L2"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24156",
|
||||||
|
"EventName": "PM_MRK_STCX_FIN",
|
||||||
|
"BriefDescription": "Number of marked stcx instructions finished. This includes instructions in the speculative path of a branch that may be flushed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15150",
|
||||||
|
"EventName": "PM_SYNC_MRK_PROBE_NOP",
|
||||||
|
"BriefDescription": "Marked probeNops which can cause synchronous interrupts"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x301E4",
|
||||||
|
"EventName": "PM_MRK_BR_MPRED_CMPL",
|
||||||
|
"BriefDescription": "Marked Branch Mispredicted"
|
||||||
|
}
|
||||||
|
]
|
127
lib/libpmcstat/pmu-events/arch/powerpc/power9/memory.json
Normal file
127
lib/libpmcstat/pmu-events/arch/powerpc/power9/memory.json
Normal file
@ -0,0 +1,127 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3006E",
|
||||||
|
"EventName": "PM_NEST_REF_CLK",
|
||||||
|
"BriefDescription": "Multiply by 4 to obtain the number of PB cycles"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20010",
|
||||||
|
"EventName": "PM_PMC1_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2005A",
|
||||||
|
"EventName": "PM_DARQ1_7_9_ENTRIES",
|
||||||
|
"BriefDescription": "Cycles in which 7 to 9 DARQ1 entries (out of 12) are in use"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3C048",
|
||||||
|
"EventName": "PM_DATA_FROM_DL2L3_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10008",
|
||||||
|
"EventName": "PM_RUN_SPURR",
|
||||||
|
"BriefDescription": "Run SPURR"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200F6",
|
||||||
|
"EventName": "PM_LSU_DERAT_MISS",
|
||||||
|
"BriefDescription": "DERAT Reloaded due to a DERAT miss"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C048",
|
||||||
|
"EventName": "PM_DATA_FROM_DL2L3_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1D15E",
|
||||||
|
"EventName": "PM_MRK_RUN_CYC",
|
||||||
|
"BriefDescription": "Run cycles in which a marked instruction is in the pipeline"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4003E",
|
||||||
|
"EventName": "PM_LD_CMPL",
|
||||||
|
"BriefDescription": "count of Loads completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C042",
|
||||||
|
"EventName": "PM_DATA_FROM_L3",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L3 due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D02C",
|
||||||
|
"EventName": "PM_PMC1_REWIND",
|
||||||
|
"BriefDescription": ""
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15158",
|
||||||
|
"EventName": "PM_SYNC_MRK_L2HIT",
|
||||||
|
"BriefDescription": "Marked L2 Hits that can throw a synchronous interrupt"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3404A",
|
||||||
|
"EventName": "PM_INST_FROM_RMEM",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from another chip's memory on the same Node or Group ( Remote) due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x301E2",
|
||||||
|
"EventName": "PM_MRK_ST_CMPL",
|
||||||
|
"BriefDescription": "Marked store completed and sent to nest"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1C050",
|
||||||
|
"EventName": "PM_DATA_CHIP_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was chip pump (prediction=correct) for a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C040",
|
||||||
|
"EventName": "PM_DATA_FROM_L2_DISP_CONFLICT_OTHER",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 with dispatch conflict due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E05C",
|
||||||
|
"EventName": "PM_LSU_REJECT_ERAT_MISS",
|
||||||
|
"BriefDescription": "LSU Reject due to ERAT (up to 4 per cycles)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1000A",
|
||||||
|
"EventName": "PM_PMC3_REWIND",
|
||||||
|
"BriefDescription": "PMC3 rewind event. A rewind happens when a speculative event (such as latency or CPI stack) is selected on PMC3 and the stall reason or reload source did not match the one programmed in PMC3. When this occurs, the count in PMC3 will not change."
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3C058",
|
||||||
|
"EventName": "PM_LARX_FIN",
|
||||||
|
"BriefDescription": "Larx finished"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1C040",
|
||||||
|
"EventName": "PM_DATA_FROM_L2_NO_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 without conflict due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C040",
|
||||||
|
"EventName": "PM_DATA_FROM_L2_MEPF",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 hit without dispatch conflicts on Mepf state due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E05A",
|
||||||
|
"EventName": "PM_LRQ_REJECT",
|
||||||
|
"BriefDescription": "Internal LSU reject from LRQ. Rejects cause the load to go back to LRQ, but it stays contained within the LSU once it gets issued. This event counts the number of times the LRQ attempts to relaunch an instruction after a reject. Any load can suffer multiple rejects"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C05C",
|
||||||
|
"EventName": "PM_INST_GRP_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was group pump (prediction=correct) for an instruction fetch (demand only)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D056",
|
||||||
|
"EventName": "PM_NON_FMA_FLOP_CMPL",
|
||||||
|
"BriefDescription": "Non FMA instruction completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3E050",
|
||||||
|
"EventName": "PM_DARQ1_4_6_ENTRIES",
|
||||||
|
"BriefDescription": "Cycles in which 4, 5, or 6 DARQ1 entries (out of 12) are in use"
|
||||||
|
}
|
||||||
|
]
|
2337
lib/libpmcstat/pmu-events/arch/powerpc/power9/other.json
Normal file
2337
lib/libpmcstat/pmu-events/arch/powerpc/power9/other.json
Normal file
File diff suppressed because it is too large
Load Diff
532
lib/libpmcstat/pmu-events/arch/powerpc/power9/pipeline.json
Normal file
532
lib/libpmcstat/pmu-events/arch/powerpc/power9/pipeline.json
Normal file
@ -0,0 +1,532 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D04C",
|
||||||
|
"EventName": "PM_DFU_BUSY",
|
||||||
|
"BriefDescription": "Cycles in which all 4 Decimal Floating Point units are busy. The DFU is running at capacity"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x100F6",
|
||||||
|
"EventName": "PM_IERAT_RELOAD",
|
||||||
|
"BriefDescription": "Number of I-ERAT reloads"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x201E2",
|
||||||
|
"EventName": "PM_MRK_LD_MISS_L1",
|
||||||
|
"BriefDescription": "Marked DL1 Demand Miss counted at exec time. Note that this count is per slice, so if a load spans multiple slices this event will increment multiple times for a single load."
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40010",
|
||||||
|
"EventName": "PM_PMC3_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 3"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1005A",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DFLONG",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a multi-cycle instruction issued to the Decimal Floating Point execution pipe and waiting to finish. Includes decimal floating point instructions + 128 bit binary floating point instructions. Qualified by multicycle"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D140",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_ON_CHIP_CACHE",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded either shared or modified data from another core's L2/L3 on the same chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3F14C",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_DL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's L4 on a different Node or Group (Distant) due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E040",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L2_NO_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 without conflict due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24052",
|
||||||
|
"EventName": "PM_FXU_IDLE",
|
||||||
|
"BriefDescription": "Cycles in which FXU0, FXU1, FXU2, and FXU3 are all idle"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E054",
|
||||||
|
"EventName": "PM_CMPLU_STALL",
|
||||||
|
"BriefDescription": "Nothing completed and ICT not empty"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2",
|
||||||
|
"EventName": "PM_INST_CMPL",
|
||||||
|
"BriefDescription": "Number of PowerPC Instructions that completed."
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3D058",
|
||||||
|
"EventName": "PM_VSU_DP_FSQRT_FDIV",
|
||||||
|
"BriefDescription": "vector versions of fdiv,fsqrt"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10006",
|
||||||
|
"EventName": "PM_DISP_HELD",
|
||||||
|
"BriefDescription": "Dispatch Held"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200F8",
|
||||||
|
"EventName": "PM_EXT_INT",
|
||||||
|
"BriefDescription": "external interrupt"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20008",
|
||||||
|
"EventName": "PM_ICT_EMPTY_CYC",
|
||||||
|
"BriefDescription": "Cycles in which the ICT is completely empty. No itags are assigned to any thread"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F146",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L21_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another core's L2 on the same chip due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10056",
|
||||||
|
"EventName": "PM_MEM_READ",
|
||||||
|
"BriefDescription": "Reads from Memory from this thread (includes data/inst/xlate/l1prefetch/inst prefetch). Includes L4"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3C04C",
|
||||||
|
"EventName": "PM_DATA_FROM_DL4",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's L4 on a different Node or Group (Distant) due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4E046",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L21_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another core's L2 on the same chip due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E016",
|
||||||
|
"EventName": "PM_NTC_ISSUE_HELD_ARB",
|
||||||
|
"BriefDescription": "The NTC instruction is being held at dispatch because it lost arbitration onto the issue pipe to another instruction (from the same thread or a different thread)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15156",
|
||||||
|
"EventName": "PM_SYNC_MRK_FX_DIVIDE",
|
||||||
|
"BriefDescription": "Marked fixed point divide that can cause a synchronous interrupt"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1C056",
|
||||||
|
"EventName": "PM_DERAT_MISS_4K",
|
||||||
|
"BriefDescription": "Data ERAT Miss (Data TLB Access) page size 4K"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2F142",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L3_MEPF",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without dispatch conflicts hit on Mepf state. due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C15C",
|
||||||
|
"EventName": "PM_MRK_DERAT_MISS_16G_1G",
|
||||||
|
"BriefDescription": "Marked Data ERAT Miss (Data TLB Access) page size 16G (hpt mode) and 1G (radix mode)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10024",
|
||||||
|
"EventName": "PM_PMC5_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 5"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4505E",
|
||||||
|
"EventName": "PM_FLOP_CMPL",
|
||||||
|
"BriefDescription": "Floating Point Operation Finished"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C018",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DMISS_L21_L31",
|
||||||
|
"BriefDescription": "Completion stall by Dcache miss which resolved on chip ( excluding local L2/L3)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4006A",
|
||||||
|
"EventName": "PM_IERAT_RELOAD_16M",
|
||||||
|
"BriefDescription": "IERAT Reloaded (Miss) for a 16M page"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4E010",
|
||||||
|
"EventName": "PM_ICT_NOSLOT_IC_L3MISS",
|
||||||
|
"BriefDescription": "Ict empty for this thread due to icache misses that were sourced from beyond the local L3. The source could be local/remote/distant memory or another core's cache"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D01C",
|
||||||
|
"EventName": "PM_ICT_NOSLOT_DISP_HELD_SYNC",
|
||||||
|
"BriefDescription": "Dispatch held due to a synchronizing instruction at dispatch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D01A",
|
||||||
|
"EventName": "PM_ICT_NOSLOT_IC_MISS",
|
||||||
|
"BriefDescription": "Ict empty for this thread due to Icache Miss"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F14A",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_OFF_CHIP_CACHE",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30058",
|
||||||
|
"EventName": "PM_TLBIE_FIN",
|
||||||
|
"BriefDescription": "tlbie finished"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x100F8",
|
||||||
|
"EventName": "PM_ICT_NOSLOT_CYC",
|
||||||
|
"BriefDescription": "Number of cycles the ICT has no itags assigned to this thread"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3E042",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L3_DISP_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 with dispatch conflict due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F140",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L2_NO_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 without conflict due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F058",
|
||||||
|
"EventName": "PM_RADIX_PWC_L2_PTE_FROM_L2",
|
||||||
|
"BriefDescription": "A Page Table Entry was reloaded to a level 2 page walk cache from the core's L2 data cache. This implies that level 3 and level 4 PWC accesses were not necessary for this translation"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1D14A",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10050",
|
||||||
|
"EventName": "PM_CHIP_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was chip pump (prediction=correct) for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x45058",
|
||||||
|
"EventName": "PM_IC_MISS_CMPL",
|
||||||
|
"BriefDescription": "Non-speculative icache miss, counted at completion"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D150",
|
||||||
|
"EventName": "PM_MRK_DERAT_MISS_4K",
|
||||||
|
"BriefDescription": "Marked Data ERAT Miss (Data TLB Access) page size 4K"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34058",
|
||||||
|
"EventName": "PM_ICT_NOSLOT_BR_MPRED_ICMISS",
|
||||||
|
"BriefDescription": "Ict empty for this thread due to Icache Miss and branch mispred"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10022",
|
||||||
|
"EventName": "PM_PMC2_SAVED",
|
||||||
|
"BriefDescription": "PMC2 Rewind Value saved"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2000A",
|
||||||
|
"EventName": "PM_HV_CYC",
|
||||||
|
"BriefDescription": "Cycles in which msr_hv is high. Note that this event does not take msr_pr into consideration"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F144",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L3_NO_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without conflict due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300FC",
|
||||||
|
"EventName": "PM_DTLB_MISS",
|
||||||
|
"BriefDescription": "Data PTEG reload"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C046",
|
||||||
|
"EventName": "PM_DATA_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20052",
|
||||||
|
"EventName": "PM_GRP_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Final Pump Scope (Group) ended up either larger or smaller than Initial Pump Scope for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3F05A",
|
||||||
|
"EventName": "PM_RADIX_PWC_L2_PDE_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Directory Entry was reloaded to a level 2 page walk cache from the core's L3 data cache"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E04A",
|
||||||
|
"EventName": "PM_DPTEG_FROM_RL2L3_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10064",
|
||||||
|
"EventName": "PM_ICT_NOSLOT_DISP_HELD_TBEGIN",
|
||||||
|
"BriefDescription": "the NTC instruction is being held at dispatch because it is a tbegin instruction and there is an older tbegin in the pipeline that must complete before the younger tbegin can dispatch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E046",
|
||||||
|
"EventName": "PM_DPTEG_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F14C",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_DMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's memory on the same Node or Group (Distant) due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E042",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L3_MEPF",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 without dispatch conflicts hit on Mepf state. due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D012",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DFU",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was issued to the Decimal Floating Point execution pipe and waiting to finish. Includes decimal floating point instructions + 128 bit binary floating point instructions. Not qualified by multicycle"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3C054",
|
||||||
|
"EventName": "PM_DERAT_MISS_16M_2M",
|
||||||
|
"BriefDescription": "Data ERAT Miss (Data TLB Access) page size 16M (HPT mode) or 2M (Radix mode)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C04C",
|
||||||
|
"EventName": "PM_DATA_FROM_DMEM",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from another chip's memory on the same Node or Group (Distant) due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30022",
|
||||||
|
"EventName": "PM_PMC4_SAVED",
|
||||||
|
"BriefDescription": "PMC4 Rewind Value saved (matched condition)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200F4",
|
||||||
|
"EventName": "PM_RUN_CYC",
|
||||||
|
"BriefDescription": "Run_cycles"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x400F2",
|
||||||
|
"EventName": "PM_1PLUS_PPC_DISP",
|
||||||
|
"BriefDescription": "Cycles at least one Instr Dispatched"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3D148",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L21_MOD_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload with Modified (M) data from another core's L2 on the same chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2F146",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4E01A",
|
||||||
|
"EventName": "PM_ICT_NOSLOT_DISP_HELD",
|
||||||
|
"BriefDescription": "Cycles in which the NTC instruction is held at dispatch for any reason"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x401EC",
|
||||||
|
"EventName": "PM_THRESH_EXC_2048",
|
||||||
|
"BriefDescription": "Threshold counter exceeded a value of 2048"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x35150",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL2L3_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3E052",
|
||||||
|
"EventName": "PM_ICT_NOSLOT_IC_L3",
|
||||||
|
"BriefDescription": "Ict empty for this thread due to icache misses that were sourced from the local L3"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2405A",
|
||||||
|
"EventName": "PM_NTC_FIN",
|
||||||
|
"BriefDescription": "Cycles in which the oldest instruction in the pipeline (NTC) finishes. This event is used to account for cycles in which work is being completed in the CPI stack"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40052",
|
||||||
|
"EventName": "PM_PUMP_MPRED",
|
||||||
|
"BriefDescription": "Pump misprediction. Counts across all types of pumps for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30056",
|
||||||
|
"EventName": "PM_TM_ABORTS",
|
||||||
|
"BriefDescription": "Number of TM transactions aborted"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2404C",
|
||||||
|
"EventName": "PM_INST_FROM_MEMORY",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from a memory location including L4 from local remote or distant due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30024",
|
||||||
|
"EventName": "PM_PMC6_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 6"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10068",
|
||||||
|
"EventName": "PM_BRU_FIN",
|
||||||
|
"BriefDescription": "Branch Instruction Finished"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3D154",
|
||||||
|
"EventName": "PM_MRK_DERAT_MISS_16M_2M",
|
||||||
|
"BriefDescription": "Marked Data ERAT Miss (Data TLB Access) page size 16M (hpt mode) or 2M (radix mode)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30020",
|
||||||
|
"EventName": "PM_PMC2_REWIND",
|
||||||
|
"BriefDescription": "PMC2 Rewind Event (did not match condition)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40064",
|
||||||
|
"EventName": "PM_DUMMY2_REMOVE_ME",
|
||||||
|
"BriefDescription": "Space holder for LS_PC_RELOAD_RA"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3F148",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_DL2L3_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D01E",
|
||||||
|
"EventName": "PM_ICT_NOSLOT_BR_MPRED",
|
||||||
|
"BriefDescription": "Ict empty for this thread due to branch mispred"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F148",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_ON_CHIP_CACHE",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB either shared or modified data from another core's L2/L3 on the same chip due to a marked data side request.. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3E046",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L21_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another core's L2 on the same chip due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2F144",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L31_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another core's L3 on the same chip due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14052",
|
||||||
|
"EventName": "PM_INST_GRP_PUMP_MPRED_RTY",
|
||||||
|
"BriefDescription": "Final Pump Scope (Group) ended up larger than Initial Pump Scope (Chip) for an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0xD0A8",
|
||||||
|
"EventName": "PM_DSLB_MISS",
|
||||||
|
"BriefDescription": "gate_and(sd_pc_c0_comp_valid AND sd_pc_c0_comp_thread(0:1)=tid,sd_pc_c0_comp_ppc_count(0:3)) + gate_and(sd_pc_c1_comp_valid AND sd_pc_c1_comp_thread(0:1)=tid,sd_pc_c1_comp_ppc_count(0:3))"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C058",
|
||||||
|
"EventName": "PM_MEM_CO",
|
||||||
|
"BriefDescription": "Memory castouts from this thread"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40004",
|
||||||
|
"EventName": "PM_FXU_FIN",
|
||||||
|
"BriefDescription": "The fixed point unit Unit finished an instruction. Instructions that finish may not necessary complete."
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C054",
|
||||||
|
"EventName": "PM_DERAT_MISS_64K",
|
||||||
|
"BriefDescription": "Data ERAT Miss (Data TLB Access) page size 64K"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10018",
|
||||||
|
"EventName": "PM_IC_DEMAND_CYC",
|
||||||
|
"BriefDescription": "Icache miss demand cycles"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D14E",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L21_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another core's L2 on the same chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3405C",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DPLONG",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a scalar multi-cycle instruction issued to the Double Precision execution pipe and waiting to finish. Includes binary floating point instructions in 32 and 64 bit binary floating point format. Qualified by NOT vector AND multicycle"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D052",
|
||||||
|
"EventName": "PM_2FLOP_CMPL",
|
||||||
|
"BriefDescription": "DP vector version of fmul, fsub, fcmp, fsel, fabs, fnabs, fres ,fsqrte, fneg "
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F142",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L2",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L2 due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40062",
|
||||||
|
"EventName": "PM_DUMMY1_REMOVE_ME",
|
||||||
|
"BriefDescription": "Space holder for L2_PC_PM_MK_LDST_SCOPE_PRED_STATUS"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C012",
|
||||||
|
"EventName": "PM_CMPLU_STALL_ERAT_MISS",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a load or store that suffered a translation miss"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D050",
|
||||||
|
"EventName": "PM_VSU_NON_FLOP_CMPL",
|
||||||
|
"BriefDescription": "Non FLOP operation completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E012",
|
||||||
|
"EventName": "PM_TM_TX_PASS_RUN_CYC",
|
||||||
|
"BriefDescription": "cycles spent in successful transactions"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D04E",
|
||||||
|
"EventName": "PM_VSU_FSQRT_FDIV",
|
||||||
|
"BriefDescription": "four flops operation (fdiv,fsqrt) Scalar Instructions only"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C120",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L2_MEPF",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from local core's L2 hit without dispatch conflicts on Mepf state. due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10062",
|
||||||
|
"EventName": "PM_LD_L3MISS_PEND_CYC",
|
||||||
|
"BriefDescription": "Cycles L3 miss was pending for this thread"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2F14C",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_MEMORY",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a memory location including L4 from local remote or distant due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14050",
|
||||||
|
"EventName": "PM_INST_CHIP_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Initial and Final Pump Scope was chip pump (prediction=correct) for an instruction fetch"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2000E",
|
||||||
|
"EventName": "PM_FXU_BUSY",
|
||||||
|
"BriefDescription": "Cycles in which all 4 FXUs are busy. The FXU is running at capacity"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20066",
|
||||||
|
"EventName": "PM_TLB_MISS",
|
||||||
|
"BriefDescription": "TLB Miss (I + D)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10054",
|
||||||
|
"EventName": "PM_PUMP_CPRED",
|
||||||
|
"BriefDescription": "Pump prediction correct. Counts across all types of pumps for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D124",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L31_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another core's L3 on the same chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x400F8",
|
||||||
|
"EventName": "PM_FLUSH",
|
||||||
|
"BriefDescription": "Flush (any type)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30004",
|
||||||
|
"EventName": "PM_CMPLU_STALL_EMQ_FULL",
|
||||||
|
"BriefDescription": "Finish stall because the next to finish instruction suffered an ERAT miss and the EMQ was full"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1D154",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L21_SHR_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload with Shared (S) data from another core's L2 on the same chip due to a marked load"
|
||||||
|
}
|
||||||
|
]
|
117
lib/libpmcstat/pmu-events/arch/powerpc/power9/pmc.json
Normal file
117
lib/libpmcstat/pmu-events/arch/powerpc/power9/pmc.json
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20036",
|
||||||
|
"EventName": "PM_BR_2PATH",
|
||||||
|
"BriefDescription": "Branches that are not strongly biased"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40056",
|
||||||
|
"EventName": "PM_MEM_LOC_THRESH_LSU_HIGH",
|
||||||
|
"BriefDescription": "Local memory above threshold for LSU medium"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40118",
|
||||||
|
"EventName": "PM_MRK_DCACHE_RELOAD_INTV",
|
||||||
|
"BriefDescription": "Combined Intervention event"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F148",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_DL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x301E8",
|
||||||
|
"EventName": "PM_THRESH_EXC_64",
|
||||||
|
"BriefDescription": "Threshold counter exceeded a value of 64"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4E04E",
|
||||||
|
"EventName": "PM_DPTEG_FROM_L3MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a location other than the local core's L3 due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40050",
|
||||||
|
"EventName": "PM_SYS_PUMP_MPRED_RTY",
|
||||||
|
"BriefDescription": "Final Pump Scope (system) ended up larger than Initial Pump Scope (Chip/Group) for all data types excluding data prefetch (demand load,inst prefetch,inst fetch,xlate)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F14E",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L2MISS",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a location other than the local core's L2 due to a marked data side request.. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D018",
|
||||||
|
"EventName": "PM_CMPLU_STALL_BRU",
|
||||||
|
"BriefDescription": "Completion stall due to a Branch Unit"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x45052",
|
||||||
|
"EventName": "PM_4FLOP_CMPL",
|
||||||
|
"BriefDescription": "4 FLOP instruction completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3D142",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_LMEM",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from the local chip's Memory due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C01E",
|
||||||
|
"EventName": "PM_CMPLU_STALL_CRYPTO",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was routed to the crypto execution pipe and was waiting to finish"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3000C",
|
||||||
|
"EventName": "PM_FREQ_DOWN",
|
||||||
|
"BriefDescription": "Power Management: Below Threshold B"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D128",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_LMEM_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload from the local chip's Memory due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D054",
|
||||||
|
"EventName": "PM_8FLOP_CMPL",
|
||||||
|
"BriefDescription": "8 FLOP instruction completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10026",
|
||||||
|
"EventName": "PM_TABLEWALK_CYC",
|
||||||
|
"BriefDescription": "Cycles when an instruction tablewalk is active"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2C012",
|
||||||
|
"EventName": "PM_CMPLU_STALL_DCACHE_MISS",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a load that missed the L1 and was waiting for the data to return from the nest"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E04C",
|
||||||
|
"EventName": "PM_DPTEG_FROM_MEMORY",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a memory location including L4 from local remote or distant due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3F142",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L3_DISP_CONFLICT",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 with dispatch conflict due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4F142",
|
||||||
|
"EventName": "PM_MRK_DPTEG_FROM_L3",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from local core's L3 due to a marked data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10060",
|
||||||
|
"EventName": "PM_TM_TRANS_RUN_CYC",
|
||||||
|
"BriefDescription": "run cycles in transactional state"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E04C",
|
||||||
|
"EventName": "PM_DPTEG_FROM_LL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from the local chip's L4 cache due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x45050",
|
||||||
|
"EventName": "PM_1FLOP_CMPL",
|
||||||
|
"BriefDescription": "one flop (fadd, fmul, fsub, fcmp, fsel, fabs, fnabs, fres, fsqrte, fneg) operation completed"
|
||||||
|
}
|
||||||
|
]
|
227
lib/libpmcstat/pmu-events/arch/powerpc/power9/translation.json
Normal file
227
lib/libpmcstat/pmu-events/arch/powerpc/power9/translation.json
Normal file
@ -0,0 +1,227 @@
|
|||||||
|
[
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E",
|
||||||
|
"EventName": "PM_CYC",
|
||||||
|
"BriefDescription": "Processor cycles"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30010",
|
||||||
|
"EventName": "PM_PMC2_OVERFLOW",
|
||||||
|
"BriefDescription": "Overflow from counter 2"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3C046",
|
||||||
|
"EventName": "PM_DATA_FROM_L21_SHR",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Shared (S) data from another core's L2 on the same chip due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D05C",
|
||||||
|
"EventName": "PM_DP_QP_FLOP_CMPL",
|
||||||
|
"BriefDescription": "Double-Precion or Quad-Precision instruction completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4E04C",
|
||||||
|
"EventName": "PM_DPTEG_FROM_DMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's memory on the same Node or Group (Distant) due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20016",
|
||||||
|
"EventName": "PM_ST_FIN",
|
||||||
|
"BriefDescription": "Store finish count. Includes speculative activity"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1504A",
|
||||||
|
"EventName": "PM_IPTEG_FROM_RL2L3_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x40132",
|
||||||
|
"EventName": "PM_MRK_LSU_FIN",
|
||||||
|
"BriefDescription": "lsu marked instr PPC finish"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3C05C",
|
||||||
|
"EventName": "PM_CMPLU_STALL_VFXU",
|
||||||
|
"BriefDescription": "Finish stall due to a vector fixed point instruction in the execution pipeline. These instructions get routed to the ALU, ALU2, and DIV pipes"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x30066",
|
||||||
|
"EventName": "PM_LSU_FIN",
|
||||||
|
"BriefDescription": "LSU Finished a PPC instruction (up to 4 per cycle)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2011C",
|
||||||
|
"EventName": "PM_MRK_NTC_CYC",
|
||||||
|
"BriefDescription": "Cycles during which the marked instruction is next to complete (completion is held up because the marked instruction hasn't completed yet)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3E048",
|
||||||
|
"EventName": "PM_DPTEG_FROM_DL2L3_SHR",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Shared (S) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E018",
|
||||||
|
"EventName": "PM_CMPLU_STALL_VFXLONG",
|
||||||
|
"BriefDescription": "Completion stall due to a long latency vector fixed point instruction (division, square root)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1C04E",
|
||||||
|
"EventName": "PM_DATA_FROM_L2MISS_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded from a location other than the local core's L2 due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x15048",
|
||||||
|
"EventName": "PM_IPTEG_FROM_ON_CHIP_CACHE",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB either shared or modified data from another core's L2/L3 on the same chip due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34046",
|
||||||
|
"EventName": "PM_INST_FROM_L21_SHR",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded with Shared (S) data from another core's L2 on the same chip due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1E058",
|
||||||
|
"EventName": "PM_STCX_FAIL",
|
||||||
|
"BriefDescription": "stcx failed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x300F0",
|
||||||
|
"EventName": "PM_ST_MISS_L1",
|
||||||
|
"BriefDescription": "Store Missed L1"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4C046",
|
||||||
|
"EventName": "PM_DATA_FROM_L21_MOD",
|
||||||
|
"BriefDescription": "The processor's data cache was reloaded with Modified (M) data from another core's L2 on the same chip due to a demand load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2504A",
|
||||||
|
"EventName": "PM_IPTEG_FROM_RL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's L4 on the same Node or Group ( Remote) due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2003E",
|
||||||
|
"EventName": "PM_LSU_LMQ_SRQ_EMPTY_CYC",
|
||||||
|
"BriefDescription": "Cycles in which the LSU is empty for all threads (lmq and srq are completely empty)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x201E6",
|
||||||
|
"EventName": "PM_THRESH_EXC_32",
|
||||||
|
"BriefDescription": "Threshold counter exceeded a value of 32"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4405C",
|
||||||
|
"EventName": "PM_CMPLU_STALL_VDP",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a vector instruction issued to the Double Precision execution pipe and waiting to finish. Includes binary floating point instructions in 32 and 64 bit binary floating point format. Not qualified multicycle. Qualified by vector"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4D010",
|
||||||
|
"EventName": "PM_PMC1_SAVED",
|
||||||
|
"BriefDescription": "PMC1 Rewind Value saved"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x44042",
|
||||||
|
"EventName": "PM_INST_FROM_L3",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L3 due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200FE",
|
||||||
|
"EventName": "PM_DATA_FROM_L2MISS",
|
||||||
|
"BriefDescription": "Demand LD - L2 Miss (not L2 hit)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2D14A",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_RL2L3_MOD_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x10028",
|
||||||
|
"EventName": "PM_STALL_END_ICT_EMPTY",
|
||||||
|
"BriefDescription": "The number a times the core transitioned from a stall to ICT-empty for this thread"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2504C",
|
||||||
|
"EventName": "PM_IPTEG_FROM_MEMORY",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from a memory location including L4 from local remote or distant due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4504A",
|
||||||
|
"EventName": "PM_IPTEG_FROM_OFF_CHIP_CACHE",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB either shared or modified data from another core's L2/L3 on a different chip (remote or distant) due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1404E",
|
||||||
|
"EventName": "PM_INST_FROM_L2MISS",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from a location other than the local core's L2 due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x34042",
|
||||||
|
"EventName": "PM_INST_FROM_L3_DISP_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L3 with dispatch conflict due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4E048",
|
||||||
|
"EventName": "PM_DPTEG_FROM_DL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on a different Node or Group (Distant), as this chip due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x200F0",
|
||||||
|
"EventName": "PM_ST_CMPL",
|
||||||
|
"BriefDescription": "Stores completed from S2Q (2nd-level store queue)."
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x4E05C",
|
||||||
|
"EventName": "PM_LSU_REJECT_LHS",
|
||||||
|
"BriefDescription": "LSU Reject due to LHS (up to 4 per cycle)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x14044",
|
||||||
|
"EventName": "PM_INST_FROM_L3_NO_CONFLICT",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L3 without conflict due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3E04C",
|
||||||
|
"EventName": "PM_DPTEG_FROM_DL4",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's L4 on a different Node or Group (Distant) due to a data side request. When using Radix Page Translation, this count excludes PDE reloads. Only PTE reloads are included"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1F15E",
|
||||||
|
"EventName": "PM_MRK_PROBE_NOP_CMPL",
|
||||||
|
"BriefDescription": "Marked probeNops completed"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x20018",
|
||||||
|
"EventName": "PM_ST_FWD",
|
||||||
|
"BriefDescription": "Store forwards that finished"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x1D142",
|
||||||
|
"EventName": "PM_MRK_DATA_FROM_L31_ECO_SHR_CYC",
|
||||||
|
"BriefDescription": "Duration in cycles to reload with Shared (S) data from another core's ECO L3 on the same chip due to a marked load"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x24042",
|
||||||
|
"EventName": "PM_INST_FROM_L3_MEPF",
|
||||||
|
"BriefDescription": "The processor's Instruction cache was reloaded from local core's L3 without dispatch conflicts hit on Mepf state. due to an instruction fetch (not prefetch)"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x25046",
|
||||||
|
"EventName": "PM_IPTEG_FROM_RL2L3_MOD",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB with Modified (M) data from another chip's L2 or L3 on the same Node or Group (Remote), as this chip due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3504A",
|
||||||
|
"EventName": "PM_IPTEG_FROM_RMEM",
|
||||||
|
"BriefDescription": "A Page Table Entry was loaded into the TLB from another chip's memory on the same Node or Group ( Remote) due to a instruction side request"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x3C05A",
|
||||||
|
"EventName": "PM_CMPLU_STALL_VDPLONG",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a scalar multi-cycle instruction issued to the Double Precision execution pipe and waiting to finish. Includes binary floating point instructions in 32 and 64 bit binary floating point format. Qualified by NOT vector AND multicycle"
|
||||||
|
},
|
||||||
|
{,
|
||||||
|
"EventCode": "0x2E01C",
|
||||||
|
"EventName": "PM_CMPLU_STALL_TLBIE",
|
||||||
|
"BriefDescription": "Finish stall because the NTF instruction was a tlbie waiting for response from L2"
|
||||||
|
}
|
||||||
|
]
|
74
lib/libpmcstat/pmu-events/arch/s390/cf_z10/basic.json
Normal file
74
lib/libpmcstat/pmu-events/arch/s390/cf_z10/basic.json
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0",
|
||||||
|
"EventName": "CPU_CYCLES",
|
||||||
|
"BriefDescription": "CPU Cycles",
|
||||||
|
"PublicDescription": "Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "1",
|
||||||
|
"EventName": "INSTRUCTIONS",
|
||||||
|
"BriefDescription": "Instructions",
|
||||||
|
"PublicDescription": "Instruction Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "2",
|
||||||
|
"EventName": "L1I_DIR_WRITES",
|
||||||
|
"BriefDescription": "L1I Directory Writes",
|
||||||
|
"PublicDescription": "Level-1 I-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "3",
|
||||||
|
"EventName": "L1I_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "L1I Penalty Cycles",
|
||||||
|
"PublicDescription": "Level-1 I-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "4",
|
||||||
|
"EventName": "L1D_DIR_WRITES",
|
||||||
|
"BriefDescription": "L1D Directory Writes",
|
||||||
|
"PublicDescription": "Level-1 D-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "5",
|
||||||
|
"EventName": "L1D_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "L1D Penalty Cycles",
|
||||||
|
"PublicDescription": "Level-1 D-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "32",
|
||||||
|
"EventName": "PROBLEM_STATE_CPU_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State CPU Cycles",
|
||||||
|
"PublicDescription": "Problem-State Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "33",
|
||||||
|
"EventName": "PROBLEM_STATE_INSTRUCTIONS",
|
||||||
|
"BriefDescription": "Problem-State Instructions",
|
||||||
|
"PublicDescription": "Problem-State Instruction Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "34",
|
||||||
|
"EventName": "PROBLEM_STATE_L1I_DIR_WRITES",
|
||||||
|
"BriefDescription": "Problem-State L1I Directory Writes",
|
||||||
|
"PublicDescription": "Problem-State Level-1 I-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "35",
|
||||||
|
"EventName": "PROBLEM_STATE_L1I_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State L1I Penalty Cycles",
|
||||||
|
"PublicDescription": "Problem-State Level-1 I-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "36",
|
||||||
|
"EventName": "PROBLEM_STATE_L1D_DIR_WRITES",
|
||||||
|
"BriefDescription": "Problem-State L1D Directory Writes",
|
||||||
|
"PublicDescription": "Problem-State Level-1 D-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "37",
|
||||||
|
"EventName": "PROBLEM_STATE_L1D_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State L1D Penalty Cycles",
|
||||||
|
"PublicDescription": "Problem-State Level-1 D-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
]
|
98
lib/libpmcstat/pmu-events/arch/s390/cf_z10/crypto.json
Normal file
98
lib/libpmcstat/pmu-events/arch/s390/cf_z10/crypto.json
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "64",
|
||||||
|
"EventName": "PRNG_FUNCTIONS",
|
||||||
|
"BriefDescription": "PRNG Functions",
|
||||||
|
"PublicDescription": "Total number of the PRNG functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "65",
|
||||||
|
"EventName": "PRNG_CYCLES",
|
||||||
|
"BriefDescription": "PRNG Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing PRNG functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "66",
|
||||||
|
"EventName": "PRNG_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "PRNG Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the PRNG functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "67",
|
||||||
|
"EventName": "PRNG_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "PRNG Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the PRNG functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "68",
|
||||||
|
"EventName": "SHA_FUNCTIONS",
|
||||||
|
"BriefDescription": "SHA Functions",
|
||||||
|
"PublicDescription": "Total number of SHA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "69",
|
||||||
|
"EventName": "SHA_CYCLES",
|
||||||
|
"BriefDescription": "SHA Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the SHA coprocessor is busy performing the SHA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "70",
|
||||||
|
"EventName": "SHA_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "SHA Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the SHA functions that are issued by the CPU and are blocked because the SHA coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "71",
|
||||||
|
"EventName": "SHA_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "SHA Bloced Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the SHA functions issued by the CPU because the SHA coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "72",
|
||||||
|
"EventName": "DEA_FUNCTIONS",
|
||||||
|
"BriefDescription": "DEA Functions",
|
||||||
|
"PublicDescription": "Total number of the DEA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "73",
|
||||||
|
"EventName": "DEA_CYCLES",
|
||||||
|
"BriefDescription": "DEA Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing the DEA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "74",
|
||||||
|
"EventName": "DEA_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "DEA Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the DEA functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "75",
|
||||||
|
"EventName": "DEA_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "DEA Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the DEA functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "76",
|
||||||
|
"EventName": "AES_FUNCTIONS",
|
||||||
|
"BriefDescription": "AES Functions",
|
||||||
|
"PublicDescription": "Total number of AES functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "77",
|
||||||
|
"EventName": "AES_CYCLES",
|
||||||
|
"BriefDescription": "AES Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing the AES functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "78",
|
||||||
|
"EventName": "AES_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "AES Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of AES functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "79",
|
||||||
|
"EventName": "AES_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "AES Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the AES functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
]
|
110
lib/libpmcstat/pmu-events/arch/s390/cf_z10/extended.json
Normal file
110
lib/libpmcstat/pmu-events/arch/s390/cf_z10/extended.json
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "128",
|
||||||
|
"EventName": "L1I_L2_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I L2 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 I-Cache directory where the returned cache line was sourced from the Level-2 (L1.5) cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "129",
|
||||||
|
"EventName": "L1D_L2_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D L2 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache directory where the installed cache line was sourced from the Level-2 (L1.5) cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "130",
|
||||||
|
"EventName": "L1I_L3_LOCAL_WRITES",
|
||||||
|
"BriefDescription": "L1I L3 Local Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 I-Cache directory where the installed cache line was sourced from the Level-3 cache that is on the same book as the Instruction cache (Local L2 cache)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "131",
|
||||||
|
"EventName": "L1D_L3_LOCAL_WRITES",
|
||||||
|
"BriefDescription": "L1D L3 Local Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache directory where the installtion cache line was source from the Level-3 cache that is on the same book as the Data cache (Local L2 cache)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "132",
|
||||||
|
"EventName": "L1I_L3_REMOTE_WRITES",
|
||||||
|
"BriefDescription": "L1I L3 Remote Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 I-Cache directory where the installed cache line was sourced from a Level-3 cache that is not on the same book as the Instruction cache (Remote L2 cache)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "133",
|
||||||
|
"EventName": "L1D_L3_REMOTE_WRITES",
|
||||||
|
"BriefDescription": "L1D L3 Remote Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache directory where the installed cache line was sourced from a Level-3 cache that is not on the same book as the Data cache (Remote L2 cache)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "134",
|
||||||
|
"EventName": "L1D_LMEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Local Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache directory where the installed cache line was sourced from memory that is attached to the same book as the Data cache (Local Memory)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "135",
|
||||||
|
"EventName": "L1I_LMEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Local Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 I-Cache where the installed cache line was sourced from memory that is attached to the s ame book as the Instruction cache (Local Memory)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "136",
|
||||||
|
"EventName": "L1D_RO_EXCL_WRITES",
|
||||||
|
"BriefDescription": "L1D Read-only Exclusive Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache where the line was originally in a Read-Only state in the cache but has been updated to be in the Exclusive state that allows stores to the cache line"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "137",
|
||||||
|
"EventName": "L1I_CACHELINE_INVALIDATES",
|
||||||
|
"BriefDescription": "L1I Cacheline Invalidates",
|
||||||
|
"PublicDescription": "A cache line in the Level-1 I-Cache has been invalidated by a store on the same CPU as the Level-1 I-Cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "138",
|
||||||
|
"EventName": "ITLB1_WRITES",
|
||||||
|
"BriefDescription": "ITLB1 Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written into the Level-1 Instruction Translation Lookaside Buffer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "139",
|
||||||
|
"EventName": "DTLB1_WRITES",
|
||||||
|
"BriefDescription": "DTLB1 Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-1 Data Translation Lookaside Buffer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "140",
|
||||||
|
"EventName": "TLB2_PTE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 PTE Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Page Table Entry arrays"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "141",
|
||||||
|
"EventName": "TLB2_CRSTE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 CRSTE Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Common Region Segment Table Entry arrays"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "142",
|
||||||
|
"EventName": "TLB2_CRSTE_HPAGE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 CRSTE One-Megabyte Page Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Common Region Segment Table Entry arrays for a one-megabyte large page translation"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "145",
|
||||||
|
"EventName": "ITLB1_MISSES",
|
||||||
|
"BriefDescription": "ITLB1 Misses",
|
||||||
|
"PublicDescription": "Level-1 Instruction TLB miss in progress. Incremented by one for every cycle an ITLB1 miss is in progress"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "146",
|
||||||
|
"EventName": "DTLB1_MISSES",
|
||||||
|
"BriefDescription": "DTLB1 Misses",
|
||||||
|
"PublicDescription": "Level-1 Data TLB miss in progress. Incremented by one for every cycle an DTLB1 miss is in progress"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "147",
|
||||||
|
"EventName": "L2C_STORES_SENT",
|
||||||
|
"BriefDescription": "L2C Stores Sent",
|
||||||
|
"PublicDescription": "Incremented by one for every store sent to Level-2 (L1.5) cache"
|
||||||
|
},
|
||||||
|
]
|
74
lib/libpmcstat/pmu-events/arch/s390/cf_z13/basic.json
Normal file
74
lib/libpmcstat/pmu-events/arch/s390/cf_z13/basic.json
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0",
|
||||||
|
"EventName": "CPU_CYCLES",
|
||||||
|
"BriefDescription": "CPU Cycles",
|
||||||
|
"PublicDescription": "Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "1",
|
||||||
|
"EventName": "INSTRUCTIONS",
|
||||||
|
"BriefDescription": "Instructions",
|
||||||
|
"PublicDescription": "Instruction Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "2",
|
||||||
|
"EventName": "L1I_DIR_WRITES",
|
||||||
|
"BriefDescription": "L1I Directory Writes",
|
||||||
|
"PublicDescription": "Level-1 I-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "3",
|
||||||
|
"EventName": "L1I_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "L1I Penalty Cycles",
|
||||||
|
"PublicDescription": "Level-1 I-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "4",
|
||||||
|
"EventName": "L1D_DIR_WRITES",
|
||||||
|
"BriefDescription": "L1D Directory Writes",
|
||||||
|
"PublicDescription": "Level-1 D-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "5",
|
||||||
|
"EventName": "L1D_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "L1D Penalty Cycles",
|
||||||
|
"PublicDescription": "Level-1 D-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "32",
|
||||||
|
"EventName": "PROBLEM_STATE_CPU_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State CPU Cycles",
|
||||||
|
"PublicDescription": "Problem-State Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "33",
|
||||||
|
"EventName": "PROBLEM_STATE_INSTRUCTIONS",
|
||||||
|
"BriefDescription": "Problem-State Instructions",
|
||||||
|
"PublicDescription": "Problem-State Instruction Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "34",
|
||||||
|
"EventName": "PROBLEM_STATE_L1I_DIR_WRITES",
|
||||||
|
"BriefDescription": "Problem-State L1I Directory Writes",
|
||||||
|
"PublicDescription": "Problem-State Level-1 I-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "35",
|
||||||
|
"EventName": "PROBLEM_STATE_L1I_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State L1I Penalty Cycles",
|
||||||
|
"PublicDescription": "Problem-State Level-1 I-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "36",
|
||||||
|
"EventName": "PROBLEM_STATE_L1D_DIR_WRITES",
|
||||||
|
"BriefDescription": "Problem-State L1D Directory Writes",
|
||||||
|
"PublicDescription": "Problem-State Level-1 D-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "37",
|
||||||
|
"EventName": "PROBLEM_STATE_L1D_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State L1D Penalty Cycles",
|
||||||
|
"PublicDescription": "Problem-State Level-1 D-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
]
|
98
lib/libpmcstat/pmu-events/arch/s390/cf_z13/crypto.json
Normal file
98
lib/libpmcstat/pmu-events/arch/s390/cf_z13/crypto.json
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "64",
|
||||||
|
"EventName": "PRNG_FUNCTIONS",
|
||||||
|
"BriefDescription": "PRNG Functions",
|
||||||
|
"PublicDescription": "Total number of the PRNG functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "65",
|
||||||
|
"EventName": "PRNG_CYCLES",
|
||||||
|
"BriefDescription": "PRNG Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing PRNG functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "66",
|
||||||
|
"EventName": "PRNG_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "PRNG Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the PRNG functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "67",
|
||||||
|
"EventName": "PRNG_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "PRNG Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the PRNG functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "68",
|
||||||
|
"EventName": "SHA_FUNCTIONS",
|
||||||
|
"BriefDescription": "SHA Functions",
|
||||||
|
"PublicDescription": "Total number of SHA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "69",
|
||||||
|
"EventName": "SHA_CYCLES",
|
||||||
|
"BriefDescription": "SHA Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the SHA coprocessor is busy performing the SHA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "70",
|
||||||
|
"EventName": "SHA_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "SHA Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the SHA functions that are issued by the CPU and are blocked because the SHA coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "71",
|
||||||
|
"EventName": "SHA_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "SHA Bloced Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the SHA functions issued by the CPU because the SHA coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "72",
|
||||||
|
"EventName": "DEA_FUNCTIONS",
|
||||||
|
"BriefDescription": "DEA Functions",
|
||||||
|
"PublicDescription": "Total number of the DEA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "73",
|
||||||
|
"EventName": "DEA_CYCLES",
|
||||||
|
"BriefDescription": "DEA Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing the DEA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "74",
|
||||||
|
"EventName": "DEA_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "DEA Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the DEA functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "75",
|
||||||
|
"EventName": "DEA_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "DEA Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the DEA functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "76",
|
||||||
|
"EventName": "AES_FUNCTIONS",
|
||||||
|
"BriefDescription": "AES Functions",
|
||||||
|
"PublicDescription": "Total number of AES functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "77",
|
||||||
|
"EventName": "AES_CYCLES",
|
||||||
|
"BriefDescription": "AES Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing the AES functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "78",
|
||||||
|
"EventName": "AES_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "AES Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of AES functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "79",
|
||||||
|
"EventName": "AES_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "AES Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the AES functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
]
|
338
lib/libpmcstat/pmu-events/arch/s390/cf_z13/extended.json
Normal file
338
lib/libpmcstat/pmu-events/arch/s390/cf_z13/extended.json
Normal file
@ -0,0 +1,338 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "128",
|
||||||
|
"EventName": "L1D_RO_EXCL_WRITES",
|
||||||
|
"BriefDescription": "L1D Read-only Exclusive Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache where the line was originally in a Read-Only state in the cache but has been updated to be in the Exclusive state that allows stores to the cache line."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "129",
|
||||||
|
"EventName": "DTLB1_WRITES",
|
||||||
|
"BriefDescription": "DTLB1 Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-1 Data Translation Lookaside Buffer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "130",
|
||||||
|
"EventName": "DTLB1_MISSES",
|
||||||
|
"BriefDescription": "DTLB1 Misses",
|
||||||
|
"PublicDescription": "Level-1 Data TLB miss in progress. Incremented by one for every cycle a DTLB1 miss is in progress."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "131",
|
||||||
|
"EventName": "DTLB1_HPAGE_WRITES",
|
||||||
|
"BriefDescription": "DTLB1 One-Megabyte Page Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-1 Data Translation Lookaside Buffer for a one-megabyte page"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "132",
|
||||||
|
"EventName": "DTLB1_GPAGE_WRITES",
|
||||||
|
"BriefDescription": "DTLB1 Two-Gigabyte Page Writes",
|
||||||
|
"PublicDescription": "Counter:132 Name:DTLB1_GPAGE_WRITES A translation entry has been written to the Level-1 Data Translation Lookaside Buffer for a two-gigabyte page."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "133",
|
||||||
|
"EventName": "L1D_L2D_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D L2D Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from the Level-2 Data cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "134",
|
||||||
|
"EventName": "ITLB1_WRITES",
|
||||||
|
"BriefDescription": "ITLB1 Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-1 Instruction Translation Lookaside Buffer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "135",
|
||||||
|
"EventName": "ITLB1_MISSES",
|
||||||
|
"BriefDescription": "ITLB1 Misses",
|
||||||
|
"PublicDescription": "Level-1 Instruction TLB miss in progress. Incremented by one for every cycle an ITLB1 miss is in progress"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "136",
|
||||||
|
"EventName": "L1I_L2I_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I L2I Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from the Level-2 Instruction cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "137",
|
||||||
|
"EventName": "TLB2_PTE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 PTE Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Page Table Entry arrays"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "138",
|
||||||
|
"EventName": "TLB2_CRSTE_HPAGE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 CRSTE One-Megabyte Page Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Combined Region Segment Table Entry arrays for a one-megabyte large page translation"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "139",
|
||||||
|
"EventName": "TLB2_CRSTE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 CRSTE Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Combined Region Segment Table Entry arrays"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "140",
|
||||||
|
"EventName": "TX_C_TEND",
|
||||||
|
"BriefDescription": "Completed TEND instructions in constrained TX mode",
|
||||||
|
"PublicDescription": "A TEND instruction has completed in a constrained transactional-execution mode"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "141",
|
||||||
|
"EventName": "TX_NC_TEND",
|
||||||
|
"BriefDescription": "Completed TEND instructions in non-constrained TX mode",
|
||||||
|
"PublicDescription": "A TEND instruction has completed in a non-constrained transactional-execution mode"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "143",
|
||||||
|
"EventName": "L1C_TLB1_MISSES",
|
||||||
|
"BriefDescription": "L1C TLB1 Misses",
|
||||||
|
"PublicDescription": "Increments by one for any cycle where a Level-1 cache or Level-1 TLB miss is in progress."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "144",
|
||||||
|
"EventName": "L1D_ONCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Chip Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "145",
|
||||||
|
"EventName": "L1D_ONCHIP_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D On-Chip L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Chip Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "146",
|
||||||
|
"EventName": "L1D_ONNODE_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Node L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Node Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "147",
|
||||||
|
"EventName": "L1D_ONNODE_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D On-Node L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Node Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "148",
|
||||||
|
"EventName": "L1D_ONNODE_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Node L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Node Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "149",
|
||||||
|
"EventName": "L1D_ONDRAWER_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Drawer L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Drawer Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "150",
|
||||||
|
"EventName": "L1D_ONDRAWER_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D On-Drawer L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Drawer Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "151",
|
||||||
|
"EventName": "L1D_ONDRAWER_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Drawer L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Drawer Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "152",
|
||||||
|
"EventName": "L1D_OFFDRAWER_SCOL_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Drawer Same-Column L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off-Drawer Same-Column Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "153",
|
||||||
|
"EventName": "L1D_OFFDRAWER_SCOL_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D Off-Drawer Same-Column L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off-Drawer Same-Column Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "154",
|
||||||
|
"EventName": "L1D_OFFDRAWER_SCOL_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Drawer Same-Column L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off-Drawer Same-Column Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "155",
|
||||||
|
"EventName": "L1D_OFFDRAWER_FCOL_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Drawer Far-Column L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off-Drawer Far-Column Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "156",
|
||||||
|
"EventName": "L1D_OFFDRAWER_FCOL_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D Off-Drawer Far-Column L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off-Drawer Far-Column Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "157",
|
||||||
|
"EventName": "L1D_OFFDRAWER_FCOL_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Drawer Far-Column L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off-Drawer Far-Column Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "158",
|
||||||
|
"EventName": "L1D_ONNODE_MEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Node Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from On-Node memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "159",
|
||||||
|
"EventName": "L1D_ONDRAWER_MEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Drawer Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from On-Drawer memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "160",
|
||||||
|
"EventName": "L1D_OFFDRAWER_MEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Drawer Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from On-Drawer memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "161",
|
||||||
|
"EventName": "L1D_ONCHIP_MEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Chip Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from On-Chip memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "162",
|
||||||
|
"EventName": "L1I_ONCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On-Chip Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "163",
|
||||||
|
"EventName": "L1I_ONCHIP_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I On-Chip L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On Chip Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "164",
|
||||||
|
"EventName": "L1I_ONNODE_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Chip L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On-Node Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "165",
|
||||||
|
"EventName": "L1I_ONNODE_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I On-Node L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On-Node Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "166",
|
||||||
|
"EventName": "L1I_ONNODE_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Node L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On-Node Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "167",
|
||||||
|
"EventName": "L1I_ONDRAWER_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Drawer L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On-Drawer Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "168",
|
||||||
|
"EventName": "L1I_ONDRAWER_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I On-Drawer L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On-Drawer Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "169",
|
||||||
|
"EventName": "L1I_ONDRAWER_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Drawer L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On-Drawer Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "170",
|
||||||
|
"EventName": "L1I_OFFDRAWER_SCOL_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Drawer Same-Column L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off-Drawer Same-Column Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "171",
|
||||||
|
"EventName": "L1I_OFFDRAWER_SCOL_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I Off-Drawer Same-Column L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off-Drawer Same-Column Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "172",
|
||||||
|
"EventName": "L1I_OFFDRAWER_SCOL_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Drawer Same-Column L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off-Drawer Same-Column Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "173",
|
||||||
|
"EventName": "L1I_OFFDRAWER_FCOL_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Drawer Far-Column L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off-Drawer Far-Column Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "174",
|
||||||
|
"EventName": "L1I_OFFDRAWER_FCOL_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I Off-Drawer Far-Column L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off-Drawer Far-Column Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "175",
|
||||||
|
"EventName": "L1I_OFFDRAWER_FCOL_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Drawer Far-Column L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off-Drawer Far-Column Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "176",
|
||||||
|
"EventName": "L1I_ONNODE_MEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Node Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from On-Node memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "177",
|
||||||
|
"EventName": "L1I_ONDRAWER_MEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Drawer Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from On-Drawer memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "178",
|
||||||
|
"EventName": "L1I_OFFDRAWER_MEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Drawer Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from On-Drawer memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "179",
|
||||||
|
"EventName": "L1I_ONCHIP_MEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Chip Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from On-Chip memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "218",
|
||||||
|
"EventName": "TX_NC_TABORT",
|
||||||
|
"BriefDescription": "Aborted transactions in non-constrained TX mode",
|
||||||
|
"PublicDescription": "A transaction abort has occurred in a non-constrained transactional-execution mode"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "219",
|
||||||
|
"EventName": "TX_C_TABORT_NO_SPECIAL",
|
||||||
|
"BriefDescription": "Aborted transactions in constrained TX mode not using special completion logic",
|
||||||
|
"PublicDescription": "A transaction abort has occurred in a constrained transactional-execution mode and the CPU is not using any special logic to allow the transaction to complete"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "220",
|
||||||
|
"EventName": "TX_C_TABORT_SPECIAL",
|
||||||
|
"BriefDescription": "Aborted transactions in constrained TX mode using special completion logic",
|
||||||
|
"PublicDescription": "A transaction abort has occurred in a constrained transactional-execution mode and the CPU is using special logic to allow the transaction to complete"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "448",
|
||||||
|
"EventName": "MT_DIAG_CYCLES_ONE_THR_ACTIVE",
|
||||||
|
"BriefDescription": "Cycle count with one thread active",
|
||||||
|
"PublicDescription": "Cycle count with one thread active"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "449",
|
||||||
|
"EventName": "MT_DIAG_CYCLES_TWO_THR_ACTIVE",
|
||||||
|
"BriefDescription": "Cycle count with two threads active",
|
||||||
|
"PublicDescription": "Cycle count with two threads active"
|
||||||
|
},
|
||||||
|
]
|
50
lib/libpmcstat/pmu-events/arch/s390/cf_z14/basic.json
Normal file
50
lib/libpmcstat/pmu-events/arch/s390/cf_z14/basic.json
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0",
|
||||||
|
"EventName": "CPU_CYCLES",
|
||||||
|
"BriefDescription": "CPU Cycles",
|
||||||
|
"PublicDescription": "Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "1",
|
||||||
|
"EventName": "INSTRUCTIONS",
|
||||||
|
"BriefDescription": "Instructions",
|
||||||
|
"PublicDescription": "Instruction Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "2",
|
||||||
|
"EventName": "L1I_DIR_WRITES",
|
||||||
|
"BriefDescription": "L1I Directory Writes",
|
||||||
|
"PublicDescription": "Level-1 I-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "3",
|
||||||
|
"EventName": "L1I_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "L1I Penalty Cycles",
|
||||||
|
"PublicDescription": "Level-1 I-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "4",
|
||||||
|
"EventName": "L1D_DIR_WRITES",
|
||||||
|
"BriefDescription": "L1D Directory Writes",
|
||||||
|
"PublicDescription": "Level-1 D-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "5",
|
||||||
|
"EventName": "L1D_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "L1D Penalty Cycles",
|
||||||
|
"PublicDescription": "Level-1 D-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "32",
|
||||||
|
"EventName": "PROBLEM_STATE_CPU_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State CPU Cycles",
|
||||||
|
"PublicDescription": "Problem-State Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "33",
|
||||||
|
"EventName": "PROBLEM_STATE_INSTRUCTIONS",
|
||||||
|
"BriefDescription": "Problem-State Instructions",
|
||||||
|
"PublicDescription": "Problem-State Instruction Count"
|
||||||
|
},
|
||||||
|
]
|
98
lib/libpmcstat/pmu-events/arch/s390/cf_z14/crypto.json
Normal file
98
lib/libpmcstat/pmu-events/arch/s390/cf_z14/crypto.json
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "64",
|
||||||
|
"EventName": "PRNG_FUNCTIONS",
|
||||||
|
"BriefDescription": "PRNG Functions",
|
||||||
|
"PublicDescription": "Total number of the PRNG functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "65",
|
||||||
|
"EventName": "PRNG_CYCLES",
|
||||||
|
"BriefDescription": "PRNG Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing PRNG functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "66",
|
||||||
|
"EventName": "PRNG_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "PRNG Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the PRNG functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "67",
|
||||||
|
"EventName": "PRNG_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "PRNG Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the PRNG functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "68",
|
||||||
|
"EventName": "SHA_FUNCTIONS",
|
||||||
|
"BriefDescription": "SHA Functions",
|
||||||
|
"PublicDescription": "Total number of SHA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "69",
|
||||||
|
"EventName": "SHA_CYCLES",
|
||||||
|
"BriefDescription": "SHA Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the SHA coprocessor is busy performing the SHA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "70",
|
||||||
|
"EventName": "SHA_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "SHA Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the SHA functions that are issued by the CPU and are blocked because the SHA coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "71",
|
||||||
|
"EventName": "SHA_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "SHA Bloced Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the SHA functions issued by the CPU because the SHA coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "72",
|
||||||
|
"EventName": "DEA_FUNCTIONS",
|
||||||
|
"BriefDescription": "DEA Functions",
|
||||||
|
"PublicDescription": "Total number of the DEA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "73",
|
||||||
|
"EventName": "DEA_CYCLES",
|
||||||
|
"BriefDescription": "DEA Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing the DEA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "74",
|
||||||
|
"EventName": "DEA_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "DEA Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the DEA functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "75",
|
||||||
|
"EventName": "DEA_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "DEA Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the DEA functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "76",
|
||||||
|
"EventName": "AES_FUNCTIONS",
|
||||||
|
"BriefDescription": "AES Functions",
|
||||||
|
"PublicDescription": "Total number of AES functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "77",
|
||||||
|
"EventName": "AES_CYCLES",
|
||||||
|
"BriefDescription": "AES Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing the AES functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "78",
|
||||||
|
"EventName": "AES_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "AES Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of AES functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "79",
|
||||||
|
"EventName": "AES_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "AES Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the AES functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
]
|
320
lib/libpmcstat/pmu-events/arch/s390/cf_z14/extended.json
Normal file
320
lib/libpmcstat/pmu-events/arch/s390/cf_z14/extended.json
Normal file
@ -0,0 +1,320 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "128",
|
||||||
|
"EventName": "L1D_RO_EXCL_WRITES",
|
||||||
|
"BriefDescription": "L1D Read-only Exclusive Writes",
|
||||||
|
"PublicDescription": "Counter:128 Name:L1D_RO_EXCL_WRITES A directory write to the Level-1 Data cache where the line was originally in a Read-Only state in the cache but has been updated to be in the Exclusive state that allows stores to the cache line"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "129",
|
||||||
|
"EventName": "DTLB2_WRITES",
|
||||||
|
"BriefDescription": "DTLB2 Writes",
|
||||||
|
"PublicDescription": "A translation has been written into The Translation Lookaside Buffer 2 (TLB2) and the request was made by the data cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "130",
|
||||||
|
"EventName": "DTLB2_MISSES",
|
||||||
|
"BriefDescription": "DTLB2 Misses",
|
||||||
|
"PublicDescription": "A TLB2 miss is in progress for a request made by the data cache. Incremented by one for every TLB2 miss in progress for the Level-1 Data cache on this cycle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "131",
|
||||||
|
"EventName": "DTLB2_HPAGE_WRITES",
|
||||||
|
"BriefDescription": "DTLB2 One-Megabyte Page Writes",
|
||||||
|
"PublicDescription": "A translation entry was written into the Combined Region and Segment Table Entry array in the Level-2 TLB for a one-megabyte page or a Last Host Translation was done"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "132",
|
||||||
|
"EventName": "DTLB2_GPAGE_WRITES",
|
||||||
|
"BriefDescription": "DTLB2 Two-Gigabyte Page Writes",
|
||||||
|
"PublicDescription": "A translation entry for a two-gigabyte page was written into the Level-2 TLB"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "133",
|
||||||
|
"EventName": "L1D_L2D_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D L2D Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from the Level-2 Data cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "134",
|
||||||
|
"EventName": "ITLB2_WRITES",
|
||||||
|
"BriefDescription": "ITLB2 Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written into the Translation Lookaside Buffer 2 (TLB2) and the request was made by the instruction cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "135",
|
||||||
|
"EventName": "ITLB2_MISSES",
|
||||||
|
"BriefDescription": "ITLB2 Misses",
|
||||||
|
"PublicDescription": "A TLB2 miss is in progress for a request made by the instruction cache. Incremented by one for every TLB2 miss in progress for the Level-1 Instruction cache in a cycle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "136",
|
||||||
|
"EventName": "L1I_L2I_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I L2I Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from the Level-2 Instruction cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "137",
|
||||||
|
"EventName": "TLB2_PTE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 PTE Writes",
|
||||||
|
"PublicDescription": "A translation entry was written into the Page Table Entry array in the Level-2 TLB"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "138",
|
||||||
|
"EventName": "TLB2_CRSTE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 CRSTE Writes",
|
||||||
|
"PublicDescription": "Translation entries were written into the Combined Region and Segment Table Entry array and the Page Table Entry array in the Level-2 TLB"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "139",
|
||||||
|
"EventName": "TLB2_ENGINES_BUSY",
|
||||||
|
"BriefDescription": "TLB2 Engines Busy",
|
||||||
|
"PublicDescription": "The number of Level-2 TLB translation engines busy in a cycle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "140",
|
||||||
|
"EventName": "TX_C_TEND",
|
||||||
|
"BriefDescription": "Completed TEND instructions in constrained TX mode",
|
||||||
|
"PublicDescription": "A TEND instruction has completed in a constrained transactional-execution mode"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "141",
|
||||||
|
"EventName": "TX_NC_TEND",
|
||||||
|
"BriefDescription": "Completed TEND instructions in non-constrained TX mode",
|
||||||
|
"PublicDescription": "A TEND instruction has completed in a non-constrained transactional-execution mode"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "143",
|
||||||
|
"EventName": "L1C_TLB2_MISSES",
|
||||||
|
"BriefDescription": "L1C TLB2 Misses",
|
||||||
|
"PublicDescription": "Increments by one for any cycle where a level-1 cache or level-2 TLB miss is in progress"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "144",
|
||||||
|
"EventName": "L1D_ONCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Chip Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "145",
|
||||||
|
"EventName": "L1D_ONCHIP_MEMORY_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Chip Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from On-Chip memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "146",
|
||||||
|
"EventName": "L1D_ONCHIP_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D On-Chip L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Chip Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "147",
|
||||||
|
"EventName": "L1D_ONCLUSTER_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Cluster L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from On-Cluster Level-3 cache withountervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "148",
|
||||||
|
"EventName": "L1D_ONCLUSTER_MEMORY_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Cluster Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Cluster memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "149",
|
||||||
|
"EventName": "L1D_ONCLUSTER_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D On-Cluster L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On-Cluster Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "150",
|
||||||
|
"EventName": "L1D_OFFCLUSTER_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Cluster L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off-Cluster Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "151",
|
||||||
|
"EventName": "L1D_OFFCLUSTER_MEMORY_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Cluster Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from Off-Cluster memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "152",
|
||||||
|
"EventName": "L1D_OFFCLUSTER_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D Off-Cluster L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off-Cluster Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "153",
|
||||||
|
"EventName": "L1D_OFFDRAWER_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Drawer L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off-Drawer Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "154",
|
||||||
|
"EventName": "L1D_OFFDRAWER_MEMORY_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Drawer Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from Off-Drawer memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "155",
|
||||||
|
"EventName": "L1D_OFFDRAWER_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D Off-Drawer L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off-Drawer Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "156",
|
||||||
|
"EventName": "L1D_ONDRAWER_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Drawer L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from On-Drawer Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "157",
|
||||||
|
"EventName": "L1D_OFFDRAWER_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Drawer L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from Off-Drawer Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "158",
|
||||||
|
"EventName": "L1D_ONCHIP_L3_SOURCED_WRITES_RO",
|
||||||
|
"BriefDescription": "L1D On-Chip L3 Sourced Writes read-only",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from On-Chip L3 but a read-only invalidate was done to remove other copies of the cache line"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "162",
|
||||||
|
"EventName": "L1I_ONCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache ine was sourced from an On-Chip Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "163",
|
||||||
|
"EventName": "L1I_ONCHIP_MEMORY_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Chip Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache ine was sourced from On-Chip memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "164",
|
||||||
|
"EventName": "L1I_ONCHIP_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I On-Chip L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache ine was sourced from an On-Chip Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "165",
|
||||||
|
"EventName": "L1I_ONCLUSTER_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Cluster L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On-Cluster Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "166",
|
||||||
|
"EventName": "L1I_ONCLUSTER_MEMORY_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Cluster Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On-Cluster memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "167",
|
||||||
|
"EventName": "L1I_ONCLUSTER_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I On-Cluster L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from On-Cluster Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "168",
|
||||||
|
"EventName": "L1I_OFFCLUSTER_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Cluster L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off-Cluster Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "169",
|
||||||
|
"EventName": "L1I_OFFCLUSTER_MEMORY_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Cluster Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from Off-Cluster memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "170",
|
||||||
|
"EventName": "L1I_OFFCLUSTER_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I Off-Cluster L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off-Cluster Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "171",
|
||||||
|
"EventName": "L1I_OFFDRAWER_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Drawer L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off-Drawer Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "172",
|
||||||
|
"EventName": "L1I_OFFDRAWER_MEMORY_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Drawer Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from Off-Drawer memory"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "173",
|
||||||
|
"EventName": "L1I_OFFDRAWER_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I Off-Drawer L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off-Drawer Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "174",
|
||||||
|
"EventName": "L1I_ONDRAWER_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Drawer L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from On-Drawer Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "175",
|
||||||
|
"EventName": "L1I_OFFDRAWER_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Drawer L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from Off-Drawer Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "224",
|
||||||
|
"EventName": "BCD_DFP_EXECUTION_SLOTS",
|
||||||
|
"BriefDescription": "BCD DFP Execution Slots",
|
||||||
|
"PublicDescription": "Count of floating point execution slots used for finished Binary Coded Decimal to Decimal Floating Point conversions. Instructions: CDZT, CXZT, CZDT, CZXT"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "225",
|
||||||
|
"EventName": "VX_BCD_EXECUTION_SLOTS",
|
||||||
|
"BriefDescription": "VX BCD Execution Slots",
|
||||||
|
"PublicDescription": "Count of floating point execution slots used for finished vector arithmetic Binary Coded Decimal instructions. Instructions: VAP, VSP, VMPVMSP, VDP, VSDP, VRP, VLIP, VSRP, VPSOPVCP, VTP, VPKZ, VUPKZ, VCVB, VCVBG, VCVDVCVDG"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "226",
|
||||||
|
"EventName": "DECIMAL_INSTRUCTIONS",
|
||||||
|
"BriefDescription": "Decimal Instructions",
|
||||||
|
"PublicDescription": "Decimal instructions dispatched. Instructions: CVB, CVD, AP, CP, DP, ED, EDMK, MP, SRP, SP, ZAP"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "232",
|
||||||
|
"EventName": "LAST_HOST_TRANSLATIONS",
|
||||||
|
"BriefDescription": "Last host translation done",
|
||||||
|
"PublicDescription": "Last Host Translation done"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "243",
|
||||||
|
"EventName": "TX_NC_TABORT",
|
||||||
|
"BriefDescription": "Aborted transactions in non-constrained TX mode",
|
||||||
|
"PublicDescription": "A transaction abort has occurred in a non-constrained transactional-execution mode"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "244",
|
||||||
|
"EventName": "TX_C_TABORT_NO_SPECIAL",
|
||||||
|
"BriefDescription": "Aborted transactions in constrained TX mode not using special completion logic",
|
||||||
|
"PublicDescription": "A transaction abort has occurred in a constrained transactional-execution mode and the CPU is not using any special logic to allow the transaction to complete"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "245",
|
||||||
|
"EventName": "TX_C_TABORT_SPECIAL",
|
||||||
|
"BriefDescription": "Aborted transactions in constrained TX mode using special completion logic",
|
||||||
|
"PublicDescription": "A transaction abort has occurred in a constrained transactional-execution mode and the CPU is using special logic to allow the transaction to complete"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "448",
|
||||||
|
"EventName": "MT_DIAG_CYCLES_ONE_THR_ACTIVE",
|
||||||
|
"BriefDescription": "Cycle count with one thread active",
|
||||||
|
"PublicDescription": "Cycle count with one thread active"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "449",
|
||||||
|
"EventName": "MT_DIAG_CYCLES_TWO_THR_ACTIVE",
|
||||||
|
"BriefDescription": "Cycle count with two threads active",
|
||||||
|
"PublicDescription": "Cycle count with two threads active"
|
||||||
|
},
|
||||||
|
]
|
74
lib/libpmcstat/pmu-events/arch/s390/cf_z196/basic.json
Normal file
74
lib/libpmcstat/pmu-events/arch/s390/cf_z196/basic.json
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0",
|
||||||
|
"EventName": "CPU_CYCLES",
|
||||||
|
"BriefDescription": "CPU Cycles",
|
||||||
|
"PublicDescription": "Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "1",
|
||||||
|
"EventName": "INSTRUCTIONS",
|
||||||
|
"BriefDescription": "Instructions",
|
||||||
|
"PublicDescription": "Instruction Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "2",
|
||||||
|
"EventName": "L1I_DIR_WRITES",
|
||||||
|
"BriefDescription": "L1I Directory Writes",
|
||||||
|
"PublicDescription": "Level-1 I-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "3",
|
||||||
|
"EventName": "L1I_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "L1I Penalty Cycles",
|
||||||
|
"PublicDescription": "Level-1 I-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "4",
|
||||||
|
"EventName": "L1D_DIR_WRITES",
|
||||||
|
"BriefDescription": "L1D Directory Writes",
|
||||||
|
"PublicDescription": "Level-1 D-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "5",
|
||||||
|
"EventName": "L1D_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "L1D Penalty Cycles",
|
||||||
|
"PublicDescription": "Level-1 D-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "32",
|
||||||
|
"EventName": "PROBLEM_STATE_CPU_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State CPU Cycles",
|
||||||
|
"PublicDescription": "Problem-State Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "33",
|
||||||
|
"EventName": "PROBLEM_STATE_INSTRUCTIONS",
|
||||||
|
"BriefDescription": "Problem-State Instructions",
|
||||||
|
"PublicDescription": "Problem-State Instruction Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "34",
|
||||||
|
"EventName": "PROBLEM_STATE_L1I_DIR_WRITES",
|
||||||
|
"BriefDescription": "Problem-State L1I Directory Writes",
|
||||||
|
"PublicDescription": "Problem-State Level-1 I-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "35",
|
||||||
|
"EventName": "PROBLEM_STATE_L1I_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State L1I Penalty Cycles",
|
||||||
|
"PublicDescription": "Problem-State Level-1 I-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "36",
|
||||||
|
"EventName": "PROBLEM_STATE_L1D_DIR_WRITES",
|
||||||
|
"BriefDescription": "Problem-State L1D Directory Writes",
|
||||||
|
"PublicDescription": "Problem-State Level-1 D-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "37",
|
||||||
|
"EventName": "PROBLEM_STATE_L1D_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State L1D Penalty Cycles",
|
||||||
|
"PublicDescription": "Problem-State Level-1 D-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
]
|
98
lib/libpmcstat/pmu-events/arch/s390/cf_z196/crypto.json
Normal file
98
lib/libpmcstat/pmu-events/arch/s390/cf_z196/crypto.json
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "64",
|
||||||
|
"EventName": "PRNG_FUNCTIONS",
|
||||||
|
"BriefDescription": "PRNG Functions",
|
||||||
|
"PublicDescription": "Total number of the PRNG functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "65",
|
||||||
|
"EventName": "PRNG_CYCLES",
|
||||||
|
"BriefDescription": "PRNG Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing PRNG functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "66",
|
||||||
|
"EventName": "PRNG_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "PRNG Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the PRNG functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "67",
|
||||||
|
"EventName": "PRNG_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "PRNG Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the PRNG functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "68",
|
||||||
|
"EventName": "SHA_FUNCTIONS",
|
||||||
|
"BriefDescription": "SHA Functions",
|
||||||
|
"PublicDescription": "Total number of SHA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "69",
|
||||||
|
"EventName": "SHA_CYCLES",
|
||||||
|
"BriefDescription": "SHA Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the SHA coprocessor is busy performing the SHA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "70",
|
||||||
|
"EventName": "SHA_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "SHA Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the SHA functions that are issued by the CPU and are blocked because the SHA coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "71",
|
||||||
|
"EventName": "SHA_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "SHA Bloced Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the SHA functions issued by the CPU because the SHA coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "72",
|
||||||
|
"EventName": "DEA_FUNCTIONS",
|
||||||
|
"BriefDescription": "DEA Functions",
|
||||||
|
"PublicDescription": "Total number of the DEA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "73",
|
||||||
|
"EventName": "DEA_CYCLES",
|
||||||
|
"BriefDescription": "DEA Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing the DEA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "74",
|
||||||
|
"EventName": "DEA_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "DEA Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the DEA functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "75",
|
||||||
|
"EventName": "DEA_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "DEA Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the DEA functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "76",
|
||||||
|
"EventName": "AES_FUNCTIONS",
|
||||||
|
"BriefDescription": "AES Functions",
|
||||||
|
"PublicDescription": "Total number of AES functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "77",
|
||||||
|
"EventName": "AES_CYCLES",
|
||||||
|
"BriefDescription": "AES Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing the AES functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "78",
|
||||||
|
"EventName": "AES_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "AES Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of AES functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "79",
|
||||||
|
"EventName": "AES_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "AES Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the AES functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
]
|
146
lib/libpmcstat/pmu-events/arch/s390/cf_z196/extended.json
Normal file
146
lib/libpmcstat/pmu-events/arch/s390/cf_z196/extended.json
Normal file
@ -0,0 +1,146 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "128",
|
||||||
|
"EventName": "L1D_L2_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D L2 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache directory where the returned cache line was sourced from the Level-2 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "129",
|
||||||
|
"EventName": "L1I_L2_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I L2 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 I-Cache directory where the returned cache line was sourced from the Level-2 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "130",
|
||||||
|
"EventName": "DTLB1_MISSES",
|
||||||
|
"BriefDescription": "DTLB1 Misses",
|
||||||
|
"PublicDescription": "Level-1 Data TLB miss in progress. Incremented by one for every cycle a DTLB1 miss is in progress."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "131",
|
||||||
|
"EventName": "ITLB1_MISSES",
|
||||||
|
"BriefDescription": "ITLB1 Misses",
|
||||||
|
"PublicDescription": "Level-1 Instruction TLB miss in progress. Incremented by one for every cycle a ITLB1 miss is in progress."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "133",
|
||||||
|
"EventName": "L2C_STORES_SENT",
|
||||||
|
"BriefDescription": "L2C Stores Sent",
|
||||||
|
"PublicDescription": "Incremented by one for every store sent to Level-2 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "134",
|
||||||
|
"EventName": "L1D_OFFBOOK_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Book L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache directory where the returned cache line was sourced from an Off Book Level-3 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "135",
|
||||||
|
"EventName": "L1D_ONBOOK_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Book L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache directory where the returned cache line was sourced from an On Book Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "136",
|
||||||
|
"EventName": "L1I_ONBOOK_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Book L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 I-Cache directory where the returned cache line was sourced from an On Book Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "137",
|
||||||
|
"EventName": "L1D_RO_EXCL_WRITES",
|
||||||
|
"BriefDescription": "L1D Read-only Exclusive Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache where the line was originally in a Read-Only state in the cache but has been updated to be in the Exclusive state that allows stores to the cache line"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "138",
|
||||||
|
"EventName": "L1D_OFFBOOK_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Book L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache directory where the returned cache line was sourced from an Off Book Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "139",
|
||||||
|
"EventName": "L1I_OFFBOOK_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Book L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 I-Cache directory where the returned cache line was sourced from an Off Book Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "140",
|
||||||
|
"EventName": "DTLB1_HPAGE_WRITES",
|
||||||
|
"BriefDescription": "DTLB1 One-Megabyte Page Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-1 Data Translation Lookaside Buffer for a one-megabyte page"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "141",
|
||||||
|
"EventName": "L1D_LMEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Local Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache where the installed cache line was sourced from memory that is attached to the same book as the Data cache (Local Memory)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "142",
|
||||||
|
"EventName": "L1I_LMEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Local Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 I-Cache where the installed cache line was sourced from memory that is attached to the same book as the Instruction cache (Local Memory)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "143",
|
||||||
|
"EventName": "L1I_OFFBOOK_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Book L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 I-Cache directory where the returned cache line was sourced from an Off Book Level-3 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "144",
|
||||||
|
"EventName": "DTLB1_WRITES",
|
||||||
|
"BriefDescription": "DTLB1 Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-1 Data Translation Lookaside Buffer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "145",
|
||||||
|
"EventName": "ITLB1_WRITES",
|
||||||
|
"BriefDescription": "ITLB1 Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-1 Instruction Translation Lookaside Buffer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "146",
|
||||||
|
"EventName": "TLB2_PTE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 PTE Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Page Table Entry arrays"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "147",
|
||||||
|
"EventName": "TLB2_CRSTE_HPAGE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 CRSTE One-Megabyte Page Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Common Region Segment Table Entry arrays for a one-megabyte large page translation"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "148",
|
||||||
|
"EventName": "TLB2_CRSTE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 CRSTE Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Common Region Segment Table Entry arrays"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "150",
|
||||||
|
"EventName": "L1D_ONCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache directory where the returned cache line was sourced from an On Chip Level-3 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "152",
|
||||||
|
"EventName": "L1D_OFFCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache directory where the returned cache line was sourced from an Off Chip/On Book Level-3 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "153",
|
||||||
|
"EventName": "L1I_ONCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 I-Cache directory where the returned cache line was sourced from an On Chip Level-3 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "155",
|
||||||
|
"EventName": "L1I_OFFCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 I-Cache directory where the returned cache line was sourced from an Off Chip/On Book Level-3 cache"
|
||||||
|
},
|
||||||
|
]
|
74
lib/libpmcstat/pmu-events/arch/s390/cf_zec12/basic.json
Normal file
74
lib/libpmcstat/pmu-events/arch/s390/cf_zec12/basic.json
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0",
|
||||||
|
"EventName": "CPU_CYCLES",
|
||||||
|
"BriefDescription": "CPU Cycles",
|
||||||
|
"PublicDescription": "Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "1",
|
||||||
|
"EventName": "INSTRUCTIONS",
|
||||||
|
"BriefDescription": "Instructions",
|
||||||
|
"PublicDescription": "Instruction Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "2",
|
||||||
|
"EventName": "L1I_DIR_WRITES",
|
||||||
|
"BriefDescription": "L1I Directory Writes",
|
||||||
|
"PublicDescription": "Level-1 I-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "3",
|
||||||
|
"EventName": "L1I_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "L1I Penalty Cycles",
|
||||||
|
"PublicDescription": "Level-1 I-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "4",
|
||||||
|
"EventName": "L1D_DIR_WRITES",
|
||||||
|
"BriefDescription": "L1D Directory Writes",
|
||||||
|
"PublicDescription": "Level-1 D-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "5",
|
||||||
|
"EventName": "L1D_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "L1D Penalty Cycles",
|
||||||
|
"PublicDescription": "Level-1 D-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "32",
|
||||||
|
"EventName": "PROBLEM_STATE_CPU_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State CPU Cycles",
|
||||||
|
"PublicDescription": "Problem-State Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "33",
|
||||||
|
"EventName": "PROBLEM_STATE_INSTRUCTIONS",
|
||||||
|
"BriefDescription": "Problem-State Instructions",
|
||||||
|
"PublicDescription": "Problem-State Instruction Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "34",
|
||||||
|
"EventName": "PROBLEM_STATE_L1I_DIR_WRITES",
|
||||||
|
"BriefDescription": "Problem-State L1I Directory Writes",
|
||||||
|
"PublicDescription": "Problem-State Level-1 I-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "35",
|
||||||
|
"EventName": "PROBLEM_STATE_L1I_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State L1I Penalty Cycles",
|
||||||
|
"PublicDescription": "Problem-State Level-1 I-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "36",
|
||||||
|
"EventName": "PROBLEM_STATE_L1D_DIR_WRITES",
|
||||||
|
"BriefDescription": "Problem-State L1D Directory Writes",
|
||||||
|
"PublicDescription": "Problem-State Level-1 D-Cache Directory Write Count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "37",
|
||||||
|
"EventName": "PROBLEM_STATE_L1D_PENALTY_CYCLES",
|
||||||
|
"BriefDescription": "Problem-State L1D Penalty Cycles",
|
||||||
|
"PublicDescription": "Problem-State Level-1 D-Cache Penalty Cycle Count"
|
||||||
|
},
|
||||||
|
]
|
98
lib/libpmcstat/pmu-events/arch/s390/cf_zec12/crypto.json
Normal file
98
lib/libpmcstat/pmu-events/arch/s390/cf_zec12/crypto.json
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "64",
|
||||||
|
"EventName": "PRNG_FUNCTIONS",
|
||||||
|
"BriefDescription": "PRNG Functions",
|
||||||
|
"PublicDescription": "Total number of the PRNG functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "65",
|
||||||
|
"EventName": "PRNG_CYCLES",
|
||||||
|
"BriefDescription": "PRNG Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing PRNG functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "66",
|
||||||
|
"EventName": "PRNG_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "PRNG Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the PRNG functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "67",
|
||||||
|
"EventName": "PRNG_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "PRNG Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the PRNG functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "68",
|
||||||
|
"EventName": "SHA_FUNCTIONS",
|
||||||
|
"BriefDescription": "SHA Functions",
|
||||||
|
"PublicDescription": "Total number of SHA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "69",
|
||||||
|
"EventName": "SHA_CYCLES",
|
||||||
|
"BriefDescription": "SHA Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the SHA coprocessor is busy performing the SHA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "70",
|
||||||
|
"EventName": "SHA_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "SHA Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the SHA functions that are issued by the CPU and are blocked because the SHA coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "71",
|
||||||
|
"EventName": "SHA_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "SHA Bloced Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the SHA functions issued by the CPU because the SHA coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "72",
|
||||||
|
"EventName": "DEA_FUNCTIONS",
|
||||||
|
"BriefDescription": "DEA Functions",
|
||||||
|
"PublicDescription": "Total number of the DEA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "73",
|
||||||
|
"EventName": "DEA_CYCLES",
|
||||||
|
"BriefDescription": "DEA Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing the DEA functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "74",
|
||||||
|
"EventName": "DEA_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "DEA Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of the DEA functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "75",
|
||||||
|
"EventName": "DEA_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "DEA Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the DEA functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "76",
|
||||||
|
"EventName": "AES_FUNCTIONS",
|
||||||
|
"BriefDescription": "AES Functions",
|
||||||
|
"PublicDescription": "Total number of AES functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "77",
|
||||||
|
"EventName": "AES_CYCLES",
|
||||||
|
"BriefDescription": "AES Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles when the DEA/AES coprocessor is busy performing the AES functions issued by the CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "78",
|
||||||
|
"EventName": "AES_BLOCKED_FUNCTIONS",
|
||||||
|
"BriefDescription": "AES Blocked Functions",
|
||||||
|
"PublicDescription": "Total number of AES functions that are issued by the CPU and are blocked because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "79",
|
||||||
|
"EventName": "AES_BLOCKED_CYCLES",
|
||||||
|
"BriefDescription": "AES Blocked Cycles",
|
||||||
|
"PublicDescription": "Total number of CPU cycles blocked for the AES functions issued by the CPU because the DEA/AES coprocessor is busy performing a function issued by another CPU"
|
||||||
|
},
|
||||||
|
]
|
212
lib/libpmcstat/pmu-events/arch/s390/cf_zec12/extended.json
Normal file
212
lib/libpmcstat/pmu-events/arch/s390/cf_zec12/extended.json
Normal file
@ -0,0 +1,212 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "128",
|
||||||
|
"EventName": "DTLB1_MISSES",
|
||||||
|
"BriefDescription": "DTLB1 Misses",
|
||||||
|
"PublicDescription": "Level-1 Data TLB miss in progress. Incremented by one for every cycle a DTLB1 miss is in progress."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "129",
|
||||||
|
"EventName": "ITLB1_MISSES",
|
||||||
|
"BriefDescription": "ITLB1 Misses",
|
||||||
|
"PublicDescription": "Level-1 Instruction TLB miss in progress. Incremented by one for every cycle a ITLB1 miss is in progress."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "130",
|
||||||
|
"EventName": "L1D_L2I_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D L2I Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from the Level-2 Instruction cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "131",
|
||||||
|
"EventName": "L1I_L2I_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I L2I Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from the Level-2 Instruction cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "132",
|
||||||
|
"EventName": "L1D_L2D_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D L2D Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from the Level-2 Data cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "133",
|
||||||
|
"EventName": "DTLB1_WRITES",
|
||||||
|
"BriefDescription": "DTLB1 Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-1 Data Translation Lookaside Buffer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "135",
|
||||||
|
"EventName": "L1D_LMEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Local Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache where the installed cache line was sourced from memory that is attached to the same book as the Data cache (Local Memory)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "137",
|
||||||
|
"EventName": "L1I_LMEM_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Local Memory Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache where the installed cache line was sourced from memory that is attached to the same book as the Instruction cache (Local Memory)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "138",
|
||||||
|
"EventName": "L1D_RO_EXCL_WRITES",
|
||||||
|
"BriefDescription": "L1D Read-only Exclusive Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 D-Cache where the line was originally in a Read-Only state in the cache but has been updated to be in the Exclusive state that allows stores to the cache line"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "139",
|
||||||
|
"EventName": "DTLB1_HPAGE_WRITES",
|
||||||
|
"BriefDescription": "DTLB1 One-Megabyte Page Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-1 Data Translation Lookaside Buffer for a one-megabyte page"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "140",
|
||||||
|
"EventName": "ITLB1_WRITES",
|
||||||
|
"BriefDescription": "ITLB1 Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-1 Instruction Translation Lookaside Buffer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "141",
|
||||||
|
"EventName": "TLB2_PTE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 PTE Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Page Table Entry arrays"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "142",
|
||||||
|
"EventName": "TLB2_CRSTE_HPAGE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 CRSTE One-Megabyte Page Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Common Region Segment Table Entry arrays for a one-megabyte large page translation"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "143",
|
||||||
|
"EventName": "TLB2_CRSTE_WRITES",
|
||||||
|
"BriefDescription": "TLB2 CRSTE Writes",
|
||||||
|
"PublicDescription": "A translation entry has been written to the Level-2 TLB Common Region Segment Table Entry arrays"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "144",
|
||||||
|
"EventName": "L1D_ONCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On Chip Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "145",
|
||||||
|
"EventName": "L1D_OFFCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off Chip/On Book Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "146",
|
||||||
|
"EventName": "L1D_OFFBOOK_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Book L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off Book Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "147",
|
||||||
|
"EventName": "L1D_ONBOOK_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D On-Book L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an On Book Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "148",
|
||||||
|
"EventName": "L1D_OFFBOOK_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1D Off-Book L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off Book Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "149",
|
||||||
|
"EventName": "TX_NC_TEND",
|
||||||
|
"BriefDescription": "Completed TEND instructions in non-constrained TX mode",
|
||||||
|
"PublicDescription": "A TEND instruction has completed in a nonconstrained transactional-execution mode"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "150",
|
||||||
|
"EventName": "L1D_ONCHIP_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D On-Chip L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from a On Chip Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "151",
|
||||||
|
"EventName": "L1D_OFFCHIP_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D Off-Chip L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off Chip/On Book Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "152",
|
||||||
|
"EventName": "L1D_OFFBOOK_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1D Off-Book L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Data cache directory where the returned cache line was sourced from an Off Book Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "153",
|
||||||
|
"EventName": "L1I_ONCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On Chip Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "154",
|
||||||
|
"EventName": "L1I_OFFCHIP_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Chip L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off Chip/On Book Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "155",
|
||||||
|
"EventName": "L1I_OFFBOOK_L3_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Book L3 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off Book Level-3 cache without intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "156",
|
||||||
|
"EventName": "L1I_ONBOOK_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I On-Book L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On Book Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "157",
|
||||||
|
"EventName": "L1I_OFFBOOK_L4_SOURCED_WRITES",
|
||||||
|
"BriefDescription": "L1I Off-Book L4 Sourced Writes",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off Book Level-4 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "158",
|
||||||
|
"EventName": "TX_C_TEND",
|
||||||
|
"BriefDescription": "Completed TEND instructions in constrained TX mode",
|
||||||
|
"PublicDescription": "A TEND instruction has completed in a constrained transactional-execution mode"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "159",
|
||||||
|
"EventName": "L1I_ONCHIP_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I On-Chip L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an On Chip Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "160",
|
||||||
|
"EventName": "L1I_OFFCHIP_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I Off-Chip L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off Chip/On Book Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "161",
|
||||||
|
"EventName": "L1I_OFFBOOK_L3_SOURCED_WRITES_IV",
|
||||||
|
"BriefDescription": "L1I Off-Book L3 Sourced Writes with Intervention",
|
||||||
|
"PublicDescription": "A directory write to the Level-1 Instruction cache directory where the returned cache line was sourced from an Off Book Level-3 cache with intervention"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "177",
|
||||||
|
"EventName": "TX_NC_TABORT",
|
||||||
|
"BriefDescription": "Aborted transactions in non-constrained TX mode",
|
||||||
|
"PublicDescription": "A transaction abort has occurred in a nonconstrained transactional-execution mode"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "178",
|
||||||
|
"EventName": "TX_C_TABORT_NO_SPECIAL",
|
||||||
|
"BriefDescription": "Aborted transactions in constrained TX mode not using special completion logic",
|
||||||
|
"PublicDescription": "A transaction abort has occurred in a constrained transactional-execution mode and the CPU is not using any special logic to allow the transaction to complete"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "179",
|
||||||
|
"EventName": "TX_C_TABORT_SPECIAL",
|
||||||
|
"BriefDescription": "Aborted transactions in constrained TX mode using special completion logic",
|
||||||
|
"PublicDescription": "A transaction abort has occurred in a constrained transactional-execution mode and the CPU is using special logic to allow the transaction to complete"
|
||||||
|
},
|
||||||
|
]
|
6
lib/libpmcstat/pmu-events/arch/s390/mapfile.csv
Normal file
6
lib/libpmcstat/pmu-events/arch/s390/mapfile.csv
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
Family-model,Version,Filename,EventType
|
||||||
|
209[78],1,cf_z10,core
|
||||||
|
281[78],1,cf_z196,core
|
||||||
|
282[78],1,cf_zec12,core
|
||||||
|
296[45],1,cf_z13,core
|
||||||
|
3906,3,cf_z14,core
|
|
746
lib/libpmcstat/pmu-events/arch/x86/bonnell/cache.json
Normal file
746
lib/libpmcstat/pmu-events/arch/x86/bonnell/cache.json
Normal file
@ -0,0 +1,746 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x21",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "L2_ADS.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Cycles L2 address bus is in use."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x22",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "L2_DBUS_BUSY.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Cycles the L2 cache data bus is busy."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x23",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "L2_DBUS_BUSY_RD.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Cycles the L2 transfers data to the core."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x70",
|
||||||
|
"EventName": "L2_LINES_IN.SELF.ANY",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache misses."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "L2_LINES_IN.SELF.DEMAND",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache misses."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x50",
|
||||||
|
"EventName": "L2_LINES_IN.SELF.PREFETCH",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache misses."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x25",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "L2_M_LINES_IN.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache line modifications."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x26",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x70",
|
||||||
|
"EventName": "L2_LINES_OUT.SELF.ANY",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache lines evicted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x26",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "L2_LINES_OUT.SELF.DEMAND",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache lines evicted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x26",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x50",
|
||||||
|
"EventName": "L2_LINES_OUT.SELF.PREFETCH",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache lines evicted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x27",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x70",
|
||||||
|
"EventName": "L2_M_LINES_OUT.SELF.ANY",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Modified lines evicted from the L2 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x27",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "L2_M_LINES_OUT.SELF.DEMAND",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Modified lines evicted from the L2 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x27",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x50",
|
||||||
|
"EventName": "L2_M_LINES_OUT.SELF.PREFETCH",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Modified lines evicted from the L2 cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x28",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x44",
|
||||||
|
"EventName": "L2_IFETCH.SELF.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cacheable instruction fetch requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x28",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"EventName": "L2_IFETCH.SELF.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cacheable instruction fetch requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x28",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x48",
|
||||||
|
"EventName": "L2_IFETCH.SELF.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cacheable instruction fetch requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x28",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"EventName": "L2_IFETCH.SELF.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cacheable instruction fetch requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x28",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4f",
|
||||||
|
"EventName": "L2_IFETCH.SELF.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cacheable instruction fetch requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x74",
|
||||||
|
"EventName": "L2_LD.SELF.ANY.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x71",
|
||||||
|
"EventName": "L2_LD.SELF.ANY.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x78",
|
||||||
|
"EventName": "L2_LD.SELF.ANY.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x72",
|
||||||
|
"EventName": "L2_LD.SELF.ANY.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x7f",
|
||||||
|
"EventName": "L2_LD.SELF.ANY.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x44",
|
||||||
|
"EventName": "L2_LD.SELF.DEMAND.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"EventName": "L2_LD.SELF.DEMAND.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x48",
|
||||||
|
"EventName": "L2_LD.SELF.DEMAND.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"EventName": "L2_LD.SELF.DEMAND.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4f",
|
||||||
|
"EventName": "L2_LD.SELF.DEMAND.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x54",
|
||||||
|
"EventName": "L2_LD.SELF.PREFETCH.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x51",
|
||||||
|
"EventName": "L2_LD.SELF.PREFETCH.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x58",
|
||||||
|
"EventName": "L2_LD.SELF.PREFETCH.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x52",
|
||||||
|
"EventName": "L2_LD.SELF.PREFETCH.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x29",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x5f",
|
||||||
|
"EventName": "L2_LD.SELF.PREFETCH.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2A",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x44",
|
||||||
|
"EventName": "L2_ST.SELF.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 store requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2A",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"EventName": "L2_ST.SELF.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 store requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2A",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x48",
|
||||||
|
"EventName": "L2_ST.SELF.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 store requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2A",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"EventName": "L2_ST.SELF.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 store requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2A",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4f",
|
||||||
|
"EventName": "L2_ST.SELF.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 store requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2B",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x44",
|
||||||
|
"EventName": "L2_LOCK.SELF.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 locked accesses"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2B",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"EventName": "L2_LOCK.SELF.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 locked accesses"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2B",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x48",
|
||||||
|
"EventName": "L2_LOCK.SELF.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 locked accesses"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2B",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"EventName": "L2_LOCK.SELF.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 locked accesses"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2B",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4f",
|
||||||
|
"EventName": "L2_LOCK.SELF.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 locked accesses"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2C",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x44",
|
||||||
|
"EventName": "L2_DATA_RQSTS.SELF.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All data requests from the L1 data cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2C",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"EventName": "L2_DATA_RQSTS.SELF.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All data requests from the L1 data cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2C",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x48",
|
||||||
|
"EventName": "L2_DATA_RQSTS.SELF.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All data requests from the L1 data cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2C",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"EventName": "L2_DATA_RQSTS.SELF.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All data requests from the L1 data cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2C",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4f",
|
||||||
|
"EventName": "L2_DATA_RQSTS.SELF.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All data requests from the L1 data cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2D",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x44",
|
||||||
|
"EventName": "L2_LD_IFETCH.SELF.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All read requests from L1 instruction and data caches"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2D",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"EventName": "L2_LD_IFETCH.SELF.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All read requests from L1 instruction and data caches"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2D",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x48",
|
||||||
|
"EventName": "L2_LD_IFETCH.SELF.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All read requests from L1 instruction and data caches"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2D",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"EventName": "L2_LD_IFETCH.SELF.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All read requests from L1 instruction and data caches"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2D",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4f",
|
||||||
|
"EventName": "L2_LD_IFETCH.SELF.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All read requests from L1 instruction and data caches"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x74",
|
||||||
|
"EventName": "L2_RQSTS.SELF.ANY.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x71",
|
||||||
|
"EventName": "L2_RQSTS.SELF.ANY.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x78",
|
||||||
|
"EventName": "L2_RQSTS.SELF.ANY.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x72",
|
||||||
|
"EventName": "L2_RQSTS.SELF.ANY.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x7f",
|
||||||
|
"EventName": "L2_RQSTS.SELF.ANY.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x44",
|
||||||
|
"EventName": "L2_RQSTS.SELF.DEMAND.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x48",
|
||||||
|
"EventName": "L2_RQSTS.SELF.DEMAND.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"EventName": "L2_RQSTS.SELF.DEMAND.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x54",
|
||||||
|
"EventName": "L2_RQSTS.SELF.PREFETCH.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x51",
|
||||||
|
"EventName": "L2_RQSTS.SELF.PREFETCH.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x58",
|
||||||
|
"EventName": "L2_RQSTS.SELF.PREFETCH.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x52",
|
||||||
|
"EventName": "L2_RQSTS.SELF.PREFETCH.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x5f",
|
||||||
|
"EventName": "L2_RQSTS.SELF.PREFETCH.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"EventName": "L2_RQSTS.SELF.DEMAND.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache demand requests from this core that missed the L2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4f",
|
||||||
|
"EventName": "L2_RQSTS.SELF.DEMAND.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L2 cache demand requests from this core"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x74",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.ANY.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x71",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.ANY.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x78",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.ANY.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x72",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.ANY.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x7f",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.ANY.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x44",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.DEMAND.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.DEMAND.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x48",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.DEMAND.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.DEMAND.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4f",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.DEMAND.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x54",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.PREFETCH.E_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x51",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.PREFETCH.I_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x58",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.PREFETCH.M_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x52",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.PREFETCH.S_STATE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x30",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x5f",
|
||||||
|
"EventName": "L2_REJECT_BUSQ.SELF.PREFETCH.MESI",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Rejected L2 cache requests"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x32",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "L2_NO_REQ.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Cycles no L2 cache requests are pending"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x40",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xa1",
|
||||||
|
"EventName": "L1D_CACHE.LD",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "L1 Cacheable Data Reads"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x40",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xa2",
|
||||||
|
"EventName": "L1D_CACHE.ST",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "L1 Cacheable Data Writes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x40",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x83",
|
||||||
|
"EventName": "L1D_CACHE.ALL_REF",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "L1 Data reads and writes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x40",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xa3",
|
||||||
|
"EventName": "L1D_CACHE.ALL_CACHE_REF",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "L1 Data Cacheable reads and writes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x40",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "L1D_CACHE.REPL",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L1 Data line replacements"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x40",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x48",
|
||||||
|
"EventName": "L1D_CACHE.REPLM",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Modified cache lines allocated in the L1 data cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x40",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "L1D_CACHE.EVICT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Modified cache lines evicted from the L1 data cache"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCB",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "MEM_LOAD_RETIRED.L2_HIT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Retired loads that hit the L2 cache (precise event)."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCB",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "MEM_LOAD_RETIRED.L2_MISS",
|
||||||
|
"SampleAfterValue": "10000",
|
||||||
|
"BriefDescription": "Retired loads that miss the L2 cache"
|
||||||
|
}
|
||||||
|
]
|
261
lib/libpmcstat/pmu-events/arch/x86/bonnell/floating-point.json
Normal file
261
lib/libpmcstat/pmu-events/arch/x86/bonnell/floating-point.json
Normal file
@ -0,0 +1,261 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x10",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "X87_COMP_OPS_EXE.ANY.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Floating point computational micro-ops executed."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"EventCode": "0x10",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"EventName": "X87_COMP_OPS_EXE.ANY.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Floating point computational micro-ops retired."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x10",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "X87_COMP_OPS_EXE.FXCH.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "FXCH uops executed."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"EventCode": "0x10",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x82",
|
||||||
|
"EventName": "X87_COMP_OPS_EXE.FXCH.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "FXCH uops retired."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x11",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "FP_ASSIST.S",
|
||||||
|
"SampleAfterValue": "10000",
|
||||||
|
"BriefDescription": "Floating point assists."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x11",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"EventName": "FP_ASSIST.AR",
|
||||||
|
"SampleAfterValue": "10000",
|
||||||
|
"BriefDescription": "Floating point assists for retired operations."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB0",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "SIMD_UOPS_EXEC.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD micro-ops executed (excluding stores)."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"EventCode": "0xB0",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x80",
|
||||||
|
"EventName": "SIMD_UOPS_EXEC.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD micro-ops retired (excluding stores)."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB1",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "SIMD_SAT_UOP_EXEC.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD saturated arithmetic micro-ops executed."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB1",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x80",
|
||||||
|
"EventName": "SIMD_SAT_UOP_EXEC.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD saturated arithmetic micro-ops retired."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.MUL.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD packed multiply micro-ops executed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.MUL.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD packed multiply micro-ops retired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.SHIFT.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD packed shift micro-ops executed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x82",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.SHIFT.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD packed shift micro-ops retired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.PACK.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD packed micro-ops executed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x84",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.PACK.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD packed micro-ops retired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.UNPACK.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD unpacked micro-ops executed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x88",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.UNPACK.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD unpacked micro-ops retired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.LOGICAL.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD packed logical micro-ops executed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x90",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.LOGICAL.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD packed logical micro-ops retired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.ARITHMETIC.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD packed arithmetic micro-ops executed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xa0",
|
||||||
|
"EventName": "SIMD_UOP_TYPE_EXEC.ARITHMETIC.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD packed arithmetic micro-ops retired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "SIMD_INST_RETIRED.PACKED_SINGLE",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired Streaming SIMD Extensions (SSE) packed-single instructions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "SIMD_INST_RETIRED.SCALAR_SINGLE",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired Streaming SIMD Extensions (SSE) scalar-single instructions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "SIMD_INST_RETIRED.SCALAR_DOUBLE",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired Streaming SIMD Extensions 2 (SSE2) scalar-double instructions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "SIMD_INST_RETIRED.VECTOR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired Streaming SIMD Extensions 2 (SSE2) vector instructions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "SIMD_COMP_INST_RETIRED.PACKED_SINGLE",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired computational Streaming SIMD Extensions (SSE) packed-single instructions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "SIMD_COMP_INST_RETIRED.SCALAR_SINGLE",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired computational Streaming SIMD Extensions (SSE) scalar-single instructions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "SIMD_COMP_INST_RETIRED.SCALAR_DOUBLE",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired computational Streaming SIMD Extensions 2 (SSE2) scalar-double instructions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "SIMD_ASSIST",
|
||||||
|
"SampleAfterValue": "100000",
|
||||||
|
"BriefDescription": "SIMD assists invoked."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCE",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "SIMD_INSTR_RETIRED",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "SIMD Instructions retired."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCF",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "SIMD_SAT_INSTR_RETIRED",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Saturated arithmetic instructions retired."
|
||||||
|
}
|
||||||
|
]
|
83
lib/libpmcstat/pmu-events/arch/x86/bonnell/frontend.json
Normal file
83
lib/libpmcstat/pmu-events/arch/x86/bonnell/frontend.json
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"EventName": "ICACHE.ACCESSES",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Instruction fetches."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "ICACHE.HIT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Icache hit"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "ICACHE.MISSES",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Icache miss"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x86",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "CYCLES_ICACHE_MEM_STALLED.ICACHE_MEM_STALLED",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Cycles during which instruction fetches are stalled."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x87",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "DECODE_STALL.PFB_EMPTY",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Decode stall due to PFB empty"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x87",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "DECODE_STALL.IQ_FULL",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Decode stall due to IQ full"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xAA",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "MACRO_INSTS.NON_CISC_DECODED",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Non-CISC nacro instructions decoded"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xAA",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "MACRO_INSTS.CISC_DECODED",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "CISC macro instructions decoded"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xAA",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"EventName": "MACRO_INSTS.ALL_DECODED",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "All Instructions decoded"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xA9",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "UOPS.MS_CYCLES",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "This event counts the cycles where 1 or more uops are issued by the micro-sequencer (MS), including microcode assists and inserted flows, and written to the IQ. ",
|
||||||
|
"CounterMask": "1"
|
||||||
|
}
|
||||||
|
]
|
154
lib/libpmcstat/pmu-events/arch/x86/bonnell/memory.json
Normal file
154
lib/libpmcstat/pmu-events/arch/x86/bonnell/memory.json
Normal file
@ -0,0 +1,154 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xf",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.SPLIT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Memory references that cross an 8-byte boundary."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x9",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.LD_SPLIT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Load splits"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xa",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.ST_SPLIT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Store splits"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8f",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.SPLIT.AR",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Memory references that cross an 8-byte boundary (At Retirement)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x89",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.LD_SPLIT.AR",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Load splits (At Retirement)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8a",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.ST_SPLIT.AR",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Store splits (Ar Retirement)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8c",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.RMW_SPLIT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "ld-op-st splits"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x97",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.BUBBLE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Nonzero segbase 1 bubble"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x91",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.LD_BUBBLE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Nonzero segbase load 1 bubble"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x92",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.ST_BUBBLE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Nonzero segbase store 1 bubble"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x94",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.RMW_BUBBLE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Nonzero segbase ld-op-st 1 bubble"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"EventName": "PREFETCH.PREFETCHT0",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Streaming SIMD Extensions (SSE) PrefetchT0 instructions executed."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x82",
|
||||||
|
"EventName": "PREFETCH.PREFETCHT1",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Streaming SIMD Extensions (SSE) PrefetchT1 instructions executed."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x84",
|
||||||
|
"EventName": "PREFETCH.PREFETCHT2",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Streaming SIMD Extensions (SSE) PrefetchT2 instructions executed."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x86",
|
||||||
|
"EventName": "PREFETCH.SW_L2",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Streaming SIMD Extensions (SSE) PrefetchT1 and PrefetchT2 instructions executed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x88",
|
||||||
|
"EventName": "PREFETCH.PREFETCHNTA",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Streaming SIMD Extensions (SSE) Prefetch NTA instructions executed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "PREFETCH.HW_PREFETCH",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "L1 hardware prefetch request"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xf",
|
||||||
|
"EventName": "PREFETCH.SOFTWARE_PREFETCH",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Any Software prefetch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8f",
|
||||||
|
"EventName": "PREFETCH.SOFTWARE_PREFETCH.AR",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Any Software prefetch"
|
||||||
|
}
|
||||||
|
]
|
450
lib/libpmcstat/pmu-events/arch/x86/bonnell/other.json
Normal file
450
lib/libpmcstat/pmu-events/arch/x86/bonnell/other.json
Normal file
@ -0,0 +1,450 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x6",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x80",
|
||||||
|
"EventName": "SEGMENT_REG_LOADS.ANY",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Number of segment register loads."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "DISPATCH_BLOCKED.ANY",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Memory cluster signals to block micro-op dispatch for any reason"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x3A",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "EIST_TRANS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Number of Enhanced Intel SpeedStep(R) Technology (EIST) transitions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x3B",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xc0",
|
||||||
|
"EventName": "THERMAL_TRIP",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Number of thermal trips"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_REQUEST_OUTSTANDING.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Outstanding cacheable data read bus requests duration."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_REQUEST_OUTSTANDING.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Outstanding cacheable data read bus requests duration."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x61",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "BUS_BNR_DRV.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Number of Bus Not Ready signals asserted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x61",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "BUS_BNR_DRV.THIS_AGENT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Number of Bus Not Ready signals asserted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x62",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "BUS_DRDY_CLOCKS.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Bus cycles when data is sent on the bus."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x62",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "BUS_DRDY_CLOCKS.THIS_AGENT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Bus cycles when data is sent on the bus."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x63",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_LOCK_CLOCKS.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Bus cycles when a LOCK signal is asserted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x63",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_LOCK_CLOCKS.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Bus cycles when a LOCK signal is asserted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x64",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_DATA_RCV.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Bus cycles while processor receives data."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x65",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_BRD.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Burst read bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x65",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_BRD.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Burst read bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x66",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_RFO.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "RFO bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x66",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_RFO.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "RFO bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x67",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_WB.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Explicit writeback bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x67",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_WB.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Explicit writeback bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x68",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_IFETCH.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Instruction-fetch bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x68",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_IFETCH.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Instruction-fetch bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x69",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_INVAL.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Invalidate bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x69",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_INVAL.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Invalidate bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6A",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_PWR.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Partial write bus transaction."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6A",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_PWR.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Partial write bus transaction."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6B",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_P.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Partial bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6B",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_P.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Partial bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6C",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_IO.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "IO bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6C",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_IO.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "IO bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6D",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_DEF.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Deferred bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6D",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_DEF.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Deferred bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_BURST.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Burst (full cache-line) bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_BURST.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Burst (full cache-line) bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6F",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_MEM.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Memory bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x6F",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_MEM.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Memory bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x70",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "BUS_TRANS_ANY.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x70",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_TRANS_ANY.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All bus transactions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x77",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xb",
|
||||||
|
"EventName": "EXT_SNOOP.THIS_AGENT.ANY",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "External snoops."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x77",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "EXT_SNOOP.THIS_AGENT.CLEAN",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "External snoops."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x77",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "EXT_SNOOP.THIS_AGENT.HIT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "External snoops."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x77",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "EXT_SNOOP.THIS_AGENT.HITM",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "External snoops."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x77",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2b",
|
||||||
|
"EventName": "EXT_SNOOP.ALL_AGENTS.ANY",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "External snoops."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x77",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x21",
|
||||||
|
"EventName": "EXT_SNOOP.ALL_AGENTS.CLEAN",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "External snoops."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x77",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x22",
|
||||||
|
"EventName": "EXT_SNOOP.ALL_AGENTS.HIT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "External snoops."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x77",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x28",
|
||||||
|
"EventName": "EXT_SNOOP.ALL_AGENTS.HITM",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "External snoops."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7A",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "BUS_HIT_DRV.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "HIT signal asserted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7A",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "BUS_HIT_DRV.THIS_AGENT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "HIT signal asserted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7B",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "BUS_HITM_DRV.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "HITM signal asserted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7B",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "BUS_HITM_DRV.THIS_AGENT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "HITM signal asserted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7D",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUSQ_EMPTY.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Bus queue is empty."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xe0",
|
||||||
|
"EventName": "SNOOP_STALL_DRV.ALL_AGENTS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Bus stalled for snoops."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7E",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "SNOOP_STALL_DRV.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Bus stalled for snoops."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x7F",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "BUS_IO_WAIT.SELF",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "IO requests waiting in the bus queue."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC6",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "CYCLES_INT_MASKED.CYCLES_INT_MASKED",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Cycles during which interrupts are disabled."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC6",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "CYCLES_INT_MASKED.CYCLES_INT_PENDING_AND_MASKED",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Cycles during which interrupts are pending and disabled."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC8",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "HW_INT_RCV",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Hardware interrupts received."
|
||||||
|
}
|
||||||
|
]
|
364
lib/libpmcstat/pmu-events/arch/x86/bonnell/pipeline.json
Normal file
364
lib/libpmcstat/pmu-events/arch/x86/bonnell/pipeline.json
Normal file
@ -0,0 +1,364 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x2",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x83",
|
||||||
|
"EventName": "STORE_FORWARDS.ANY",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "All store forwards"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"EventName": "STORE_FORWARDS.GOOD",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Good store forwards"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x7f",
|
||||||
|
"EventName": "REISSUE.ANY",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Micro-op reissues for any cause"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xff",
|
||||||
|
"EventName": "REISSUE.ANY.AR",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Micro-op reissues for any cause (At Retirement)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x12",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "MUL.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Multiply operations executed."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x12",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"EventName": "MUL.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Multiply operations retired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x13",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "DIV.S",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Divide operations executed."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x13",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"EventName": "DIV.AR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Divide operations retired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x14",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "CYCLES_DIV_BUSY",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Cycles the divider is busy."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x3C",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "CPU_CLK_UNHALTED.CORE_P",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Core cycles when core is not halted"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x3C",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "CPU_CLK_UNHALTED.BUS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Bus cycles when core is not halted"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xA",
|
||||||
|
"Counter": "Fixed counter 2",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "CPU_CLK_UNHALTED.CORE",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Core cycles when core is not halted"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xA",
|
||||||
|
"Counter": "Fixed counter 3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "CPU_CLK_UNHALTED.REF",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Reference cycles when core is not halted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x88",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "BR_INST_TYPE_RETIRED.COND",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "All macro conditional branch instructions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x88",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "BR_INST_TYPE_RETIRED.UNCOND",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "All macro unconditional branch instructions, excluding calls and indirects"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x88",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "BR_INST_TYPE_RETIRED.IND",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "All indirect branches that are not calls."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x88",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "BR_INST_TYPE_RETIRED.RET",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "All indirect branches that have a return mnemonic"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x88",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "BR_INST_TYPE_RETIRED.DIR_CALL",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "All non-indirect calls"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x88",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "BR_INST_TYPE_RETIRED.IND_CALL",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "All indirect calls, including both register and memory indirect."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x88",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"EventName": "BR_INST_TYPE_RETIRED.COND_TAKEN",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Only taken macro conditional branch instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x89",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "BR_MISSP_TYPE_RETIRED.COND",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Mispredicted cond branch instructions retired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x89",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "BR_MISSP_TYPE_RETIRED.IND",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Mispredicted ind branches that are not calls"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x89",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "BR_MISSP_TYPE_RETIRED.RETURN",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Mispredicted return branches"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x89",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "BR_MISSP_TYPE_RETIRED.IND_CALL",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Mispredicted indirect calls, including both register and memory indirect. "
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x89",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x11",
|
||||||
|
"EventName": "BR_MISSP_TYPE_RETIRED.COND_TAKEN",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Mispredicted and taken cond branch instructions retired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"EventCode": "0xC0",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "INST_RETIRED.ANY_P",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Instructions retired (precise event)."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xA",
|
||||||
|
"Counter": "Fixed counter 1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "INST_RETIRED.ANY",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Instructions retired."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC2",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "UOPS_RETIRED.ANY",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Micro-ops retired."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC2",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "UOPS_RETIRED.STALLED_CYCLES",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Cycles no micro-ops retired."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC2",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "UOPS_RETIRED.STALLS",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Periods no micro-ops retired."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "MACHINE_CLEARS.SMC",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Self-Modifying Code detected."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "BR_INST_RETIRED.ANY",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired branch instructions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "BR_INST_RETIRED.PRED_NOT_TAKEN",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired branch instructions that were predicted not-taken."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "BR_INST_RETIRED.MISPRED_NOT_TAKEN",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Retired branch instructions that were mispredicted not-taken."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "BR_INST_RETIRED.PRED_TAKEN",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired branch instructions that were predicted taken."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "BR_INST_RETIRED.MISPRED_TAKEN",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Retired branch instructions that were mispredicted taken."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xc",
|
||||||
|
"EventName": "BR_INST_RETIRED.TAKEN",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired taken branch instructions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xf",
|
||||||
|
"EventName": "BR_INST_RETIRED.ANY1",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Retired branch instructions."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "1",
|
||||||
|
"EventCode": "0xC5",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "BR_INST_RETIRED.MISPRED",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Retired mispredicted branch instructions (precise event)."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xDC",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "RESOURCE_STALLS.DIV_BUSY",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Cycles issue is stalled due to div busy."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE0",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "BR_INST_DECODED",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Branch instructions decoded"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE4",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "BOGUS_BR",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Bogus branches"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xE6",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "BACLEARS.ANY",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "BACLEARS asserted."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "REISSUE.OVERLAP_STORE",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Micro-op reissues on a store-load collision"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x3",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"EventName": "REISSUE.OVERLAP_STORE.AR",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Micro-op reissues on a store-load collision (At Retirement)"
|
||||||
|
}
|
||||||
|
]
|
124
lib/libpmcstat/pmu-events/arch/x86/bonnell/virtual-memory.json
Normal file
124
lib/libpmcstat/pmu-events/arch/x86/bonnell/virtual-memory.json
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x8",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x7",
|
||||||
|
"EventName": "DATA_TLB_MISSES.DTLB_MISS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Memory accesses that missed the DTLB."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x8",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x5",
|
||||||
|
"EventName": "DATA_TLB_MISSES.DTLB_MISS_LD",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "DTLB misses due to load operations."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x8",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x9",
|
||||||
|
"EventName": "DATA_TLB_MISSES.L0_DTLB_MISS_LD",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L0 DTLB misses due to load operations."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x8",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x6",
|
||||||
|
"EventName": "DATA_TLB_MISSES.DTLB_MISS_ST",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "DTLB misses due to store operations."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x8",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0xa",
|
||||||
|
"EventName": "DATA_TLB_MISSES.L0_DTLB_MISS_ST",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "L0 DTLB misses due to store operations"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"EventName": "PAGE_WALKS.WALKS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Number of page-walks executed."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"EventName": "PAGE_WALKS.CYCLES",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Duration of page-walks in core cycles"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "PAGE_WALKS.D_SIDE_WALKS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Number of D-side only page walks"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "PAGE_WALKS.D_SIDE_CYCLES",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Duration of D-side only page walks"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "PAGE_WALKS.I_SIDE_WALKS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Number of I-Side page walks"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "PAGE_WALKS.I_SIDE_CYCLES",
|
||||||
|
"SampleAfterValue": "2000000",
|
||||||
|
"BriefDescription": "Duration of I-Side page walks"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x82",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "ITLB.HIT",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "ITLB hits."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x82",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "ITLB.FLUSH",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "ITLB flushes."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"EventCode": "0x82",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "ITLB.MISSES",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "ITLB misses."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "1",
|
||||||
|
"EventCode": "0xCB",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "MEM_LOAD_RETIRED.DTLB_MISS",
|
||||||
|
"SampleAfterValue": "200000",
|
||||||
|
"BriefDescription": "Retired loads that miss the DTLB (precise event)."
|
||||||
|
}
|
||||||
|
]
|
164
lib/libpmcstat/pmu-events/arch/x86/broadwell/bdw-metrics.json
Normal file
164
lib/libpmcstat/pmu-events/arch/x86/broadwell/bdw-metrics.json
Normal file
@ -0,0 +1,164 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"BriefDescription": "Instructions Per Cycle (per logical thread)",
|
||||||
|
"MetricExpr": "INST_RETIRED.ANY / CPU_CLK_UNHALTED.THREAD",
|
||||||
|
"MetricGroup": "TopDownL1",
|
||||||
|
"MetricName": "IPC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Uops Per Instruction",
|
||||||
|
"MetricExpr": "UOPS_RETIRED.RETIRE_SLOTS / INST_RETIRED.ANY",
|
||||||
|
"MetricGroup": "Pipeline",
|
||||||
|
"MetricName": "UPI"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Rough Estimation of fraction of fetched lines bytes that were likely consumed by program instructions",
|
||||||
|
"MetricExpr": "min( 1 , IDQ.MITE_UOPS / ( (UOPS_RETIRED.RETIRE_SLOTS / INST_RETIRED.ANY) * 16 * ( ICACHE.HIT + ICACHE.MISSES ) / 4.0 ) )",
|
||||||
|
"MetricGroup": "Frontend",
|
||||||
|
"MetricName": "IFetch_Line_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Fraction of Uops delivered by the DSB (aka Decoded Icache; or Uop Cache)",
|
||||||
|
"MetricExpr": "IDQ.DSB_UOPS / ( IDQ.DSB_UOPS + LSD.UOPS + IDQ.MITE_UOPS + IDQ.MS_UOPS )",
|
||||||
|
"MetricGroup": "DSB; Frontend_Bandwidth",
|
||||||
|
"MetricName": "DSB_Coverage"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Cycles Per Instruction (threaded)",
|
||||||
|
"MetricExpr": "1 / (INST_RETIRED.ANY / cycles)",
|
||||||
|
"MetricGroup": "Pipeline;Summary",
|
||||||
|
"MetricName": "CPI"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Per-thread actual clocks when the logical processor is active. This is called 'Clockticks' in VTune.",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.THREAD",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "CLKS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Total issue-pipeline slots",
|
||||||
|
"MetricExpr": "4*(( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else cycles)",
|
||||||
|
"MetricGroup": "TopDownL1",
|
||||||
|
"MetricName": "SLOTS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Total number of retired Instructions",
|
||||||
|
"MetricExpr": "INST_RETIRED.ANY",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "Instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Instructions Per Cycle (per physical core)",
|
||||||
|
"MetricExpr": "INST_RETIRED.ANY / (( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else cycles)",
|
||||||
|
"MetricGroup": "SMT",
|
||||||
|
"MetricName": "CoreIPC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Instruction-Level-Parallelism (average number of uops executed when there is at least 1 uop executed)",
|
||||||
|
"MetricExpr": "UOPS_EXECUTED.THREAD / (( cpu@UOPS_EXECUTED.CORE\\,cmask\\=1@ / 2) if #SMT_on else UOPS_EXECUTED.CYCLES_GE_1_UOP_EXEC)",
|
||||||
|
"MetricGroup": "Pipeline;Ports_Utilization",
|
||||||
|
"MetricName": "ILP"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Average Branch Address Clear Cost (fraction of cycles)",
|
||||||
|
"MetricExpr": "2* (( RS_EVENTS.EMPTY_CYCLES - ICACHE.IFDATA_STALL - (( 14 * ITLB_MISSES.STLB_HIT + cpu@ITLB_MISSES.WALK_DURATION\\,cmask\\=1@ + 7* ITLB_MISSES.WALK_COMPLETED )) ) / RS_EVENTS.EMPTY_END)",
|
||||||
|
"MetricGroup": "Unknown_Branches",
|
||||||
|
"MetricName": "BAClear_Cost"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Core actual clocks when any thread is active on the physical core",
|
||||||
|
"MetricExpr": "( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else CPU_CLK_UNHALTED.THREAD",
|
||||||
|
"MetricGroup": "SMT",
|
||||||
|
"MetricName": "CORE_CLKS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Actual Average Latency for L1 data-cache miss demand loads",
|
||||||
|
"MetricExpr": "L1D_PEND_MISS.PENDING / ( MEM_LOAD_UOPS_RETIRED.L1_MISS + mem_load_uops_retired.hit_lfb )",
|
||||||
|
"MetricGroup": "Memory_Bound;Memory_Lat",
|
||||||
|
"MetricName": "Load_Miss_Real_Latency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Memory-Level-Parallelism (average number of L1 miss demand load when there is at least 1 such miss)",
|
||||||
|
"MetricExpr": "L1D_PEND_MISS.PENDING / (( cpu@l1d_pend_miss.pending_cycles\\,any\\=1@ / 2) if #SMT_on else L1D_PEND_MISS.PENDING_CYCLES)",
|
||||||
|
"MetricGroup": "Memory_Bound;Memory_BW",
|
||||||
|
"MetricName": "MLP"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses",
|
||||||
|
"MetricExpr": "( cpu@ITLB_MISSES.WALK_DURATION\\,cmask\\=1@ + cpu@DTLB_LOAD_MISSES.WALK_DURATION\\,cmask\\=1@ + cpu@DTLB_STORE_MISSES.WALK_DURATION\\,cmask\\=1@ + 7*(DTLB_STORE_MISSES.WALK_COMPLETED+DTLB_LOAD_MISSES.WALK_COMPLETED+ITLB_MISSES.WALK_COMPLETED)) / (( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else cycles)",
|
||||||
|
"MetricGroup": "TLB",
|
||||||
|
"MetricName": "Page_Walks_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Average CPU Utilization",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.REF_TSC / msr@tsc@",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "CPU_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Giga Floating Point Operations Per Second",
|
||||||
|
"MetricExpr": "(( 1*( FP_ARITH_INST_RETIRED.SCALAR_SINGLE + FP_ARITH_INST_RETIRED.SCALAR_DOUBLE ) + 2* FP_ARITH_INST_RETIRED.128B_PACKED_DOUBLE + 4*( FP_ARITH_INST_RETIRED.128B_PACKED_SINGLE + FP_ARITH_INST_RETIRED.256B_PACKED_DOUBLE ) + 8* FP_ARITH_INST_RETIRED.256B_PACKED_SINGLE )) / 1000000000 / duration_time",
|
||||||
|
"MetricGroup": "FLOPS;Summary",
|
||||||
|
"MetricName": "GFLOPs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Average Frequency Utilization relative nominal frequency",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.THREAD / CPU_CLK_UNHALTED.REF_TSC",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "Turbo_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Fraction of cycles where both hardware threads were active",
|
||||||
|
"MetricExpr": "1 - CPU_CLK_THREAD_UNHALTED.ONE_THREAD_ACTIVE / ( CPU_CLK_THREAD_UNHALTED.REF_XCLK_ANY / 2 ) if #SMT_on else 0",
|
||||||
|
"MetricGroup": "SMT;Summary",
|
||||||
|
"MetricName": "SMT_2T_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Fraction of cycles spent in Kernel mode",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.REF_TSC:u / CPU_CLK_UNHALTED.REF_TSC",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "Kernel_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C3 residency percent per core",
|
||||||
|
"MetricExpr": "(cstate_core@c3\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C3_Core_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C6 residency percent per core",
|
||||||
|
"MetricExpr": "(cstate_core@c6\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C6_Core_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C7 residency percent per core",
|
||||||
|
"MetricExpr": "(cstate_core@c7\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C7_Core_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C2 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c2\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C2_Pkg_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C3 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c3\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C3_Pkg_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C6 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c6\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C6_Pkg_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C7 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c7\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C7_Pkg_Residency"
|
||||||
|
}
|
||||||
|
]
|
3399
lib/libpmcstat/pmu-events/arch/x86/broadwell/cache.json
Normal file
3399
lib/libpmcstat/pmu-events/arch/x86/broadwell/cache.json
Normal file
File diff suppressed because it is too large
Load Diff
165
lib/libpmcstat/pmu-events/arch/x86/broadwell/floating-point.json
Normal file
165
lib/libpmcstat/pmu-events/arch/x86/broadwell/floating-point.json
Normal file
@ -0,0 +1,165 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of transitions from AVX-256 to legacy SSE when penalty is applicable.",
|
||||||
|
"EventCode": "0xC1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"Errata": "BDM30",
|
||||||
|
"EventName": "OTHER_ASSISTS.AVX_TO_SSE",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Number of transitions from AVX-256 to legacy SSE when penalty applicable.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of transitions from legacy SSE to AVX-256 when penalty is applicable.",
|
||||||
|
"EventCode": "0xC1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"Errata": "BDM30",
|
||||||
|
"EventName": "OTHER_ASSISTS.SSE_TO_AVX",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Number of transitions from SSE to AVX-256 when penalty applicable.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SCALAR_DOUBLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational scalar double precision floating-point instructions retired. Each count represents 1 computation. Applies to SSE* and AVX* scalar double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SCALAR_SINGLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational scalar single precision floating-point instructions retired. Each count represents 1 computation. Applies to SSE* and AVX* scalar single precision floating-point instructions: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SCALAR",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational scalar floating-point instructions retired. Applies to SSE* and AVX* scalar, double and single precision floating-point: ADD SUB MUL DIV MIN MAX RSQRT RCP SQRT FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_DOUBLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 128-bit packed double precision floating-point instructions retired. Each count represents 2 computations. Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_SINGLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 128-bit packed single precision floating-point instructions retired. Each count represents 4 computations. Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_DOUBLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 256-bit packed double precision floating-point instructions retired. Each count represents 4 computations. Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x15",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.DOUBLE",
|
||||||
|
"SampleAfterValue": "2000006",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational double precision floating-point instructions retired. Applies to SSE* and AVX*scalar, double and single precision floating-point: ADD SUB MUL DIV MIN MAX SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element. ?.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_SINGLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 256-bit packed single precision floating-point instructions retired. Each count represents 8 computations. Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2a",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SINGLE",
|
||||||
|
"SampleAfterValue": "2000005",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational single precision floating-point instructions retired. Applies to SSE* and AVX*scalar, double and single precision floating-point: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element. ?.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x3c",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.PACKED",
|
||||||
|
"SampleAfterValue": "2000004",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational packed floating-point instructions retired. Applies to SSE* and AVX*, packed, double and single precision floating-point: ADD SUB MUL DIV MIN MAX RSQRT RCP SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of x87 floating point (FP) micro-code assist (numeric overflow/underflow, inexact result) when the output value (destination register) is invalid.",
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "FP_ASSIST.X87_OUTPUT",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Number of X87 assists due to output value.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts x87 floating point (FP) micro-code assist (invalid operation, denormal operand, SNaN operand) when the input value (one of the source operands to an FP instruction) is invalid.",
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "FP_ASSIST.X87_INPUT",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Number of X87 assists due to input value.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of SSE* floating point (FP) micro-code assist (numeric overflow/underflow) when the output value (destination register) is invalid. Counting covers only cases involving penalties that require micro-code assist intervention.",
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "FP_ASSIST.SIMD_OUTPUT",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Number of SIMD FP assists due to Output values",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts any input SSE* FP assist - invalid operation, denormal operand, dividing by zero, SNaN operand. Counting includes only cases involving penalties that required micro-code assist intervention.",
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "FP_ASSIST.SIMD_INPUT",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Number of SIMD FP assists due to input values",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts cycles with any input and output SSE or x87 FP assist. If an input and output assist are detected on the same cycle the event increments by 1.",
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1e",
|
||||||
|
"EventName": "FP_ASSIST.ANY",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Cycles with any input/output SSE or FP assist",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
}
|
||||||
|
]
|
286
lib/libpmcstat/pmu-events/arch/x86/broadwell/frontend.json
Normal file
286
lib/libpmcstat/pmu-events/arch/x86/broadwell/frontend.json
Normal file
@ -0,0 +1,286 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"PublicDescription": "This counts the number of cycles that the instruction decoder queue is empty and can indicate that the application may be bound in the front end. It does not determine whether there are uops being delivered to the Alloc stage since uops can be delivered by bypass skipping the Instruction Decode Queue (IDQ) when it is empty.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "IDQ.EMPTY",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Instruction Decode Queue (IDQ) empty cycles",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "IDQ.MITE_UOPS",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "IDQ.MITE_CYCLES",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from MITE path",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "IDQ.DSB_UOPS",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "IDQ.DSB_CYCLES",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from Decode Stream Buffer (DSB) path",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "IDQ.MS_DSB_UOPS",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts cycles during which uops initiated by Decode Stream Buffer (DSB) are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "IDQ.MS_DSB_CYCLES",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles when uops initiated by Decode Stream Buffer (DSB) are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of deliveries to Instruction Decode Queue (IDQ) initiated by Decode Stream Buffer (DSB) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EdgeDetect": "1",
|
||||||
|
"EventName": "IDQ.MS_DSB_OCCUR",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Deliveries to Instruction Decode Queue (IDQ) initiated by Decode Stream Buffer (DSB) while Microcode Sequenser (MS) is busy",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of cycles 4 uops were delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x18",
|
||||||
|
"EventName": "IDQ.ALL_DSB_CYCLES_4_UOPS",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering 4 Uops",
|
||||||
|
"CounterMask": "4",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of cycles uops were delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x18",
|
||||||
|
"EventName": "IDQ.ALL_DSB_CYCLES_ANY_UOPS",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering any Uop",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "IDQ.MS_MITE_UOPS",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of cycles 4 uops were delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x24",
|
||||||
|
"EventName": "IDQ.ALL_MITE_CYCLES_4_UOPS",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles MITE is delivering 4 Uops",
|
||||||
|
"CounterMask": "4",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of cycles uops were delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x24",
|
||||||
|
"EventName": "IDQ.ALL_MITE_CYCLES_ANY_UOPS",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles MITE is delivering any Uop",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the total number of uops delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ. Uops maybe initiated by Decode Stream Buffer (DSB) or MITE.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x30",
|
||||||
|
"EventName": "IDQ.MS_UOPS",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ. Uops maybe initiated by Decode Stream Buffer (DSB) or MITE.",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x30",
|
||||||
|
"EventName": "IDQ.MS_CYCLES",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x30",
|
||||||
|
"EdgeDetect": "1",
|
||||||
|
"EventName": "IDQ.MS_SWITCHES",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of switches from DSB (Decode Stream Buffer) or MITE (legacy decode pipeline) to the Microcode Sequencer.",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x3c",
|
||||||
|
"EventName": "IDQ.MITE_ALL_UOPS",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of both cacheable and noncacheable Instruction Cache, Streaming Buffer and Victim Cache Reads including UC fetches.",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "ICACHE.HIT",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of Instruction Cache, Streaming Buffer and Victim Cache Reads. both cacheable and noncacheable, including UC fetches",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of instruction cache, streaming buffer and victim cache misses. Counting includes UC accesses.",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "ICACHE.MISSES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Number of Instruction Cache, Streaming Buffer and Victim Cache Misses. Includes Uncacheable accesses.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts cycles during which the demand fetch waits for data (wfdM104H) from L2 or iSB (opportunistic hit).",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "ICACHE.IFDATA_STALL",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles where a code fetch is stalled due to L1 instruction-cache miss.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of uops not delivered to Resource Allocation Table (RAT) per thread adding 4 x when Resource Allocation Table (RAT) is not stalled and Instruction Decode Queue (IDQ) delivers x uops to Resource Allocation Table (RAT) (where x belongs to {0,1,2,3}). Counting does not cover cases when:\n a. IDQ-Resource Allocation Table (RAT) pipe serves the other thread;\n b. Resource Allocation Table (RAT) is stalled for the thread (including uop drops and clear BE conditions); \n c. Instruction Decode Queue (IDQ) delivers four uops.",
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CORE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Uops not delivered to Resource Allocation Table (RAT) per thread when backend of the machine is not stalled",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts, on the per-thread basis, cycles when no uops are delivered to Resource Allocation Table (RAT). IDQ_Uops_Not_Delivered.core =4.",
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles per thread when 4 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled",
|
||||||
|
"CounterMask": "4",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts, on the per-thread basis, cycles when less than 1 uop is delivered to Resource Allocation Table (RAT). IDQ_Uops_Not_Delivered.core >=3.",
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_1_UOP_DELIV.CORE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles per thread when 3 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled",
|
||||||
|
"CounterMask": "3",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_2_UOP_DELIV.CORE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles with less than 2 uops delivered by the front end.",
|
||||||
|
"CounterMask": "2",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_3_UOP_DELIV.CORE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles with less than 3 uops delivered by the front end.",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"Invert": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_FE_WAS_OK",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Counts cycles FE delivered 4 uops or Resource Allocation Table (RAT) was stalling FE.",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles. These cycles do not include uops routed through because of the switch itself, for example, when Instruction Decode Queue (IDQ) pre-allocation is unavailable, or Instruction Decode Queue (IDQ) is full. SBD-to-MITE switch true penalty cycles happen after the merge mux (MM) receives Decode Stream Buffer (DSB) Sync-indication until receiving the first MITE uop. \nMM is placed before Instruction Decode Queue (IDQ) to merge uops being fed from the MITE and Decode Stream Buffer (DSB) paths. Decode Stream Buffer (DSB) inserts the Sync-indication whenever a Decode Stream Buffer (DSB)-to-MITE switch occurs.\nPenalty: A Decode Stream Buffer (DSB) hit followed by a Decode Stream Buffer (DSB) miss can cost up to six cycles in which no uops are delivered to the IDQ. Most often, such switches from the Decode Stream Buffer (DSB) to the legacy pipeline cost 02 cycles.",
|
||||||
|
"EventCode": "0xAB",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "DSB2MITE_SWITCHES.PENALTY_CYCLES",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
}
|
||||||
|
]
|
3045
lib/libpmcstat/pmu-events/arch/x86/broadwell/memory.json
Normal file
3045
lib/libpmcstat/pmu-events/arch/x86/broadwell/memory.json
Normal file
File diff suppressed because it is too large
Load Diff
44
lib/libpmcstat/pmu-events/arch/x86/broadwell/other.json
Normal file
44
lib/libpmcstat/pmu-events/arch/x86/broadwell/other.json
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the unhalted core cycles during which the thread is in the ring 0 privileged mode.",
|
||||||
|
"EventCode": "0x5C",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "CPL_CYCLES.RING0",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Unhalted core cycles when the thread is in ring 0",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts when there is a transition from ring 1,2 or 3 to ring0.",
|
||||||
|
"EventCode": "0x5C",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EdgeDetect": "1",
|
||||||
|
"EventName": "CPL_CYCLES.RING0_TRANS",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Number of intervals between processor halts while thread is in ring 0",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts unhalted core cycles during which the thread is in rings 1, 2, or 3.",
|
||||||
|
"EventCode": "0x5C",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "CPL_CYCLES.RING123",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Unhalted core cycles when thread is in rings 1, 2, or 3",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts cycles in which the L1 and L2 are locked due to a UC lock or split lock. A lock is asserted in case of locked memory access, due to noncacheable memory, locked operation that spans two cache lines, or a page walk from the noncacheable page table. L1D and L2 locks have a very high performance penalty and it is highly recommended to avoid such access.",
|
||||||
|
"EventCode": "0x63",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "LOCK_CYCLES.SPLIT_LOCK_UC_LOCK_DURATION",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles when L1 and L2 are locked due to UC or split lock",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
}
|
||||||
|
]
|
1427
lib/libpmcstat/pmu-events/arch/x86/broadwell/pipeline.json
Normal file
1427
lib/libpmcstat/pmu-events/arch/x86/broadwell/pipeline.json
Normal file
File diff suppressed because it is too large
Load Diff
278
lib/libpmcstat/pmu-events/arch/x86/broadwell/uncore.json
Normal file
278
lib/libpmcstat/pmu-events/arch/x86/broadwell/uncore.json
Normal file
@ -0,0 +1,278 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x22",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"EventName": "UNC_CBO_XSNP_RESPONSE.MISS_XCORE",
|
||||||
|
"BriefDescription": "A cross-core snoop initiated by this Cbox due to processor core memory request which misses in some processor core.",
|
||||||
|
"PublicDescription": "A cross-core snoop initiated by this Cbox due to processor core memory request which misses in some processor core.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x22",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"EventName": "UNC_CBO_XSNP_RESPONSE.MISS_EVICTION",
|
||||||
|
"BriefDescription": "A cross-core snoop resulted from L3 Eviction which misses in some processor core.",
|
||||||
|
"PublicDescription": "A cross-core snoop resulted from L3 Eviction which misses in some processor core.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x22",
|
||||||
|
"UMask": "0x44",
|
||||||
|
"EventName": "UNC_CBO_XSNP_RESPONSE.HIT_XCORE",
|
||||||
|
"BriefDescription": "A cross-core snoop initiated by this Cbox due to processor core memory request which hits a non-modified line in some processor core.",
|
||||||
|
"PublicDescription": "A cross-core snoop initiated by this Cbox due to processor core memory request which hits a non-modified line in some processor core.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x22",
|
||||||
|
"UMask": "0x48",
|
||||||
|
"EventName": "UNC_CBO_XSNP_RESPONSE.HITM_XCORE",
|
||||||
|
"BriefDescription": "A cross-core snoop initiated by this Cbox due to processor core memory request which hits a modified line in some processor core.",
|
||||||
|
"PublicDescription": "A cross-core snoop initiated by this Cbox due to processor core memory request which hits a modified line in some processor core.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"UMask": "0x11",
|
||||||
|
"EventName": "UNC_CBO_CACHE_LOOKUP.READ_M",
|
||||||
|
"BriefDescription": "L3 Lookup read request that access cache and found line in M-state",
|
||||||
|
"PublicDescription": "L3 Lookup read request that access cache and found line in M-state.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"UMask": "0x21",
|
||||||
|
"EventName": "UNC_CBO_CACHE_LOOKUP.WRITE_M",
|
||||||
|
"BriefDescription": "L3 Lookup write request that access cache and found line in M-state",
|
||||||
|
"PublicDescription": "L3 Lookup write request that access cache and found line in M-state.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"EventName": "UNC_CBO_CACHE_LOOKUP.ANY_M",
|
||||||
|
"BriefDescription": "L3 Lookup any request that access cache and found line in M-state",
|
||||||
|
"PublicDescription": "L3 Lookup any request that access cache and found line in M-state.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"UMask": "0x18",
|
||||||
|
"EventName": "UNC_CBO_CACHE_LOOKUP.READ_I",
|
||||||
|
"BriefDescription": "L3 Lookup read request that access cache and found line in I-state",
|
||||||
|
"PublicDescription": "L3 Lookup read request that access cache and found line in I-state.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"UMask": "0x88",
|
||||||
|
"EventName": "UNC_CBO_CACHE_LOOKUP.ANY_I",
|
||||||
|
"BriefDescription": "L3 Lookup any request that access cache and found line in I-state",
|
||||||
|
"PublicDescription": "L3 Lookup any request that access cache and found line in I-state.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"UMask": "0x1f",
|
||||||
|
"EventName": "UNC_CBO_CACHE_LOOKUP.READ_MESI",
|
||||||
|
"BriefDescription": "L3 Lookup read request that access cache and found line in any MESI-state",
|
||||||
|
"PublicDescription": "L3 Lookup read request that access cache and found line in any MESI-state.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"UMask": "0x2f",
|
||||||
|
"EventName": "UNC_CBO_CACHE_LOOKUP.WRITE_MESI",
|
||||||
|
"BriefDescription": "L3 Lookup write request that access cache and found line in MESI-state",
|
||||||
|
"PublicDescription": "L3 Lookup write request that access cache and found line in MESI-state.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"UMask": "0x8f",
|
||||||
|
"EventName": "UNC_CBO_CACHE_LOOKUP.ANY_MESI",
|
||||||
|
"BriefDescription": "L3 Lookup any request that access cache and found line in MESI-state",
|
||||||
|
"PublicDescription": "L3 Lookup any request that access cache and found line in MESI-state.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"UMask": "0x86",
|
||||||
|
"EventName": "UNC_CBO_CACHE_LOOKUP.ANY_ES",
|
||||||
|
"BriefDescription": "L3 Lookup any request that access cache and found line in E or S-state",
|
||||||
|
"PublicDescription": "L3 Lookup any request that access cache and found line in E or S-state.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"UMask": "0x16",
|
||||||
|
"EventName": "UNC_CBO_CACHE_LOOKUP.READ_ES",
|
||||||
|
"BriefDescription": "L3 Lookup read request that access cache and found line in E or S-state",
|
||||||
|
"PublicDescription": "L3 Lookup read request that access cache and found line in E or S-state.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "CBO",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"UMask": "0x26",
|
||||||
|
"EventName": "UNC_CBO_CACHE_LOOKUP.WRITE_ES",
|
||||||
|
"BriefDescription": "L3 Lookup write request that access cache and found line in E or S-state",
|
||||||
|
"PublicDescription": "L3 Lookup write request that access cache and found line in E or S-state.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "iMPH-U",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"UMask": "0x01",
|
||||||
|
"EventName": "UNC_ARB_TRK_OCCUPANCY.ALL",
|
||||||
|
"BriefDescription": "Each cycle count number of all Core outgoing valid entries. Such entry is defined as valid from it's allocation till first of IDI0 or DRS0 messages is sent out. Accounts for Coherent and non-coherent traffic.",
|
||||||
|
"PublicDescription": "Each cycle count number of all Core outgoing valid entries. Such entry is defined as valid from it's allocation till first of IDI0 or DRS0 messages is sent out. Accounts for Coherent and non-coherent traffic.",
|
||||||
|
"Counter": "0,",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "iMPH-U",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"UMask": "0x02",
|
||||||
|
"EventName": "UNC_ARB_TRK_OCCUPANCY.DRD_DIRECT",
|
||||||
|
"BriefDescription": "Each cycle count number of 'valid' coherent Data Read entries that are in DirectData mode. Such entry is defined as valid when it is allocated till data sent to Core (first chunk, IDI0). Applicable for IA Cores' requests in normal case.",
|
||||||
|
"PublicDescription": "Each cycle count number of 'valid' coherent Data Read entries that are in DirectData mode. Such entry is defined as valid when it is allocated till data sent to Core (first chunk, IDI0). Applicable for IA Cores' requests in normal case.",
|
||||||
|
"Counter": "0,",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "iMPH-U",
|
||||||
|
"EventCode": "0x81",
|
||||||
|
"UMask": "0x01",
|
||||||
|
"EventName": "UNC_ARB_TRK_REQUESTS.ALL",
|
||||||
|
"BriefDescription": "Total number of Core outgoing entries allocated. Accounts for Coherent and non-coherent traffic.",
|
||||||
|
"PublicDescription": "Total number of Core outgoing entries allocated. Accounts for Coherent and non-coherent traffic.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "iMPH-U",
|
||||||
|
"EventCode": "0x81",
|
||||||
|
"UMask": "0x02",
|
||||||
|
"EventName": "UNC_ARB_TRK_REQUESTS.DRD_DIRECT",
|
||||||
|
"BriefDescription": "Number of Core coherent Data Read entries allocated in DirectData mode",
|
||||||
|
"PublicDescription": "Number of Core coherent Data Read entries allocated in DirectData mode.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "iMPH-U",
|
||||||
|
"EventCode": "0x81",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "UNC_ARB_TRK_REQUESTS.WRITES",
|
||||||
|
"BriefDescription": "Number of Writes allocated - any write transactions: full/partials writes and evictions.",
|
||||||
|
"PublicDescription": "Number of Writes allocated - any write transactions: full/partials writes and evictions.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "iMPH-U",
|
||||||
|
"EventCode": "0x84",
|
||||||
|
"UMask": "0x01",
|
||||||
|
"EventName": "UNC_ARB_COH_TRK_REQUESTS.ALL",
|
||||||
|
"BriefDescription": "Number of entries allocated. Account for Any type: e.g. Snoop, Core aperture, etc.",
|
||||||
|
"PublicDescription": "Number of entries allocated. Account for Any type: e.g. Snoop, Core aperture, etc.",
|
||||||
|
"Counter": "0,1",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "iMPH-U",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"UMask": "0x01",
|
||||||
|
"EventName": "UNC_ARB_TRK_OCCUPANCY.CYCLES_WITH_ANY_REQUEST",
|
||||||
|
"BriefDescription": "Cycles with at least one request outstanding is waiting for data return from memory controller. Account for coherent and non-coherent requests initiated by IA Cores, Processor Graphics Unit, or LLC.;",
|
||||||
|
"PublicDescription": "Cycles with at least one request outstanding is waiting for data return from memory controller. Account for coherent and non-coherent requests initiated by IA Cores, Processor Graphics Unit, or LLC.",
|
||||||
|
"Counter": "0,",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Unit": "NCU",
|
||||||
|
"EventCode": "0x0",
|
||||||
|
"UMask": "0x01",
|
||||||
|
"EventName": "UNC_CLOCK.SOCKET",
|
||||||
|
"BriefDescription": "This 48-bit fixed counter counts the UCLK cycles",
|
||||||
|
"PublicDescription": "This 48-bit fixed counter counts the UCLK cycles.",
|
||||||
|
"Counter": "FIXED",
|
||||||
|
"CounterMask": "0",
|
||||||
|
"Invert": "0",
|
||||||
|
"EdgeDetect": "0"
|
||||||
|
}
|
||||||
|
]
|
388
lib/libpmcstat/pmu-events/arch/x86/broadwell/virtual-memory.json
Normal file
388
lib/libpmcstat/pmu-events/arch/x86/broadwell/virtual-memory.json
Normal file
@ -0,0 +1,388 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause page walks of any page size (4K/2M/4M/1G).",
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.MISS_CAUSES_A_WALK",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Load misses in all DTLB levels that cause page walks",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause a completed page walk (4K page size). The page walk can end with or without a fault.",
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_4K",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Demand load Miss in all translation lookaside buffer (TLB) levels causes a page walk that completes (4K).",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause a completed page walk (2M and 4M page sizes). The page walk can end with or without a fault.",
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_2M_4M",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Demand load Miss in all translation lookaside buffer (TLB) levels causes a page walk that completes (2M/4M).",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause a completed page walk (1G page size). The page walk can end with or without a fault.",
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_1G",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (1G)",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xe",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Demand load Miss in all translation lookaside buffer (TLB) levels causes a page walk that completes of any page size.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of cycles while PMH is busy with the page walk.",
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_DURATION",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles when PMH is busy with page walks",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.STLB_HIT_4K",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Load misses that miss the DTLB and hit the STLB (4K).",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.STLB_HIT_2M",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Load misses that miss the DTLB and hit the STLB (2M).",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x60",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.STLB_HIT",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Load operations that miss the first DTLB level but hit the second and do not cause page walks.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause page walks of any page size (4K/2M/4M/1G).",
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.MISS_CAUSES_A_WALK",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause page walks",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (4K page size). The page walk can end with or without a fault.",
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_4K",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Store miss in all TLB levels causes a page walk that completes. (4K)",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (2M and 4M page sizes). The page walk can end with or without a fault.",
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_2M_4M",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause completed page walks (2M/4M)",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (1G page size). The page walk can end with or without a fault.",
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_1G",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause completed page walks (1G)",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xe",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause completed page walks.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of cycles while PMH is busy with the page walk.",
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_DURATION",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Cycles when PMH is busy with page walks",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.STLB_HIT_4K",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Store misses that miss the DTLB and hit the STLB (4K).",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.STLB_HIT_2M",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Store misses that miss the DTLB and hit the STLB (2M).",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x60",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.STLB_HIT",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Store operations that miss the first TLB level but hit the second and do not cause page walks.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts cycles for an extended page table walk. The Extended Page directory cache differs from standard TLB caches by the operating system that use it. Virtual machine operating systems use the extended page directory cache, while guest operating systems use the standard TLB caches.",
|
||||||
|
"EventCode": "0x4F",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "EPT.WALK_CYCLES",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycle count for an Extended Page table walk.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause page walks of any page size (4K/2M/4M/1G).",
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "ITLB_MISSES.MISS_CAUSES_A_WALK",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Misses at all ITLB levels that cause page walks",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (4K page size). The page walk can end with or without a fault.",
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_4K",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (4K)",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (2M and 4M page sizes). The page walk can end with or without a fault.",
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_2M_4M",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (2M/4M)",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (1G page size). The page walk can end with or without a fault.",
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_1G",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Store miss in all TLB levels causes a page walk that completes. (1G)",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xe",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Misses in all ITLB levels that cause completed page walks.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of cycles while PMH is busy with the page walk.",
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_DURATION",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Cycles when PMH is busy with page walks",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "ITLB_MISSES.STLB_HIT_4K",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Core misses that miss the DTLB and hit the STLB (4K).",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"EventName": "ITLB_MISSES.STLB_HIT_2M",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Code misses that miss the DTLB and hit the STLB (2M).",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x60",
|
||||||
|
"EventName": "ITLB_MISSES.STLB_HIT",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"BriefDescription": "Operations that miss the first ITLB level but hit the second and do not cause any page walks.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of flushes of the big or small ITLB pages. Counting include both TLB Flush (covering all sets) and TLB Set Clear (set-specific).",
|
||||||
|
"EventCode": "0xAE",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "ITLB.ITLB_FLUSH",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Flushing of the Instruction TLB (ITLB) pages, includes 4k/2M/4M pages.",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x11",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_L1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in the L1+FB.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x12",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_L2",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in the L2.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x14",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_L3",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in the L3 + XSNP.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x18",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_MEMORY",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in Memory.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x21",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.ITLB_L1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of ITLB page walker hits in the L1+FB.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x22",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.ITLB_L2",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of ITLB page walker hits in the L2.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x24",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.ITLB_L3",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Number of ITLB page walker hits in the L3 + XSNP.",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of DTLB flush attempts of the thread-specific entries.",
|
||||||
|
"EventCode": "0xBD",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "TLB_FLUSH.DTLB_THREAD",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "DTLB flush attempts of the thread-specific entries",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "This event counts the number of any STLB flush attempts (such as entire, VPID, PCID, InvPage, CR3 write, and so on).",
|
||||||
|
"EventCode": "0xBD",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"EventName": "TLB_FLUSH.STLB_ANY",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "STLB flush attempts",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,164 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"BriefDescription": "Instructions Per Cycle (per logical thread)",
|
||||||
|
"MetricExpr": "INST_RETIRED.ANY / CPU_CLK_UNHALTED.THREAD",
|
||||||
|
"MetricGroup": "TopDownL1",
|
||||||
|
"MetricName": "IPC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Uops Per Instruction",
|
||||||
|
"MetricExpr": "UOPS_RETIRED.RETIRE_SLOTS / INST_RETIRED.ANY",
|
||||||
|
"MetricGroup": "Pipeline",
|
||||||
|
"MetricName": "UPI"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Rough Estimation of fraction of fetched lines bytes that were likely consumed by program instructions",
|
||||||
|
"MetricExpr": "min( 1 , IDQ.MITE_UOPS / ( UOPS_RETIRED.RETIRE_SLOTS / INST_RETIRED.ANY * 16 * ( ICACHE.HIT + ICACHE.MISSES ) / 4.0 ) )",
|
||||||
|
"MetricGroup": "Frontend",
|
||||||
|
"MetricName": "IFetch_Line_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Fraction of Uops delivered by the DSB (aka Decoded Icache; or Uop Cache)",
|
||||||
|
"MetricExpr": "IDQ.DSB_UOPS / ( IDQ.DSB_UOPS + LSD.UOPS + IDQ.MITE_UOPS + IDQ.MS_UOPS )",
|
||||||
|
"MetricGroup": "DSB; Frontend_Bandwidth",
|
||||||
|
"MetricName": "DSB_Coverage"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Cycles Per Instruction (threaded)",
|
||||||
|
"MetricExpr": "1 / INST_RETIRED.ANY / cycles",
|
||||||
|
"MetricGroup": "Pipeline;Summary",
|
||||||
|
"MetricName": "CPI"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Per-thread actual clocks when the logical processor is active. This is called 'Clockticks' in VTune.",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.THREAD",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "CLKS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Total issue-pipeline slots",
|
||||||
|
"MetricExpr": "4*( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else cycles",
|
||||||
|
"MetricGroup": "TopDownL1",
|
||||||
|
"MetricName": "SLOTS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Total number of retired Instructions",
|
||||||
|
"MetricExpr": "INST_RETIRED.ANY",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "Instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Instructions Per Cycle (per physical core)",
|
||||||
|
"MetricExpr": "INST_RETIRED.ANY / ( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else cycles",
|
||||||
|
"MetricGroup": "SMT",
|
||||||
|
"MetricName": "CoreIPC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Instruction-Level-Parallelism (average number of uops executed when there is at least 1 uop executed)",
|
||||||
|
"MetricExpr": "UOPS_EXECUTED.THREAD / ( cpu@uops_executed.core\\,cmask\\=1@ / 2) if #SMT_on else UOPS_EXECUTED.CYCLES_GE_1_UOP_EXEC",
|
||||||
|
"MetricGroup": "Pipeline;Ports_Utilization",
|
||||||
|
"MetricName": "ILP"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Average Branch Address Clear Cost (fraction of cycles)",
|
||||||
|
"MetricExpr": "2* ( RS_EVENTS.EMPTY_CYCLES - ICACHE.IFDATA_STALL - ( 14 * ITLB_MISSES.STLB_HIT + cpu@ITLB_MISSES.WALK_DURATION\\,cmask\\=1@ + 7* ITLB_MISSES.WALK_COMPLETED ) ) / RS_EVENTS.EMPTY_END",
|
||||||
|
"MetricGroup": "Unknown_Branches",
|
||||||
|
"MetricName": "BAClear_Cost"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Core actual clocks when any thread is active on the physical core",
|
||||||
|
"MetricExpr": "( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else CPU_CLK_UNHALTED.THREAD",
|
||||||
|
"MetricGroup": "SMT",
|
||||||
|
"MetricName": "CORE_CLKS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Actual Average Latency for L1 data-cache miss demand loads",
|
||||||
|
"MetricExpr": "L1D_PEND_MISS.PENDING / ( MEM_LOAD_UOPS_RETIRED.L1_MISS + mem_load_uops_retired.hit_lfb )",
|
||||||
|
"MetricGroup": "Memory_Bound;Memory_Lat",
|
||||||
|
"MetricName": "Load_Miss_Real_Latency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Memory-Level-Parallelism (average number of L1 miss demand load when there is at least 1 such miss)",
|
||||||
|
"MetricExpr": "L1D_PEND_MISS.PENDING / ( cpu@l1d_pend_miss.pending_cycles\\,any\\=1@ / 2) if #SMT_on else L1D_PEND_MISS.PENDING_CYCLES",
|
||||||
|
"MetricGroup": "Memory_Bound;Memory_BW",
|
||||||
|
"MetricName": "MLP"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses",
|
||||||
|
"MetricExpr": "( cpu@ITLB_MISSES.WALK_DURATION\\,cmask\\=1@ + cpu@DTLB_LOAD_MISSES.WALK_DURATION\\,cmask\\=1@ + cpu@DTLB_STORE_MISSES.WALK_DURATION\\,cmask\\=1@ + 7*(DTLB_STORE_MISSES.WALK_COMPLETED+DTLB_LOAD_MISSES.WALK_COMPLETED+ITLB_MISSES.WALK_COMPLETED)) / ( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else cycles",
|
||||||
|
"MetricGroup": "TLB",
|
||||||
|
"MetricName": "Page_Walks_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Average CPU Utilization",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.REF_TSC / msr@tsc@",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "CPU_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Giga Floating Point Operations Per Second",
|
||||||
|
"MetricExpr": "( 1*( FP_ARITH_INST_RETIRED.SCALAR_SINGLE + FP_ARITH_INST_RETIRED.SCALAR_DOUBLE ) + 2* FP_ARITH_INST_RETIRED.128B_PACKED_DOUBLE + 4*( FP_ARITH_INST_RETIRED.128B_PACKED_SINGLE + FP_ARITH_INST_RETIRED.256B_PACKED_DOUBLE ) + 8* FP_ARITH_INST_RETIRED.256B_PACKED_SINGLE ) / 1000000000 / duration_time",
|
||||||
|
"MetricGroup": "FLOPS;Summary",
|
||||||
|
"MetricName": "GFLOPs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Average Frequency Utilization relative nominal frequency",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.THREAD / CPU_CLK_UNHALTED.REF_TSC",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "Turbo_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Fraction of cycles where both hardware threads were active",
|
||||||
|
"MetricExpr": "1 - CPU_CLK_THREAD_UNHALTED.ONE_THREAD_ACTIVE / ( CPU_CLK_THREAD_UNHALTED.REF_XCLK_ANY / 2 ) if #SMT_on else 0",
|
||||||
|
"MetricGroup": "SMT;Summary",
|
||||||
|
"MetricName": "SMT_2T_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Fraction of cycles spent in Kernel mode",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.REF_TSC:u / CPU_CLK_UNHALTED.REF_TSC",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "Kernel_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C3 residency percent per core",
|
||||||
|
"MetricExpr": "(cstate_core@c3\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C3_Core_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C6 residency percent per core",
|
||||||
|
"MetricExpr": "(cstate_core@c6\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C6_Core_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C7 residency percent per core",
|
||||||
|
"MetricExpr": "(cstate_core@c7\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C7_Core_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C2 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c2\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C2_Pkg_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C3 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c3\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C3_Pkg_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C6 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c6\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C6_Pkg_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C7 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c7\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C7_Pkg_Residency"
|
||||||
|
}
|
||||||
|
]
|
809
lib/libpmcstat/pmu-events/arch/x86/broadwellde/cache.json
Normal file
809
lib/libpmcstat/pmu-events/arch/x86/broadwellde/cache.json
Normal file
@ -0,0 +1,809 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x21",
|
||||||
|
"BriefDescription": "Demand Data Read miss L2, no rejects",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.DEMAND_DATA_RD_MISS",
|
||||||
|
"PublicDescription": "This event counts the number of demand Data Read requests that miss L2 cache. Only not rejected loads are counted.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x22",
|
||||||
|
"BriefDescription": "RFO requests that miss L2 cache.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.RFO_MISS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x24",
|
||||||
|
"BriefDescription": "L2 cache misses when fetching instructions.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.CODE_RD_MISS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x27",
|
||||||
|
"BriefDescription": "Demand requests that miss L2 cache.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_DEMAND_MISS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x30",
|
||||||
|
"BriefDescription": "L2 prefetch requests that miss L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.L2_PF_MISS",
|
||||||
|
"PublicDescription": "This event counts the number of requests from the L2 hardware prefetchers that miss L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x3f",
|
||||||
|
"BriefDescription": "All requests that miss L2 cache.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.MISS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"BriefDescription": "Demand Data Read requests that hit L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.DEMAND_DATA_RD_HIT",
|
||||||
|
"PublicDescription": "This event counts the number of demand Data Read requests that hit L2 cache. Only not rejected loads are counted.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"BriefDescription": "RFO requests that hit L2 cache.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.RFO_HIT",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x44",
|
||||||
|
"BriefDescription": "L2 cache hits when fetching instructions, code reads.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.CODE_RD_HIT",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x50",
|
||||||
|
"BriefDescription": "L2 prefetch requests that hit L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.L2_PF_HIT",
|
||||||
|
"PublicDescription": "This event counts the number of requests from the L2 hardware prefetchers that hit L2 cache. L3 prefetch new types.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xe1",
|
||||||
|
"BriefDescription": "Demand Data Read requests",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_DEMAND_DATA_RD",
|
||||||
|
"PublicDescription": "This event counts the number of demand Data Read requests (including requests from L1D hardware prefetchers). These loads may hit or miss L2 cache. Only non rejected loads are counted.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xe2",
|
||||||
|
"BriefDescription": "RFO requests to L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_RFO",
|
||||||
|
"PublicDescription": "This event counts the total number of RFO (read for ownership) requests to L2 cache. L2 RFO requests include both L1D demand RFO misses as well as L1D RFO prefetches.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xe4",
|
||||||
|
"BriefDescription": "L2 code requests",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_CODE_RD",
|
||||||
|
"PublicDescription": "This event counts the total number of L2 code requests.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xe7",
|
||||||
|
"BriefDescription": "Demand requests to L2 cache.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_DEMAND_REFERENCES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xf8",
|
||||||
|
"BriefDescription": "Requests from L2 hardware prefetchers",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_PF",
|
||||||
|
"PublicDescription": "This event counts the total number of requests from the L2 hardware prefetchers.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xff",
|
||||||
|
"BriefDescription": "All L2 requests.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.REFERENCES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x27",
|
||||||
|
"UMask": "0x50",
|
||||||
|
"BriefDescription": "Not rejected writebacks that hit L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_DEMAND_RQSTS.WB_HIT",
|
||||||
|
"PublicDescription": "This event counts the number of WB requests that hit L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"BriefDescription": "Core-originated cacheable demand requests missed L3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "LONGEST_LAT_CACHE.MISS",
|
||||||
|
"PublicDescription": "This event counts core-originated cacheable demand requests that miss the last level cache (LLC). Demand requests include loads, RFOs, and hardware prefetches from L1D, and instruction fetches from IFU.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"UMask": "0x4f",
|
||||||
|
"BriefDescription": "Core-originated cacheable demand requests that refer to L3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "LONGEST_LAT_CACHE.REFERENCE",
|
||||||
|
"PublicDescription": "This event counts core-originated cacheable demand requests that refer to the last level cache (LLC). Demand requests include loads, RFOs, and hardware prefetches from L1D, and instruction fetches from IFU.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x48",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "L1D miss oustandings duration in cycles",
|
||||||
|
"Counter": "2",
|
||||||
|
"EventName": "L1D_PEND_MISS.PENDING",
|
||||||
|
"PublicDescription": "This event counts duration of L1D miss outstanding, that is each cycle number of Fill Buffers (FB) outstanding required by Demand Reads. FB either is held by demand loads, or it is held by non-demand loads and gets hit at least once by demand. The valid outstanding interval is defined until the FB deallocation by one of the following ways: from FB allocation, if FB is allocated by demand; from the demand Hit FB, if it is allocated by hardware or software prefetch.\nNote: In the L1D, a Demand Read contains cacheable or noncacheable demand loads, including ones causing cache-line splits and reads due to page walks resulted from any request type.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x48",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles with L1D load Misses outstanding.",
|
||||||
|
"Counter": "2",
|
||||||
|
"EventName": "L1D_PEND_MISS.PENDING_CYCLES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts duration of L1D miss outstanding in cycles.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x48",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles with L1D load Misses outstanding from any thread on physical core.",
|
||||||
|
"Counter": "2",
|
||||||
|
"EventName": "L1D_PEND_MISS.PENDING_CYCLES_ANY",
|
||||||
|
"AnyThread": "1",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x48",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Cycles a demand request was blocked due to Fill Buffers inavailability.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L1D_PEND_MISS.FB_FULL",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x51",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "L1D data line replacements",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L1D.REPLACEMENT",
|
||||||
|
"PublicDescription": "This event counts L1D data line replacements including opportunistic replacements, and replacements that require stall-for-replace or block-for-replace.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Offcore outstanding Demand Data Read transactions in uncore queue.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts the number of offcore outstanding Demand Data Read transactions in the super queue (SQ) every cycle. A transaction is considered to be in the Offcore outstanding state between L2 miss and transaction completion sent to requestor. See the corresponding Umask under OFFCORE_REQUESTS.\nNote: A prefetch promoted to Demand is counted from the promotion point.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles when offcore outstanding Demand Data Read transactions are present in SuperQueue (SQ), queue to uncore",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts cycles when offcore outstanding Demand Data Read transactions are present in the super queue (SQ). A transaction is considered to be in the Offcore outstanding state between L2 miss and transaction completion sent to requestor (SQ de-allocation).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles with at least 6 offcore outstanding Demand Data Read transactions in uncore queue.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD_GE_6",
|
||||||
|
"CounterMask": "6",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Offcore outstanding code reads transactions in SuperQueue (SQ), queue to uncore, every cycle",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_CODE_RD",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts the number of offcore outstanding Code Reads transactions in the super queue every cycle. The Offcore outstanding state of the transaction lasts from the L2 miss until the sending transaction completion to requestor (SQ deallocation). See the corresponding Umask under OFFCORE_REQUESTS.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Offcore outstanding RFO store transactions in SuperQueue (SQ), queue to uncore",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_RFO",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts the number of offcore outstanding RFO (store) transactions in the super queue (SQ) every cycle. A transaction is considered to be in the Offcore outstanding state between L2 miss and transaction completion sent to requestor (SQ de-allocation). See corresponding Umask under OFFCORE_REQUESTS.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Offcore outstanding demand rfo reads transactions in SuperQueue (SQ), queue to uncore, every cycle",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_RFO",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts the number of offcore outstanding demand rfo Reads transactions in the super queue every cycle. The Offcore outstanding state of the transaction lasts from the L2 miss until the sending transaction completion to requestor (SQ deallocation). See the corresponding Umask under OFFCORE_REQUESTS.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Offcore outstanding cacheable Core Data Read transactions in SuperQueue (SQ), queue to uncore",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.ALL_DATA_RD",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts the number of offcore outstanding cacheable Core Data Read transactions in the super queue every cycle. A transaction is considered to be in the Offcore outstanding state between L2 miss and transaction completion sent to requestor (SQ de-allocation). See corresponding Umask under OFFCORE_REQUESTS.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Cycles when offcore outstanding cacheable Core Data Read transactions are present in SuperQueue (SQ), queue to uncore",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DATA_RD",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts cycles when offcore outstanding cacheable Core Data Read transactions are present in the super queue. A transaction is considered to be in the Offcore outstanding state between L2 miss and transaction completion sent to requestor (SQ de-allocation). See corresponding Umask under OFFCORE_REQUESTS.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x63",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Cycles when L1D is locked",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "LOCK_CYCLES.CACHE_LOCK_DURATION",
|
||||||
|
"PublicDescription": "This event counts the number of cycles when the L1D is locked. It is a superset of the 0x1 mask (BUS_LOCK_CLOCKS.BUS_LOCK_DURATION).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB0",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Demand Data Read requests sent to uncore",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS.DEMAND_DATA_RD",
|
||||||
|
"PublicDescription": "This event counts the Demand Data Read requests sent to uncore. Use it in conjunction with OFFCORE_REQUESTS_OUTSTANDING to determine average latency in the uncore.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB0",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Cacheable and noncachaeble code read requests",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS.DEMAND_CODE_RD",
|
||||||
|
"PublicDescription": "This event counts both cacheable and noncachaeble code read requests.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB0",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Demand RFO requests including regular RFOs, locks, ItoM",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS.DEMAND_RFO",
|
||||||
|
"PublicDescription": "This event counts the demand RFO (read for ownership) requests including regular RFOs, locks, ItoM.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB0",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Demand and prefetch data reads",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS.ALL_DATA_RD",
|
||||||
|
"PublicDescription": "This event counts the demand and prefetch data reads. All Core Data Reads include cacheable Demands and L2 prefetchers (not L3 prefetchers). Counting also covers reads due to page walks resulted from any request type.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xb2",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Offcore requests buffer cannot take more entries for this thread core.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_BUFFER.SQ_FULL",
|
||||||
|
"PublicDescription": "This event counts the number of cases when the offcore requests buffer cannot take more entries for the core. This can happen when the superqueue does not contain eligible entries, or when L1D writeback pending FIFO requests is full.\nNote: Writeback pending FIFO has six entries.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x11",
|
||||||
|
"BriefDescription": "Retired load uops that miss the STLB. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.STLB_MISS_LOADS",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts load uops with true STLB miss retired to the architected path. True STLB miss is an uop triggering page walk that gets completed without blocks, and later gets retired. This page walk can end up with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x12",
|
||||||
|
"BriefDescription": "Retired store uops that miss the STLB. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.STLB_MISS_STORES",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts store uops true STLB miss retired to the architected path. True STLB miss is an uop triggering page walk that gets completed without blocks, and later gets retired. This page walk can end up with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"L1_Hit_Indication": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x21",
|
||||||
|
"BriefDescription": "Retired load uops with locked access. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.LOCK_LOADS",
|
||||||
|
"Errata": "BDM35",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts load uops with locked access retired to the architected path.",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"BriefDescription": "Retired load uops that split across a cacheline boundary.(Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.SPLIT_LOADS",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts line-splitted load uops retired to the architected path. A line split is across 64B cache-line which includes a page split (4K).",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"BriefDescription": "Retired store uops that split across a cacheline boundary. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.SPLIT_STORES",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts line-splitted store uops retired to the architected path. A line split is across 64B cache-line which includes a page split (4K).",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"L1_Hit_Indication": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"BriefDescription": "All retired load uops. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.ALL_LOADS",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts load uops retired to the architected path with a filter on bits 0 and 1 applied.\nNote: This event ?ounts AVX-256bit load/store double-pump memory uops as a single uop at retirement. This event also counts SW prefetches.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x82",
|
||||||
|
"BriefDescription": "Retired store uops that split across a cacheline boundary. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.ALL_STORES",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts store uops retired to the architected path with a filter on bits 0 and 1 applied.\nNote: This event ?ounts AVX-256bit load/store double-pump memory uops as a single uop at retirement.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"L1_Hit_Indication": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Retired load uops with L1 cache hits as data sources. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L1_HIT",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data source were hits in the nearest-level (L1) cache.\nNote: Only two data-sources of L1/FB are applicable for AVX-256bit even though the corresponding AVX load could be serviced by a deeper level in the memory hierarchy. Data source is reported for the Low-half load. This event also counts SW prefetches independent of the actual data source.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Retired load uops with L2 cache hits as data sources. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L2_HIT",
|
||||||
|
"Errata": "BDM35",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were hits in the mid-level (L2) cache.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Hit in last-level (L3) cache. Excludes Unknown data-source. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L3_HIT",
|
||||||
|
"Errata": "BDM100",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were data hits in the last-level (L3) cache without snoops required.",
|
||||||
|
"SampleAfterValue": "50021",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Retired load uops misses in L1 cache as data sources. Uses PEBS.",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L1_MISS",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were misses in the nearest-level (L1) cache. Counting excludes unknown and UC data source.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Retired load uops with L2 cache misses as data sources. Uses PEBS.",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L2_MISS",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were misses in the mid-level (L2) cache. Counting excludes unknown and UC data source.",
|
||||||
|
"SampleAfterValue": "50021",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Miss in last-level (L3) cache. Excludes Unknown data-source. (Precise Event - PEBS).",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L3_MISS",
|
||||||
|
"Errata": "BDM100, BDE70",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Retired load uops which data sources were load uops missed L1 but hit FB due to preceding miss to the same cache line with data not ready. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.HIT_LFB",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were load uops missed L1 but hit a fill buffer due to a preceding miss to the same cache line with the data not ready.\nNote: Only two data-sources of L1/FB are applicable for AVX-256bit even though the corresponding AVX load could be serviced by a deeper level in the memory hierarchy. Data source is reported for the Low-half load.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD2",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Retired load uops which data sources were L3 hit and cross-core snoop missed in on-pkg core cache. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_HIT_RETIRED.XSNP_MISS",
|
||||||
|
"Errata": "BDM100",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were L3 Hit and a cross-core snoop missed in the on-pkg core cache.",
|
||||||
|
"SampleAfterValue": "20011",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD2",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Retired load uops which data sources were L3 and cross-core snoop hits in on-pkg core cache. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_HIT_RETIRED.XSNP_HIT",
|
||||||
|
"Errata": "BDM100",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were L3 hit and a cross-core snoop hit in the on-pkg core cache.",
|
||||||
|
"SampleAfterValue": "20011",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD2",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Retired load uops which data sources were HitM responses from shared L3. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_HIT_RETIRED.XSNP_HITM",
|
||||||
|
"Errata": "BDM100",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were HitM responses from a core on same socket (shared L3).",
|
||||||
|
"SampleAfterValue": "20011",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD2",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Retired load uops which data sources were hits in L3 without snoops required. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_HIT_RETIRED.XSNP_NONE",
|
||||||
|
"Errata": "BDM100",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were hits in the last-level (L3) cache without snoops required.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_MISS_RETIRED.LOCAL_DRAM",
|
||||||
|
"Errata": "BDE70, BDM100",
|
||||||
|
"PublicDescription": "This event counts retired load uops where the data came from local DRAM. This does not include hardware prefetches. This is a precise event.",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Retired load uop whose Data Source was: remote DRAM either Snoop not needed or Snoop Miss (RspI) (Precise Event)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_MISS_RETIRED.REMOTE_DRAM",
|
||||||
|
"Errata": "BDE70",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Retired load uop whose Data Source was: Remote cache HITM (Precise Event)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_MISS_RETIRED.REMOTE_HITM",
|
||||||
|
"Errata": "BDE70",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD3",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Retired load uop whose Data Source was: forwarded from remote cache (Precise Event)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_MISS_RETIRED.REMOTE_FWD",
|
||||||
|
"Errata": "BDE70",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Demand Data Read requests that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.DEMAND_DATA_RD",
|
||||||
|
"PublicDescription": "This event counts Demand Data Read requests that access L2 cache, including rejects.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "RFO requests that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.RFO",
|
||||||
|
"PublicDescription": "This event counts Read for Ownership (RFO) requests that access L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "L2 cache accesses when fetching instructions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.CODE_RD",
|
||||||
|
"PublicDescription": "This event counts the number of L2 cache accesses when fetching instructions.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "L2 or L3 HW prefetches that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.ALL_PF",
|
||||||
|
"PublicDescription": "This event counts L2 or L3 HW prefetches that access L2 cache including rejects.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "L1D writebacks that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.L1D_WB",
|
||||||
|
"PublicDescription": "This event counts L1D writebacks that access L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "L2 fill requests that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.L2_FILL",
|
||||||
|
"PublicDescription": "This event counts L2 fill requests that access L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "L2 writebacks that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.L2_WB",
|
||||||
|
"PublicDescription": "This event counts L2 writebacks that access L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x80",
|
||||||
|
"BriefDescription": "Transactions accessing L2 pipe",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.ALL_REQUESTS",
|
||||||
|
"PublicDescription": "This event counts transactions that access the L2 pipe including snoops, pagewalks, and so on.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "L2 cache lines in I state filling L2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_LINES_IN.I",
|
||||||
|
"PublicDescription": "This event counts the number of L2 cache lines in the Invalidate state filling the L2. Counting does not cover rejects.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "L2 cache lines in S state filling L2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_LINES_IN.S",
|
||||||
|
"PublicDescription": "This event counts the number of L2 cache lines in the Shared state filling the L2. Counting does not cover rejects.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "L2 cache lines in E state filling L2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_LINES_IN.E",
|
||||||
|
"PublicDescription": "This event counts the number of L2 cache lines in the Exclusive state filling the L2. Counting does not cover rejects.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF1",
|
||||||
|
"UMask": "0x7",
|
||||||
|
"BriefDescription": "L2 cache lines filling L2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_LINES_IN.ALL",
|
||||||
|
"PublicDescription": "This event counts the number of L2 cache lines filling the L2. Counting does not cover rejects.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF2",
|
||||||
|
"UMask": "0x5",
|
||||||
|
"BriefDescription": "Clean L2 cache lines evicted by demand.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_LINES_OUT.DEMAND_CLEAN",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xf4",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Split locks in SQ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "SQ_MISC.SPLIT_LOCK",
|
||||||
|
"PublicDescription": "This event counts the number of split locks in the super queue.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,165 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0xC1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of transitions from AVX-256 to legacy SSE when penalty applicable.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OTHER_ASSISTS.AVX_TO_SSE",
|
||||||
|
"Errata": "BDM30",
|
||||||
|
"PublicDescription": "This event counts the number of transitions from AVX-256 to legacy SSE when penalty is applicable.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of transitions from SSE to AVX-256 when penalty applicable.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OTHER_ASSISTS.SSE_TO_AVX",
|
||||||
|
"Errata": "BDM30",
|
||||||
|
"PublicDescription": "This event counts the number of transitions from legacy SSE to AVX-256 when penalty is applicable.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational scalar double precision floating-point instructions retired. Each count represents 1 computation. Applies to SSE* and AVX* scalar double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SCALAR_DOUBLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational scalar single precision floating-point instructions retired. Each count represents 1 computation. Applies to SSE* and AVX* scalar single precision floating-point instructions: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SCALAR_SINGLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational scalar floating-point instructions retired. Applies to SSE* and AVX* scalar, double and single precision floating-point: ADD SUB MUL DIV MIN MAX RSQRT RCP SQRT FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SCALAR",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 128-bit packed double precision floating-point instructions retired. Each count represents 2 computations. Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_DOUBLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 128-bit packed single precision floating-point instructions retired. Each count represents 4 computations. Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_SINGLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 256-bit packed double precision floating-point instructions retired. Each count represents 4 computations. Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_DOUBLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x15",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational double precision floating-point instructions retired. Applies to SSE* and AVX*scalar, double and single precision floating-point: ADD SUB MUL DIV MIN MAX SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element. ?.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.DOUBLE",
|
||||||
|
"SampleAfterValue": "2000006",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc7",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 256-bit packed single precision floating-point instructions retired. Each count represents 8 computations. Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_SINGLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x2a",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational single precision floating-point instructions retired. Applies to SSE* and AVX*scalar, double and single precision floating-point: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element. ?.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SINGLE",
|
||||||
|
"SampleAfterValue": "2000005",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x3c",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational packed floating-point instructions retired. Applies to SSE* and AVX*, packed, double and single precision floating-point: ADD SUB MUL DIV MIN MAX RSQRT RCP SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.PACKED",
|
||||||
|
"SampleAfterValue": "2000004",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of X87 assists due to output value.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ASSIST.X87_OUTPUT",
|
||||||
|
"PublicDescription": "This event counts the number of x87 floating point (FP) micro-code assist (numeric overflow/underflow, inexact result) when the output value (destination register) is invalid.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Number of X87 assists due to input value.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ASSIST.X87_INPUT",
|
||||||
|
"PublicDescription": "This event counts x87 floating point (FP) micro-code assist (invalid operation, denormal operand, SNaN operand) when the input value (one of the source operands to an FP instruction) is invalid.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of SIMD FP assists due to Output values",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ASSIST.SIMD_OUTPUT",
|
||||||
|
"PublicDescription": "This event counts the number of SSE* floating point (FP) micro-code assist (numeric overflow/underflow) when the output value (destination register) is invalid. Counting covers only cases involving penalties that require micro-code assist intervention.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of SIMD FP assists due to input values",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ASSIST.SIMD_INPUT",
|
||||||
|
"PublicDescription": "This event counts any input SSE* FP assist - invalid operation, denormal operand, dividing by zero, SNaN operand. Counting includes only cases involving penalties that required micro-code assist intervention.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"UMask": "0x1e",
|
||||||
|
"BriefDescription": "Cycles with any input/output SSE or FP assist",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ASSIST.ANY",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts cycles with any input and output SSE or x87 FP assist. If an input and output assist are detected on the same cycle the event increments by 1.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
}
|
||||||
|
]
|
286
lib/libpmcstat/pmu-events/arch/x86/broadwellde/frontend.json
Normal file
286
lib/libpmcstat/pmu-events/arch/x86/broadwellde/frontend.json
Normal file
@ -0,0 +1,286 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Instruction Decode Queue (IDQ) empty cycles",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.EMPTY",
|
||||||
|
"PublicDescription": "This counts the number of cycles that the instruction decoder queue is empty and can indicate that the application may be bound in the front end. It does not determine whether there are uops being delivered to the Alloc stage since uops can be delivered by bypass skipping the Instruction Decode Queue (IDQ) when it is empty.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MITE_UOPS",
|
||||||
|
"PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from MITE path",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MITE_CYCLES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.DSB_UOPS",
|
||||||
|
"PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from Decode Stream Buffer (DSB) path",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.DSB_CYCLES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_DSB_UOPS",
|
||||||
|
"PublicDescription": "This event counts the number of uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Cycles when uops initiated by Decode Stream Buffer (DSB) are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_DSB_CYCLES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts cycles during which uops initiated by Decode Stream Buffer (DSB) are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EdgeDetect": "1",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Deliveries to Instruction Decode Queue (IDQ) initiated by Decode Stream Buffer (DSB) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_DSB_OCCUR",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts the number of deliveries to Instruction Decode Queue (IDQ) initiated by Decode Stream Buffer (DSB) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x18",
|
||||||
|
"BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering 4 Uops",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.ALL_DSB_CYCLES_4_UOPS",
|
||||||
|
"CounterMask": "4",
|
||||||
|
"PublicDescription": "This event counts the number of cycles 4 uops were delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x18",
|
||||||
|
"BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering any Uop",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.ALL_DSB_CYCLES_ANY_UOPS",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts the number of cycles uops were delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_MITE_UOPS",
|
||||||
|
"PublicDescription": "This event counts the number of uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x24",
|
||||||
|
"BriefDescription": "Cycles MITE is delivering 4 Uops",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.ALL_MITE_CYCLES_4_UOPS",
|
||||||
|
"CounterMask": "4",
|
||||||
|
"PublicDescription": "This event counts the number of cycles 4 uops were delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x24",
|
||||||
|
"BriefDescription": "Cycles MITE is delivering any Uop",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.ALL_MITE_CYCLES_ANY_UOPS",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts the number of cycles uops were delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x30",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_UOPS",
|
||||||
|
"PublicDescription": "This event counts the total number of uops delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ. Uops maybe initiated by Decode Stream Buffer (DSB) or MITE.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x30",
|
||||||
|
"BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_CYCLES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ. Uops maybe initiated by Decode Stream Buffer (DSB) or MITE.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EdgeDetect": "1",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x30",
|
||||||
|
"BriefDescription": "Number of switches from DSB (Decode Stream Buffer) or MITE (legacy decode pipeline) to the Microcode Sequencer.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_SWITCHES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x3c",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MITE_ALL_UOPS",
|
||||||
|
"PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of Instruction Cache, Streaming Buffer and Victim Cache Reads. both cacheable and noncacheable, including UC fetches",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ICACHE.HIT",
|
||||||
|
"PublicDescription": "This event counts the number of both cacheable and noncacheable Instruction Cache, Streaming Buffer and Victim Cache Reads including UC fetches.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of Instruction Cache, Streaming Buffer and Victim Cache Misses. Includes Uncacheable accesses.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ICACHE.MISSES",
|
||||||
|
"PublicDescription": "This event counts the number of instruction cache, streaming buffer and victim cache misses. Counting includes UC accesses.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Cycles where a code fetch is stalled due to L1 instruction-cache miss.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ICACHE.IFDATA_STALL",
|
||||||
|
"PublicDescription": "This event counts cycles during which the demand fetch waits for data (wfdM104H) from L2 or iSB (opportunistic hit).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Uops not delivered to Resource Allocation Table (RAT) per thread when backend of the machine is not stalled",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CORE",
|
||||||
|
"PublicDescription": "This event counts the number of uops not delivered to Resource Allocation Table (RAT) per thread adding 4 x when Resource Allocation Table (RAT) is not stalled and Instruction Decode Queue (IDQ) delivers x uops to Resource Allocation Table (RAT) (where x belongs to {0,1,2,3}). Counting does not cover cases when:\n a. IDQ-Resource Allocation Table (RAT) pipe serves the other thread;\n b. Resource Allocation Table (RAT) is stalled for the thread (including uop drops and clear BE conditions); \n c. Instruction Decode Queue (IDQ) delivers four uops.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles per thread when 4 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE",
|
||||||
|
"CounterMask": "4",
|
||||||
|
"PublicDescription": "This event counts, on the per-thread basis, cycles when no uops are delivered to Resource Allocation Table (RAT). IDQ_Uops_Not_Delivered.core =4.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles per thread when 3 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_1_UOP_DELIV.CORE",
|
||||||
|
"CounterMask": "3",
|
||||||
|
"PublicDescription": "This event counts, on the per-thread basis, cycles when less than 1 uop is delivered to Resource Allocation Table (RAT). IDQ_Uops_Not_Delivered.core >=3.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles with less than 2 uops delivered by the front end.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_2_UOP_DELIV.CORE",
|
||||||
|
"CounterMask": "2",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles with less than 3 uops delivered by the front end.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_3_UOP_DELIV.CORE",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Invert": "1",
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts cycles FE delivered 4 uops or Resource Allocation Table (RAT) was stalling FE.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_FE_WAS_OK",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xAB",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DSB2MITE_SWITCHES.PENALTY_CYCLES",
|
||||||
|
"PublicDescription": "This event counts Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles. These cycles do not include uops routed through because of the switch itself, for example, when Instruction Decode Queue (IDQ) pre-allocation is unavailable, or Instruction Decode Queue (IDQ) is full. SBD-to-MITE switch true penalty cycles happen after the merge mux (MM) receives Decode Stream Buffer (DSB) Sync-indication until receiving the first MITE uop. \nMM is placed before Instruction Decode Queue (IDQ) to merge uops being fed from the MITE and Decode Stream Buffer (DSB) paths. Decode Stream Buffer (DSB) inserts the Sync-indication whenever a Decode Stream Buffer (DSB)-to-MITE switch occurs.\nPenalty: A Decode Stream Buffer (DSB) hit followed by a Decode Stream Buffer (DSB) miss can cost up to six cycles in which no uops are delivered to the IDQ. Most often, such switches from the Decode Stream Buffer (DSB) to the legacy pipeline cost 02 cycles.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
}
|
||||||
|
]
|
432
lib/libpmcstat/pmu-events/arch/x86/broadwellde/memory.json
Normal file
432
lib/libpmcstat/pmu-events/arch/x86/broadwellde/memory.json
Normal file
@ -0,0 +1,432 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x05",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Speculative cache line split load uops dispatched to L1 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.LOADS",
|
||||||
|
"PublicDescription": "This event counts speculative cache-line split load uops dispatched to the L1 cache.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x05",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Speculative cache line split STA uops dispatched to L1 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.STORES",
|
||||||
|
"PublicDescription": "This event counts speculative cache line split store-address (STA) uops dispatched to the L1 cache.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of times a TSX line had a cache conflict",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_CONFLICT",
|
||||||
|
"PublicDescription": "Number of times a TSX line had a cache conflict.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of times a TSX Abort was triggered due to an evicted line caused by a transaction overflow",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_CAPACITY_WRITE",
|
||||||
|
"PublicDescription": "Number of times a TSX Abort was triggered due to an evicted line caused by a transaction overflow.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Number of times a TSX Abort was triggered due to a non-release/commit store to lock",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_HLE_STORE_TO_ELIDED_LOCK",
|
||||||
|
"PublicDescription": "Number of times a TSX Abort was triggered due to a non-release/commit store to lock.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of times a TSX Abort was triggered due to commit but Lock Buffer not empty",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_HLE_ELISION_BUFFER_NOT_EMPTY",
|
||||||
|
"PublicDescription": "Number of times a TSX Abort was triggered due to commit but Lock Buffer not empty.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of times a TSX Abort was triggered due to release/commit but data and address mismatch",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_HLE_ELISION_BUFFER_MISMATCH",
|
||||||
|
"PublicDescription": "Number of times a TSX Abort was triggered due to release/commit but data and address mismatch.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Number of times a TSX Abort was triggered due to attempting an unsupported alignment from Lock Buffer",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_HLE_ELISION_BUFFER_UNSUPPORTED_ALIGNMENT",
|
||||||
|
"PublicDescription": "Number of times a TSX Abort was triggered due to attempting an unsupported alignment from Lock Buffer.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Number of times we could not allocate Lock Buffer",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.HLE_ELISION_BUFFER_FULL",
|
||||||
|
"PublicDescription": "Number of times we could not allocate Lock Buffer.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5d",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts the number of times a class of instructions that may cause a transactional abort was executed. Since this is the count of execution, it may not always cause a transactional abort.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_EXEC.MISC1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5d",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Counts the number of times a class of instructions (e.g., vzeroupper) that may cause a transactional abort was executed inside a transactional region",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_EXEC.MISC2",
|
||||||
|
"PublicDescription": "Unfriendly TSX abort triggered by a vzeroupper instruction.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5d",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Counts the number of times an instruction execution caused the transactional nest count supported to be exceeded",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_EXEC.MISC3",
|
||||||
|
"PublicDescription": "Unfriendly TSX abort triggered by a nest count that is too deep.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5d",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Counts the number of times a XBEGIN instruction was executed inside an HLE transactional region.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_EXEC.MISC4",
|
||||||
|
"PublicDescription": "RTM region detected inside HLE.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5d",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Counts the number of times an HLE XACQUIRE instruction was executed inside an RTM transactional region.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_EXEC.MISC5",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Counts the number of machine clears due to memory order conflicts.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MACHINE_CLEARS.MEMORY_ORDERING",
|
||||||
|
"PublicDescription": "This event counts the number of memory ordering Machine Clears detected. Memory Ordering Machine Clears can result from one of the following:\n1. memory disambiguation,\n2. external snoop, or\n3. cross SMT-HW-thread snoop (stores) hitting load buffer.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of times we entered an HLE region; does not count nested transactions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.START",
|
||||||
|
"PublicDescription": "Number of times we entered an HLE region\n does not count nested transactions.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of times HLE commit succeeded",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.COMMIT",
|
||||||
|
"PublicDescription": "Number of times HLE commit succeeded.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Number of times HLE abort was triggered (PEBS)",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED",
|
||||||
|
"PublicDescription": "Number of times HLE abort was triggered (PEBS).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of times an HLE execution aborted due to various memory events (e.g., read/write capacity and conflicts).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED_MISC1",
|
||||||
|
"PublicDescription": "Number of times an HLE abort was attributed to a Memory condition (See TSX_Memory event for additional details).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of times an HLE execution aborted due to uncommon conditions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED_MISC2",
|
||||||
|
"PublicDescription": "Number of times the TSX watchdog signaled an HLE abort.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Number of times an HLE execution aborted due to HLE-unfriendly instructions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED_MISC3",
|
||||||
|
"PublicDescription": "Number of times a disallowed operation caused an HLE abort.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Number of times an HLE execution aborted due to incompatible memory type",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED_MISC4",
|
||||||
|
"PublicDescription": "Number of times HLE caused a fault.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x80",
|
||||||
|
"BriefDescription": "Number of times an HLE execution aborted due to none of the previous 4 categories (e.g. interrupts)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED_MISC5",
|
||||||
|
"PublicDescription": "Number of times HLE aborted and was not due to the abort conditions in subevents 3-6.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of times we entered an RTM region; does not count nested transactions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.START",
|
||||||
|
"PublicDescription": "Number of times we entered an RTM region\n does not count nested transactions.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of times RTM commit succeeded",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.COMMIT",
|
||||||
|
"PublicDescription": "Number of times RTM commit succeeded.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Number of times RTM abort was triggered (PEBS)",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED",
|
||||||
|
"PublicDescription": "Number of times RTM abort was triggered (PEBS).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of times an RTM execution aborted due to various memory events (e.g. read/write capacity and conflicts)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED_MISC1",
|
||||||
|
"PublicDescription": "Number of times an RTM abort was attributed to a Memory condition (See TSX_Memory event for additional details).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of times an RTM execution aborted due to various memory events (e.g., read/write capacity and conflicts).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED_MISC2",
|
||||||
|
"PublicDescription": "Number of times the TSX watchdog signaled an RTM abort.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Number of times an RTM execution aborted due to HLE-unfriendly instructions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED_MISC3",
|
||||||
|
"PublicDescription": "Number of times a disallowed operation caused an RTM abort.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Number of times an RTM execution aborted due to incompatible memory type",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED_MISC4",
|
||||||
|
"PublicDescription": "Number of times a RTM caused a fault.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x80",
|
||||||
|
"BriefDescription": "Number of times an RTM execution aborted due to none of the previous 4 categories (e.g. interrupt)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED_MISC5",
|
||||||
|
"PublicDescription": "Number of times RTM aborted and was not due to the abort conditions in subevents 3-6.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 4",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x4",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_4",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above four.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 8",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x8",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_8",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above eight.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "50021",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 16",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x10",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_16",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 16.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "20011",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 32",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x20",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_32",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 32.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 64",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x40",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_64",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 64.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "2003",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 128",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x80",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_128",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 128.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "1009",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 256",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x100",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_256",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 256.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "503",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 512",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x200",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_512",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 512.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "101",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
}
|
||||||
|
]
|
44
lib/libpmcstat/pmu-events/arch/x86/broadwellde/other.json
Normal file
44
lib/libpmcstat/pmu-events/arch/x86/broadwellde/other.json
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x5C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Unhalted core cycles when the thread is in ring 0",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "CPL_CYCLES.RING0",
|
||||||
|
"PublicDescription": "This event counts the unhalted core cycles during which the thread is in the ring 0 privileged mode.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EdgeDetect": "1",
|
||||||
|
"EventCode": "0x5C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of intervals between processor halts while thread is in ring 0",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "CPL_CYCLES.RING0_TRANS",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts when there is a transition from ring 1,2 or 3 to ring0.",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5C",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Unhalted core cycles when thread is in rings 1, 2, or 3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "CPL_CYCLES.RING123",
|
||||||
|
"PublicDescription": "This event counts unhalted core cycles during which the thread is in rings 1, 2, or 3.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x63",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles when L1 and L2 are locked due to UC or split lock",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "LOCK_CYCLES.SPLIT_LOCK_UC_LOCK_DURATION",
|
||||||
|
"PublicDescription": "This event counts cycles in which the L1 and L2 are locked due to a UC lock or split lock. A lock is asserted in case of locked memory access, due to noncacheable memory, locked operation that spans two cache lines, or a page walk from the noncacheable page table. L1D and L2 locks have a very high performance penalty and it is highly recommended to avoid such access.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
}
|
||||||
|
]
|
1427
lib/libpmcstat/pmu-events/arch/x86/broadwellde/pipeline.json
Normal file
1427
lib/libpmcstat/pmu-events/arch/x86/broadwellde/pipeline.json
Normal file
File diff suppressed because it is too large
Load Diff
317
lib/libpmcstat/pmu-events/arch/x86/broadwellde/uncore-cache.json
Normal file
317
lib/libpmcstat/pmu-events/arch/x86/broadwellde/uncore-cache.json
Normal file
@ -0,0 +1,317 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"BriefDescription": "Uncore cache clock ticks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "UNC_C_CLOCKTICKS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "All LLC Misses (code+ data rd + data wr - including demand and prefetch)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"EventName": "UNC_C_LLC_LOOKUP.ANY",
|
||||||
|
"Filter": "filter_state=0x1",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x11",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "M line evictions from LLC (writebacks to memory)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x37",
|
||||||
|
"EventName": "UNC_C_LLC_VICTIMS.M_STATE",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC misses - demand and prefetch data reads - excludes LLC prefetches. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.DATA_READ",
|
||||||
|
"Filter": "filter_opc=0x182",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC misses - Uncacheable reads (from cpu) . Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.UNCACHEABLE",
|
||||||
|
"Filter": "filter_opc=0x187",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "MMIO reads. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.MMIO_READ",
|
||||||
|
"Filter": "filter_opc=0x187,filter_nc=1",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "MMIO writes. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.MMIO_WRITE",
|
||||||
|
"Filter": "filter_opc=0x18f,filter_nc=1",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC prefetch misses for RFO. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.RFO_LLC_PREFETCH",
|
||||||
|
"Filter": "filter_opc=0x190",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC prefetch misses for code reads. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.CODE_LLC_PREFETCH",
|
||||||
|
"Filter": "filter_opc=0x191",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC prefetch misses for data reads. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.DATA_LLC_PREFETCH",
|
||||||
|
"Filter": "filter_opc=0x192",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC misses for PCIe read current. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.PCIE_READ",
|
||||||
|
"Filter": "filter_opc=0x19e",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "ItoM write misses (as part of fast string memcpy stores) + PCIe full line writes. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.PCIE_WRITE",
|
||||||
|
"Filter": "filter_opc=0x1c8",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "PCIe write misses (full cache line). Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.PCIE_NON_SNOOP_WRITE",
|
||||||
|
"Filter": "filter_opc=0x1c8,filter_tid=0x3e",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "PCIe writes (partial cache line). Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.PCIE_NS_PARTIAL_WRITE",
|
||||||
|
"Filter": "filter_opc=0x180,filter_tid=0x3e",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "L2 demand and L2 prefetch code references to LLC. Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.CODE_LLC_PREFETCH",
|
||||||
|
"Filter": "filter_opc=0x181",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Streaming stores (full cache line). Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.STREAMING_FULL",
|
||||||
|
"Filter": "filter_opc=0x18c",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Streaming stores (partial cache line). Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.STREAMING_PARTIAL",
|
||||||
|
"Filter": "filter_opc=0x18d",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "PCIe read current. Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.PCIE_READ",
|
||||||
|
"Filter": "filter_opc=0x19e",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "PCIe write references (full cache line). Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.PCIE_WRITE",
|
||||||
|
"Filter": "filter_opc=0x1c8,filter_tid=0x3e",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Occupancy counter for LLC data reads (demand and L2 prefetch). Derived from unc_c_tor_occupancy.miss_opcode",
|
||||||
|
"EventCode": "0x36",
|
||||||
|
"EventName": "UNC_C_TOR_OCCUPANCY.LLC_DATA_READ",
|
||||||
|
"Filter": "filter_opc=0x182",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "read requests to home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.READS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "read requests to local home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.READS_LOCAL",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "read requests to remote home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.READS_REMOTE",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "write requests to home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.WRITES",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0xC",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "write requests to local home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.WRITES_LOCAL",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "write requests to remote home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.WRITES_REMOTE",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Conflict requests (requests for same address from multiple agents simultaneously)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x21",
|
||||||
|
"EventName": "UNC_H_SNOOP_RESP.RSPCNFLCT",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "M line forwarded from remote cache along with writeback to memory",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x21",
|
||||||
|
"EventName": "UNC_H_SNOOP_RESP.RSP_FWD_WB",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "M line forwarded from remote cache with no writeback to memory",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x21",
|
||||||
|
"EventName": "UNC_H_SNOOP_RESP.RSPIFWD",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Shared line response from remote cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x21",
|
||||||
|
"EventName": "UNC_H_SNOOP_RESP.RSPS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Shared line forwarded from remote cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x21",
|
||||||
|
"EventName": "UNC_H_SNOOP_RESP.RSPSFWD",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"Unit": "HA"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,86 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"BriefDescription": "read requests to memory controller. Derived from unc_m_cas_count.rd",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x4",
|
||||||
|
"EventName": "LLC_MISSES.MEM_READ",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "write requests to memory controller. Derived from unc_m_cas_count.wr",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x4",
|
||||||
|
"EventName": "LLC_MISSES.MEM_WRITE",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0xC",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Memory controller clock ticks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "UNC_M_DCLOCKTICKS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Cycles where DRAM ranks are in power down (CKE) mode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"EventName": "UNC_M_POWER_CHANNEL_PPD",
|
||||||
|
"MetricExpr": "(UNC_M_POWER_CHANNEL_PPD / UNC_M_DCLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_channel_ppd %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Cycles all ranks are in critical thermal throttle",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x86",
|
||||||
|
"EventName": "UNC_M_POWER_CRITICAL_THROTTLE_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_M_POWER_CRITICAL_THROTTLE_CYCLES / UNC_M_DCLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_critical_throttle_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Cycles Memory is in self refresh power mode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x43",
|
||||||
|
"EventName": "UNC_M_POWER_SELF_REFRESH",
|
||||||
|
"MetricExpr": "(UNC_M_POWER_SELF_REFRESH / UNC_M_DCLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_self_refresh %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Pre-charges due to page misses",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x2",
|
||||||
|
"EventName": "UNC_M_PRE_COUNT.PAGE_MISS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Pre-charge for reads",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x2",
|
||||||
|
"EventName": "UNC_M_PRE_COUNT.RD",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Pre-charge for writes",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x2",
|
||||||
|
"EventName": "UNC_M_PRE_COUNT.WR",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"Unit": "iMC"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,92 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"BriefDescription": "PCU clock ticks. Use to get percentages of PCU cycles events",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "UNC_P_CLOCKTICKS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "This is an occupancy event that tracks the number of cores that are in C0. It can be used by itself to get the average number of cores in C0, with threshholding to generate histograms, or with other PCU events and occupancy triggering to capture other details",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"EventName": "UNC_P_POWER_STATE_OCCUPANCY.CORES_C0",
|
||||||
|
"Filter": "occ_sel=1",
|
||||||
|
"MetricExpr": "(UNC_P_POWER_STATE_OCCUPANCY.CORES_C0 / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_state_occupancy.cores_c0 %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "This is an occupancy event that tracks the number of cores that are in C3. It can be used by itself to get the average number of cores in C0, with threshholding to generate histograms, or with other PCU events and occupancy triggering to capture other details",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"EventName": "UNC_P_POWER_STATE_OCCUPANCY.CORES_C3",
|
||||||
|
"Filter": "occ_sel=2",
|
||||||
|
"MetricExpr": "(UNC_P_POWER_STATE_OCCUPANCY.CORES_C3 / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_state_occupancy.cores_c3 %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "This is an occupancy event that tracks the number of cores that are in C6. It can be used by itself to get the average number of cores in C0, with threshholding to generate histograms, or with other PCU events ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"EventName": "UNC_P_POWER_STATE_OCCUPANCY.CORES_C6",
|
||||||
|
"Filter": "occ_sel=3",
|
||||||
|
"MetricExpr": "(UNC_P_POWER_STATE_OCCUPANCY.CORES_C6 / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_state_occupancy.cores_c6 %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Counts the number of cycles that we are in external PROCHOT mode. This mode is triggered when a sensor off the die determines that something off-die (like DRAM) is too hot and must throttle to avoid damaging the chip",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0xA",
|
||||||
|
"EventName": "UNC_P_PROCHOT_EXTERNAL_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_P_PROCHOT_EXTERNAL_CYCLES / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "prochot_external_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Counts the number of cycles when temperature is the upper limit on frequency",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x4",
|
||||||
|
"EventName": "UNC_P_FREQ_MAX_LIMIT_THERMAL_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_P_FREQ_MAX_LIMIT_THERMAL_CYCLES / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "freq_max_limit_thermal_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Counts the number of cycles when the OS is the upper limit on frequency",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x6",
|
||||||
|
"EventName": "UNC_P_FREQ_MAX_OS_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_P_FREQ_MAX_OS_CYCLES / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "freq_max_os_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Counts the number of cycles when power is the upper limit on frequency",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"EventName": "UNC_P_FREQ_MAX_POWER_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_P_FREQ_MAX_POWER_CYCLES / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "freq_max_power_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Counts the number of cycles when current is the upper limit on frequency",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x74",
|
||||||
|
"EventName": "UNC_P_FREQ_TRANS_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_P_FREQ_TRANS_CYCLES / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "freq_trans_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,388 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Load misses in all DTLB levels that cause page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.MISS_CAUSES_A_WALK",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause page walks of any page size (4K/2M/4M/1G).",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Demand load Miss in all translation lookaside buffer (TLB) levels causes a page walk that completes (4K).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_4K",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause a completed page walk (4K page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Demand load Miss in all translation lookaside buffer (TLB) levels causes a page walk that completes (2M/4M).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_2M_4M",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause a completed page walk (2M and 4M page sizes). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (1G)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_1G",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause a completed page walk (1G page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0xe",
|
||||||
|
"BriefDescription": "Demand load Miss in all translation lookaside buffer (TLB) levels causes a page walk that completes of any page size.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Cycles when PMH is busy with page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_DURATION",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts the number of cycles while PMH is busy with the page walk.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Load misses that miss the DTLB and hit the STLB (4K).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.STLB_HIT_4K",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Load misses that miss the DTLB and hit the STLB (2M).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.STLB_HIT_2M",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x60",
|
||||||
|
"BriefDescription": "Load operations that miss the first DTLB level but hit the second and do not cause page walks.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.STLB_HIT",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.MISS_CAUSES_A_WALK",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause page walks of any page size (4K/2M/4M/1G).",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Store miss in all TLB levels causes a page walk that completes. (4K)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_4K",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (4K page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause completed page walks (2M/4M)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_2M_4M",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (2M and 4M page sizes). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause completed page walks (1G)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_1G",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (1G page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0xe",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause completed page walks.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Cycles when PMH is busy with page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_DURATION",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts the number of cycles while PMH is busy with the page walk.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Store misses that miss the DTLB and hit the STLB (4K).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.STLB_HIT_4K",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Store misses that miss the DTLB and hit the STLB (2M).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.STLB_HIT_2M",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x60",
|
||||||
|
"BriefDescription": "Store operations that miss the first TLB level but hit the second and do not cause page walks.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.STLB_HIT",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x4F",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Cycle count for an Extended Page table walk.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "EPT.WALK_CYCLES",
|
||||||
|
"PublicDescription": "This event counts cycles for an extended page table walk. The Extended Page directory cache differs from standard TLB caches by the operating system that use it. Virtual machine operating systems use the extended page directory cache, while guest operating systems use the standard TLB caches.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Misses at all ITLB levels that cause page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.MISS_CAUSES_A_WALK",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause page walks of any page size (4K/2M/4M/1G).",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (4K)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_4K",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (4K page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (2M/4M)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_2M_4M",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (2M and 4M page sizes). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Store miss in all TLB levels causes a page walk that completes. (1G)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_1G",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (1G page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0xe",
|
||||||
|
"BriefDescription": "Misses in all ITLB levels that cause completed page walks.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Cycles when PMH is busy with page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_DURATION",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts the number of cycles while PMH is busy with the page walk.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Core misses that miss the DTLB and hit the STLB (4K).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.STLB_HIT_4K",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Code misses that miss the DTLB and hit the STLB (2M).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.STLB_HIT_2M",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x60",
|
||||||
|
"BriefDescription": "Operations that miss the first ITLB level but hit the second and do not cause any page walks.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.STLB_HIT",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xAE",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Flushing of the Instruction TLB (ITLB) pages, includes 4k/2M/4M pages.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB.ITLB_FLUSH",
|
||||||
|
"PublicDescription": "This event counts the number of flushes of the big or small ITLB pages. Counting include both TLB Flush (covering all sets) and TLB Set Clear (set-specific).",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x11",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in the L1+FB.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_L1",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x12",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in the L2.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_L2",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x14",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in the L3 + XSNP.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_L3",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x18",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in Memory.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_MEMORY",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x21",
|
||||||
|
"BriefDescription": "Number of ITLB page walker hits in the L1+FB.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.ITLB_L1",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x22",
|
||||||
|
"BriefDescription": "Number of ITLB page walker hits in the L2.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.ITLB_L2",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x24",
|
||||||
|
"BriefDescription": "Number of ITLB page walker hits in the L3 + XSNP.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.ITLB_L3",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "DTLB flush attempts of the thread-specific entries",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TLB_FLUSH.DTLB_THREAD",
|
||||||
|
"PublicDescription": "This event counts the number of DTLB flush attempts of the thread-specific entries.",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBD",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "STLB flush attempts",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TLB_FLUSH.STLB_ANY",
|
||||||
|
"PublicDescription": "This event counts the number of any STLB flush attempts (such as entire, VPID, PCID, InvPage, CR3 write, and so on).",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
}
|
||||||
|
]
|
164
lib/libpmcstat/pmu-events/arch/x86/broadwellx/bdx-metrics.json
Normal file
164
lib/libpmcstat/pmu-events/arch/x86/broadwellx/bdx-metrics.json
Normal file
@ -0,0 +1,164 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"BriefDescription": "Instructions Per Cycle (per logical thread)",
|
||||||
|
"MetricExpr": "INST_RETIRED.ANY / CPU_CLK_UNHALTED.THREAD",
|
||||||
|
"MetricGroup": "TopDownL1",
|
||||||
|
"MetricName": "IPC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Uops Per Instruction",
|
||||||
|
"MetricExpr": "UOPS_RETIRED.RETIRE_SLOTS / INST_RETIRED.ANY",
|
||||||
|
"MetricGroup": "Pipeline",
|
||||||
|
"MetricName": "UPI"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Rough Estimation of fraction of fetched lines bytes that were likely consumed by program instructions",
|
||||||
|
"MetricExpr": "min( 1 , IDQ.MITE_UOPS / ( (UOPS_RETIRED.RETIRE_SLOTS / INST_RETIRED.ANY) * 16 * ( ICACHE.HIT + ICACHE.MISSES ) / 4.0 ) )",
|
||||||
|
"MetricGroup": "Frontend",
|
||||||
|
"MetricName": "IFetch_Line_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Fraction of Uops delivered by the DSB (aka Decoded Icache; or Uop Cache)",
|
||||||
|
"MetricExpr": "IDQ.DSB_UOPS / ( IDQ.DSB_UOPS + LSD.UOPS + IDQ.MITE_UOPS + IDQ.MS_UOPS )",
|
||||||
|
"MetricGroup": "DSB; Frontend_Bandwidth",
|
||||||
|
"MetricName": "DSB_Coverage"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Cycles Per Instruction (threaded)",
|
||||||
|
"MetricExpr": "1 / (INST_RETIRED.ANY / cycles)",
|
||||||
|
"MetricGroup": "Pipeline;Summary",
|
||||||
|
"MetricName": "CPI"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Per-thread actual clocks when the logical processor is active. This is called 'Clockticks' in VTune.",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.THREAD",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "CLKS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Total issue-pipeline slots",
|
||||||
|
"MetricExpr": "4*(( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else cycles)",
|
||||||
|
"MetricGroup": "TopDownL1",
|
||||||
|
"MetricName": "SLOTS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Total number of retired Instructions",
|
||||||
|
"MetricExpr": "INST_RETIRED.ANY",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "Instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Instructions Per Cycle (per physical core)",
|
||||||
|
"MetricExpr": "INST_RETIRED.ANY / (( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else cycles)",
|
||||||
|
"MetricGroup": "SMT",
|
||||||
|
"MetricName": "CoreIPC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Instruction-Level-Parallelism (average number of uops executed when there is at least 1 uop executed)",
|
||||||
|
"MetricExpr": "UOPS_EXECUTED.THREAD / (( cpu@UOPS_EXECUTED.CORE\\,cmask\\=1@ / 2) if #SMT_on else UOPS_EXECUTED.CYCLES_GE_1_UOP_EXEC)",
|
||||||
|
"MetricGroup": "Pipeline;Ports_Utilization",
|
||||||
|
"MetricName": "ILP"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Average Branch Address Clear Cost (fraction of cycles)",
|
||||||
|
"MetricExpr": "2* (( RS_EVENTS.EMPTY_CYCLES - ICACHE.IFDATA_STALL - (( 14 * ITLB_MISSES.STLB_HIT + cpu@ITLB_MISSES.WALK_DURATION\\,cmask\\=1@ + 7* ITLB_MISSES.WALK_COMPLETED )) ) / RS_EVENTS.EMPTY_END)",
|
||||||
|
"MetricGroup": "Unknown_Branches",
|
||||||
|
"MetricName": "BAClear_Cost"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Core actual clocks when any thread is active on the physical core",
|
||||||
|
"MetricExpr": "( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else CPU_CLK_UNHALTED.THREAD",
|
||||||
|
"MetricGroup": "SMT",
|
||||||
|
"MetricName": "CORE_CLKS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Actual Average Latency for L1 data-cache miss demand loads",
|
||||||
|
"MetricExpr": "L1D_PEND_MISS.PENDING / ( MEM_LOAD_UOPS_RETIRED.L1_MISS + mem_load_uops_retired.hit_lfb )",
|
||||||
|
"MetricGroup": "Memory_Bound;Memory_Lat",
|
||||||
|
"MetricName": "Load_Miss_Real_Latency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Memory-Level-Parallelism (average number of L1 miss demand load when there is at least 1 such miss)",
|
||||||
|
"MetricExpr": "L1D_PEND_MISS.PENDING / (( cpu@l1d_pend_miss.pending_cycles\\,any\\=1@ / 2) if #SMT_on else L1D_PEND_MISS.PENDING_CYCLES)",
|
||||||
|
"MetricGroup": "Memory_Bound;Memory_BW",
|
||||||
|
"MetricName": "MLP"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Utilization of the core's Page Walker(s) serving STLB misses triggered by instruction/Load/Store accesses",
|
||||||
|
"MetricExpr": "( ITLB_MISSES.WALK_DURATION + DTLB_LOAD_MISSES.WALK_DURATION + DTLB_STORE_MISSES.WALK_DURATION + 7*(DTLB_STORE_MISSES.WALK_COMPLETED+DTLB_LOAD_MISSES.WALK_COMPLETED+ITLB_MISSES.WALK_COMPLETED) ) / (2*(( CPU_CLK_UNHALTED.THREAD_ANY / 2 ) if #SMT_on else cycles))",
|
||||||
|
"MetricGroup": "TLB",
|
||||||
|
"MetricName": "Page_Walks_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Average CPU Utilization",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.REF_TSC / msr@tsc@",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "CPU_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Giga Floating Point Operations Per Second",
|
||||||
|
"MetricExpr": "(( 1*( FP_ARITH_INST_RETIRED.SCALAR_SINGLE + FP_ARITH_INST_RETIRED.SCALAR_DOUBLE ) + 2* FP_ARITH_INST_RETIRED.128B_PACKED_DOUBLE + 4*( FP_ARITH_INST_RETIRED.128B_PACKED_SINGLE + FP_ARITH_INST_RETIRED.256B_PACKED_DOUBLE ) + 8* FP_ARITH_INST_RETIRED.256B_PACKED_SINGLE )) / 1000000000 / duration_time",
|
||||||
|
"MetricGroup": "FLOPS;Summary",
|
||||||
|
"MetricName": "GFLOPs"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Average Frequency Utilization relative nominal frequency",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.THREAD / CPU_CLK_UNHALTED.REF_TSC",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "Turbo_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Fraction of cycles where both hardware threads were active",
|
||||||
|
"MetricExpr": "1 - CPU_CLK_THREAD_UNHALTED.ONE_THREAD_ACTIVE / ( CPU_CLK_THREAD_UNHALTED.REF_XCLK_ANY / 2 ) if #SMT_on else 0",
|
||||||
|
"MetricGroup": "SMT;Summary",
|
||||||
|
"MetricName": "SMT_2T_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Fraction of cycles spent in Kernel mode",
|
||||||
|
"MetricExpr": "CPU_CLK_UNHALTED.REF_TSC:u / CPU_CLK_UNHALTED.REF_TSC",
|
||||||
|
"MetricGroup": "Summary",
|
||||||
|
"MetricName": "Kernel_Utilization"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C3 residency percent per core",
|
||||||
|
"MetricExpr": "(cstate_core@c3\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C3_Core_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C6 residency percent per core",
|
||||||
|
"MetricExpr": "(cstate_core@c6\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C6_Core_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C7 residency percent per core",
|
||||||
|
"MetricExpr": "(cstate_core@c7\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C7_Core_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C2 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c2\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C2_Pkg_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C3 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c3\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C3_Pkg_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C6 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c6\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C6_Pkg_Residency"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "C7 residency percent per package",
|
||||||
|
"MetricExpr": "(cstate_pkg@c7\\-residency@ / msr@tsc@) * 100",
|
||||||
|
"MetricGroup": "Power",
|
||||||
|
"MetricName": "C7_Pkg_Residency"
|
||||||
|
}
|
||||||
|
]
|
965
lib/libpmcstat/pmu-events/arch/x86/broadwellx/cache.json
Normal file
965
lib/libpmcstat/pmu-events/arch/x86/broadwellx/cache.json
Normal file
@ -0,0 +1,965 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x21",
|
||||||
|
"BriefDescription": "Demand Data Read miss L2, no rejects",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.DEMAND_DATA_RD_MISS",
|
||||||
|
"PublicDescription": "This event counts the number of demand Data Read requests that miss L2 cache. Only not rejected loads are counted.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x22",
|
||||||
|
"BriefDescription": "RFO requests that miss L2 cache.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.RFO_MISS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x24",
|
||||||
|
"BriefDescription": "L2 cache misses when fetching instructions.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.CODE_RD_MISS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x27",
|
||||||
|
"BriefDescription": "Demand requests that miss L2 cache.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_DEMAND_MISS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x30",
|
||||||
|
"BriefDescription": "L2 prefetch requests that miss L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.L2_PF_MISS",
|
||||||
|
"PublicDescription": "This event counts the number of requests from the L2 hardware prefetchers that miss L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x3f",
|
||||||
|
"BriefDescription": "All requests that miss L2 cache.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.MISS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"BriefDescription": "Demand Data Read requests that hit L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.DEMAND_DATA_RD_HIT",
|
||||||
|
"PublicDescription": "This event counts the number of demand Data Read requests that hit L2 cache. Only not rejected loads are counted.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"BriefDescription": "RFO requests that hit L2 cache.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.RFO_HIT",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x44",
|
||||||
|
"BriefDescription": "L2 cache hits when fetching instructions, code reads.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.CODE_RD_HIT",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0x50",
|
||||||
|
"BriefDescription": "L2 prefetch requests that hit L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.L2_PF_HIT",
|
||||||
|
"PublicDescription": "This event counts the number of requests from the L2 hardware prefetchers that hit L2 cache. L3 prefetch new types.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xe1",
|
||||||
|
"BriefDescription": "Demand Data Read requests",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_DEMAND_DATA_RD",
|
||||||
|
"PublicDescription": "This event counts the number of demand Data Read requests (including requests from L1D hardware prefetchers). These loads may hit or miss L2 cache. Only non rejected loads are counted.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xe2",
|
||||||
|
"BriefDescription": "RFO requests to L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_RFO",
|
||||||
|
"PublicDescription": "This event counts the total number of RFO (read for ownership) requests to L2 cache. L2 RFO requests include both L1D demand RFO misses as well as L1D RFO prefetches.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xe4",
|
||||||
|
"BriefDescription": "L2 code requests",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_CODE_RD",
|
||||||
|
"PublicDescription": "This event counts the total number of L2 code requests.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xe7",
|
||||||
|
"BriefDescription": "Demand requests to L2 cache.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_DEMAND_REFERENCES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xf8",
|
||||||
|
"BriefDescription": "Requests from L2 hardware prefetchers",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.ALL_PF",
|
||||||
|
"PublicDescription": "This event counts the total number of requests from the L2 hardware prefetchers.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x24",
|
||||||
|
"UMask": "0xff",
|
||||||
|
"BriefDescription": "All L2 requests.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_RQSTS.REFERENCES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x27",
|
||||||
|
"UMask": "0x50",
|
||||||
|
"BriefDescription": "Not rejected writebacks that hit L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_DEMAND_RQSTS.WB_HIT",
|
||||||
|
"PublicDescription": "This event counts the number of WB requests that hit L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"BriefDescription": "Core-originated cacheable demand requests missed L3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "LONGEST_LAT_CACHE.MISS",
|
||||||
|
"PublicDescription": "This event counts core-originated cacheable demand requests that miss the last level cache (LLC). Demand requests include loads, RFOs, and hardware prefetches from L1D, and instruction fetches from IFU.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x2E",
|
||||||
|
"UMask": "0x4f",
|
||||||
|
"BriefDescription": "Core-originated cacheable demand requests that refer to L3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "LONGEST_LAT_CACHE.REFERENCE",
|
||||||
|
"PublicDescription": "This event counts core-originated cacheable demand requests that refer to the last level cache (LLC). Demand requests include loads, RFOs, and hardware prefetches from L1D, and instruction fetches from IFU.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x48",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "L1D miss oustandings duration in cycles",
|
||||||
|
"Counter": "2",
|
||||||
|
"EventName": "L1D_PEND_MISS.PENDING",
|
||||||
|
"PublicDescription": "This event counts duration of L1D miss outstanding, that is each cycle number of Fill Buffers (FB) outstanding required by Demand Reads. FB either is held by demand loads, or it is held by non-demand loads and gets hit at least once by demand. The valid outstanding interval is defined until the FB deallocation by one of the following ways: from FB allocation, if FB is allocated by demand; from the demand Hit FB, if it is allocated by hardware or software prefetch.\nNote: In the L1D, a Demand Read contains cacheable or noncacheable demand loads, including ones causing cache-line splits and reads due to page walks resulted from any request type.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x48",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles with L1D load Misses outstanding.",
|
||||||
|
"Counter": "2",
|
||||||
|
"EventName": "L1D_PEND_MISS.PENDING_CYCLES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts duration of L1D miss outstanding in cycles.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x48",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles with L1D load Misses outstanding from any thread on physical core.",
|
||||||
|
"Counter": "2",
|
||||||
|
"EventName": "L1D_PEND_MISS.PENDING_CYCLES_ANY",
|
||||||
|
"AnyThread": "1",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x48",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Cycles a demand request was blocked due to Fill Buffers inavailability.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L1D_PEND_MISS.FB_FULL",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x51",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "L1D data line replacements",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L1D.REPLACEMENT",
|
||||||
|
"PublicDescription": "This event counts L1D data line replacements including opportunistic replacements, and replacements that require stall-for-replace or block-for-replace.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Offcore outstanding Demand Data Read transactions in uncore queue.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts the number of offcore outstanding Demand Data Read transactions in the super queue (SQ) every cycle. A transaction is considered to be in the Offcore outstanding state between L2 miss and transaction completion sent to requestor. See the corresponding Umask under OFFCORE_REQUESTS.\nNote: A prefetch promoted to Demand is counted from the promotion point.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles when offcore outstanding Demand Data Read transactions are present in SuperQueue (SQ), queue to uncore",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts cycles when offcore outstanding Demand Data Read transactions are present in the super queue (SQ). A transaction is considered to be in the Offcore outstanding state between L2 miss and transaction completion sent to requestor (SQ de-allocation).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles with at least 6 offcore outstanding Demand Data Read transactions in uncore queue.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD_GE_6",
|
||||||
|
"CounterMask": "6",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Offcore outstanding code reads transactions in SuperQueue (SQ), queue to uncore, every cycle",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_CODE_RD",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts the number of offcore outstanding Code Reads transactions in the super queue every cycle. The Offcore outstanding state of the transaction lasts from the L2 miss until the sending transaction completion to requestor (SQ deallocation). See the corresponding Umask under OFFCORE_REQUESTS.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Offcore outstanding RFO store transactions in SuperQueue (SQ), queue to uncore",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_RFO",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts the number of offcore outstanding RFO (store) transactions in the super queue (SQ) every cycle. A transaction is considered to be in the Offcore outstanding state between L2 miss and transaction completion sent to requestor (SQ de-allocation). See corresponding Umask under OFFCORE_REQUESTS.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Offcore outstanding demand rfo reads transactions in SuperQueue (SQ), queue to uncore, every cycle",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_RFO",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts the number of offcore outstanding demand rfo Reads transactions in the super queue every cycle. The Offcore outstanding state of the transaction lasts from the L2 miss until the sending transaction completion to requestor (SQ deallocation). See the corresponding Umask under OFFCORE_REQUESTS.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Offcore outstanding cacheable Core Data Read transactions in SuperQueue (SQ), queue to uncore",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.ALL_DATA_RD",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts the number of offcore outstanding cacheable Core Data Read transactions in the super queue every cycle. A transaction is considered to be in the Offcore outstanding state between L2 miss and transaction completion sent to requestor (SQ de-allocation). See corresponding Umask under OFFCORE_REQUESTS.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x60",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Cycles when offcore outstanding cacheable Core Data Read transactions are present in SuperQueue (SQ), queue to uncore",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DATA_RD",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"Errata": "BDM76",
|
||||||
|
"PublicDescription": "This event counts cycles when offcore outstanding cacheable Core Data Read transactions are present in the super queue. A transaction is considered to be in the Offcore outstanding state between L2 miss and transaction completion sent to requestor (SQ de-allocation). See corresponding Umask under OFFCORE_REQUESTS.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x63",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Cycles when L1D is locked",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "LOCK_CYCLES.CACHE_LOCK_DURATION",
|
||||||
|
"PublicDescription": "This event counts the number of cycles when the L1D is locked. It is a superset of the 0x1 mask (BUS_LOCK_CLOCKS.BUS_LOCK_DURATION).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB0",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Demand Data Read requests sent to uncore",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS.DEMAND_DATA_RD",
|
||||||
|
"PublicDescription": "This event counts the Demand Data Read requests sent to uncore. Use it in conjunction with OFFCORE_REQUESTS_OUTSTANDING to determine average latency in the uncore.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB0",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Cacheable and noncachaeble code read requests",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS.DEMAND_CODE_RD",
|
||||||
|
"PublicDescription": "This event counts both cacheable and noncachaeble code read requests.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB0",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Demand RFO requests including regular RFOs, locks, ItoM",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS.DEMAND_RFO",
|
||||||
|
"PublicDescription": "This event counts the demand RFO (read for ownership) requests including regular RFOs, locks, ItoM.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB0",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Demand and prefetch data reads",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS.ALL_DATA_RD",
|
||||||
|
"PublicDescription": "This event counts the demand and prefetch data reads. All Core Data Reads include cacheable Demands and L2 prefetchers (not L3 prefetchers). Counting also covers reads due to page walks resulted from any request type.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xb2",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Offcore requests buffer cannot take more entries for this thread core.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_REQUESTS_BUFFER.SQ_FULL",
|
||||||
|
"PublicDescription": "This event counts the number of cases when the offcore requests buffer cannot take more entries for the core. This can happen when the superqueue does not contain eligible entries, or when L1D writeback pending FIFO requests is full.\nNote: Writeback pending FIFO has six entries.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x11",
|
||||||
|
"BriefDescription": "Retired load uops that miss the STLB. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.STLB_MISS_LOADS",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts load uops with true STLB miss retired to the architected path. True STLB miss is an uop triggering page walk that gets completed without blocks, and later gets retired. This page walk can end up with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x12",
|
||||||
|
"BriefDescription": "Retired store uops that miss the STLB. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.STLB_MISS_STORES",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts store uops true STLB miss retired to the architected path. True STLB miss is an uop triggering page walk that gets completed without blocks, and later gets retired. This page walk can end up with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"L1_Hit_Indication": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x21",
|
||||||
|
"BriefDescription": "Retired load uops with locked access. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.LOCK_LOADS",
|
||||||
|
"Errata": "BDM35",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts load uops with locked access retired to the architected path.",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x41",
|
||||||
|
"BriefDescription": "Retired load uops that split across a cacheline boundary.(Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.SPLIT_LOADS",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts line-splitted load uops retired to the architected path. A line split is across 64B cache-line which includes a page split (4K).",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x42",
|
||||||
|
"BriefDescription": "Retired store uops that split across a cacheline boundary. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.SPLIT_STORES",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts line-splitted store uops retired to the architected path. A line split is across 64B cache-line which includes a page split (4K).",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"L1_Hit_Indication": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x81",
|
||||||
|
"BriefDescription": "All retired load uops. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.ALL_LOADS",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts load uops retired to the architected path with a filter on bits 0 and 1 applied.\nNote: This event ?ounts AVX-256bit load/store double-pump memory uops as a single uop at retirement. This event also counts SW prefetches.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"UMask": "0x82",
|
||||||
|
"BriefDescription": "Retired store uops that split across a cacheline boundary. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.ALL_STORES",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts store uops retired to the architected path with a filter on bits 0 and 1 applied.\nNote: This event ?ounts AVX-256bit load/store double-pump memory uops as a single uop at retirement.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"L1_Hit_Indication": "1",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Retired load uops with L1 cache hits as data sources. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L1_HIT",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data source were hits in the nearest-level (L1) cache.\nNote: Only two data-sources of L1/FB are applicable for AVX-256bit even though the corresponding AVX load could be serviced by a deeper level in the memory hierarchy. Data source is reported for the Low-half load. This event also counts SW prefetches independent of the actual data source.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Retired load uops with L2 cache hits as data sources. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L2_HIT",
|
||||||
|
"Errata": "BDM35",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were hits in the mid-level (L2) cache.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Hit in last-level (L3) cache. Excludes Unknown data-source. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L3_HIT",
|
||||||
|
"Errata": "BDM100",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were data hits in the last-level (L3) cache without snoops required.",
|
||||||
|
"SampleAfterValue": "50021",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Retired load uops misses in L1 cache as data sources. Uses PEBS.",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L1_MISS",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were misses in the nearest-level (L1) cache. Counting excludes unknown and UC data source.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Retired load uops with L2 cache misses as data sources. Uses PEBS.",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L2_MISS",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were misses in the mid-level (L2) cache. Counting excludes unknown and UC data source.",
|
||||||
|
"SampleAfterValue": "50021",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Miss in last-level (L3) cache. Excludes Unknown data-source. (Precise Event - PEBS).",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.L3_MISS",
|
||||||
|
"Errata": "BDM100, BDE70",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Retired load uops which data sources were load uops missed L1 but hit FB due to preceding miss to the same cache line with data not ready. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_RETIRED.HIT_LFB",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were load uops missed L1 but hit a fill buffer due to a preceding miss to the same cache line with the data not ready.\nNote: Only two data-sources of L1/FB are applicable for AVX-256bit even though the corresponding AVX load could be serviced by a deeper level in the memory hierarchy. Data source is reported for the Low-half load.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD2",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Retired load uops which data sources were L3 hit and cross-core snoop missed in on-pkg core cache. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_HIT_RETIRED.XSNP_MISS",
|
||||||
|
"Errata": "BDM100",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were L3 Hit and a cross-core snoop missed in the on-pkg core cache.",
|
||||||
|
"SampleAfterValue": "20011",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD2",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Retired load uops which data sources were L3 and cross-core snoop hits in on-pkg core cache. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_HIT_RETIRED.XSNP_HIT",
|
||||||
|
"Errata": "BDM100",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were L3 hit and a cross-core snoop hit in the on-pkg core cache.",
|
||||||
|
"SampleAfterValue": "20011",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD2",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Retired load uops which data sources were HitM responses from shared L3. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_HIT_RETIRED.XSNP_HITM",
|
||||||
|
"Errata": "BDM100",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were HitM responses from a core on same socket (shared L3).",
|
||||||
|
"SampleAfterValue": "20011",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD2",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Retired load uops which data sources were hits in L3 without snoops required. (Precise Event - PEBS)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_HIT_RETIRED.XSNP_NONE",
|
||||||
|
"Errata": "BDM100",
|
||||||
|
"PublicDescription": "This is a precise version (that is, uses PEBS) of the event that counts retired load uops which data sources were hits in the last-level (L3) cache without snoops required.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_MISS_RETIRED.LOCAL_DRAM",
|
||||||
|
"Errata": "BDE70, BDM100",
|
||||||
|
"PublicDescription": "This event counts retired load uops where the data came from local DRAM. This does not include hardware prefetches. This is a precise event.",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Retired load uop whose Data Source was: remote DRAM either Snoop not needed or Snoop Miss (RspI) (Precise Event)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_MISS_RETIRED.REMOTE_DRAM",
|
||||||
|
"Errata": "BDE70",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Retired load uop whose Data Source was: Remote cache HITM (Precise Event)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_MISS_RETIRED.REMOTE_HITM",
|
||||||
|
"Errata": "BDE70",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xD3",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Retired load uop whose Data Source was: forwarded from remote cache (Precise Event)",
|
||||||
|
"Data_LA": "1",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MEM_LOAD_UOPS_L3_MISS_RETIRED.REMOTE_FWD",
|
||||||
|
"Errata": "BDE70",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Demand Data Read requests that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.DEMAND_DATA_RD",
|
||||||
|
"PublicDescription": "This event counts Demand Data Read requests that access L2 cache, including rejects.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "RFO requests that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.RFO",
|
||||||
|
"PublicDescription": "This event counts Read for Ownership (RFO) requests that access L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "L2 cache accesses when fetching instructions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.CODE_RD",
|
||||||
|
"PublicDescription": "This event counts the number of L2 cache accesses when fetching instructions.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "L2 or L3 HW prefetches that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.ALL_PF",
|
||||||
|
"PublicDescription": "This event counts L2 or L3 HW prefetches that access L2 cache including rejects.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "L1D writebacks that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.L1D_WB",
|
||||||
|
"PublicDescription": "This event counts L1D writebacks that access L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "L2 fill requests that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.L2_FILL",
|
||||||
|
"PublicDescription": "This event counts L2 fill requests that access L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "L2 writebacks that access L2 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.L2_WB",
|
||||||
|
"PublicDescription": "This event counts L2 writebacks that access L2 cache.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF0",
|
||||||
|
"UMask": "0x80",
|
||||||
|
"BriefDescription": "Transactions accessing L2 pipe",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_TRANS.ALL_REQUESTS",
|
||||||
|
"PublicDescription": "This event counts transactions that access the L2 pipe including snoops, pagewalks, and so on.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "L2 cache lines in I state filling L2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_LINES_IN.I",
|
||||||
|
"PublicDescription": "This event counts the number of L2 cache lines in the Invalidate state filling the L2. Counting does not cover rejects.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "L2 cache lines in S state filling L2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_LINES_IN.S",
|
||||||
|
"PublicDescription": "This event counts the number of L2 cache lines in the Shared state filling the L2. Counting does not cover rejects.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "L2 cache lines in E state filling L2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_LINES_IN.E",
|
||||||
|
"PublicDescription": "This event counts the number of L2 cache lines in the Exclusive state filling the L2. Counting does not cover rejects.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF1",
|
||||||
|
"UMask": "0x7",
|
||||||
|
"BriefDescription": "L2 cache lines filling L2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_LINES_IN.ALL",
|
||||||
|
"PublicDescription": "This event counts the number of L2 cache lines filling the L2. Counting does not cover rejects.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xF2",
|
||||||
|
"UMask": "0x5",
|
||||||
|
"BriefDescription": "Clean L2 cache lines evicted by demand.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "L2_LINES_OUT.DEMAND_CLEAN",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xf4",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Split locks in SQ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "SQ_MISC.SPLIT_LOCK",
|
||||||
|
"PublicDescription": "This event counts the number of split locks in the super queue.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all requests that hit in the L3",
|
||||||
|
"MSRValue": "0x3f803c8fff",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_REQUESTS.LLC_HIT.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all requests that hit in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all data/code/rfo reads (demand & prefetch) that hit in the L3 and the snoop to one of the sibling cores hits the line in M state and the line is forwarded",
|
||||||
|
"MSRValue": "0x10003c07f7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_READS.LLC_HIT.HITM_OTHER_CORE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all data/code/rfo reads (demand & prefetch) that hit in the L3 and the snoop to one of the sibling cores hits the line in M state and the line is forwarded Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all data/code/rfo reads (demand & prefetch) that hit in the L3 and the snoops to sibling cores hit in either E/S state and the line is not forwarded",
|
||||||
|
"MSRValue": "0x04003c07f7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_READS.LLC_HIT.HIT_OTHER_CORE_NO_FWD",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all data/code/rfo reads (demand & prefetch) that hit in the L3 and the snoops to sibling cores hit in either E/S state and the line is not forwarded Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch code reads that hit in the L3 and the snoops to sibling cores hit in either E/S state and the line is not forwarded",
|
||||||
|
"MSRValue": "0x04003c0244",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_CODE_RD.LLC_HIT.HIT_OTHER_CORE_NO_FWD",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch code reads that hit in the L3 and the snoops to sibling cores hit in either E/S state and the line is not forwarded Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch RFOs that hit in the L3 and the snoop to one of the sibling cores hits the line in M state and the line is forwarded",
|
||||||
|
"MSRValue": "0x10003c0122",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_RFO.LLC_HIT.HITM_OTHER_CORE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch RFOs that hit in the L3 and the snoop to one of the sibling cores hits the line in M state and the line is forwarded Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch RFOs that hit in the L3 and the snoops to sibling cores hit in either E/S state and the line is not forwarded",
|
||||||
|
"MSRValue": "0x04003c0122",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_RFO.LLC_HIT.HIT_OTHER_CORE_NO_FWD",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch RFOs that hit in the L3 and the snoops to sibling cores hit in either E/S state and the line is not forwarded Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch data reads that hit in the L3 and the snoop to one of the sibling cores hits the line in M state and the line is forwarded",
|
||||||
|
"MSRValue": "0x10003c0091",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_DATA_RD.LLC_HIT.HITM_OTHER_CORE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch data reads that hit in the L3 and the snoop to one of the sibling cores hits the line in M state and the line is forwarded Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch data reads that hit in the L3 and the snoops to sibling cores hit in either E/S state and the line is not forwarded",
|
||||||
|
"MSRValue": "0x04003c0091",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_DATA_RD.LLC_HIT.HIT_OTHER_CORE_NO_FWD",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch data reads that hit in the L3 and the snoops to sibling cores hit in either E/S state and the line is not forwarded Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts prefetch (that bring data to LLC only) code reads that hit in the L3",
|
||||||
|
"MSRValue": "0x3f803c0200",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.PF_LLC_CODE_RD.LLC_HIT.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts prefetch (that bring data to LLC only) code reads that hit in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all prefetch (that bring data to LLC only) RFOs that hit in the L3",
|
||||||
|
"MSRValue": "0x3f803c0100",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.PF_LLC_RFO.LLC_HIT.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all prefetch (that bring data to LLC only) RFOs that hit in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand data writes (RFOs) that hit in the L3 and the snoop to one of the sibling cores hits the line in M state and the line is forwarded",
|
||||||
|
"MSRValue": "0x10003c0002",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.DEMAND_RFO.LLC_HIT.HITM_OTHER_CORE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand data writes (RFOs) that hit in the L3 and the snoop to one of the sibling cores hits the line in M state and the line is forwarded Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand data writes (RFOs) that hit in the L3",
|
||||||
|
"MSRValue": "0x3f803c0002",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.DEMAND_RFO.LLC_HIT.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand data writes (RFOs) that hit in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,165 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0xC1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of transitions from AVX-256 to legacy SSE when penalty applicable.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OTHER_ASSISTS.AVX_TO_SSE",
|
||||||
|
"Errata": "BDM30",
|
||||||
|
"PublicDescription": "This event counts the number of transitions from AVX-256 to legacy SSE when penalty is applicable.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC1",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of transitions from SSE to AVX-256 when penalty applicable.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OTHER_ASSISTS.SSE_TO_AVX",
|
||||||
|
"Errata": "BDM30",
|
||||||
|
"PublicDescription": "This event counts the number of transitions from legacy SSE to AVX-256 when penalty is applicable.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational scalar double precision floating-point instructions retired. Each count represents 1 computation. Applies to SSE* and AVX* scalar double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SCALAR_DOUBLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational scalar single precision floating-point instructions retired. Each count represents 1 computation. Applies to SSE* and AVX* scalar single precision floating-point instructions: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SCALAR_SINGLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational scalar floating-point instructions retired. Applies to SSE* and AVX* scalar, double and single precision floating-point: ADD SUB MUL DIV MIN MAX RSQRT RCP SQRT FM(N)ADD/SUB. FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SCALAR",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 128-bit packed double precision floating-point instructions retired. Each count represents 2 computations. Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_DOUBLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 128-bit packed single precision floating-point instructions retired. Each count represents 4 computations. Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.128B_PACKED_SINGLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 256-bit packed double precision floating-point instructions retired. Each count represents 4 computations. Applies to SSE* and AVX* packed double precision floating-point instructions: ADD SUB MUL DIV MIN MAX SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_DOUBLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x15",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational double precision floating-point instructions retired. Applies to SSE* and AVX*scalar, double and single precision floating-point: ADD SUB MUL DIV MIN MAX SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element. ?.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.DOUBLE",
|
||||||
|
"SampleAfterValue": "2000006",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc7",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational 256-bit packed single precision floating-point instructions retired. Each count represents 8 computations. Applies to SSE* and AVX* packed single precision floating-point instructions: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.256B_PACKED_SINGLE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x2a",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational single precision floating-point instructions retired. Applies to SSE* and AVX*scalar, double and single precision floating-point: ADD SUB MUL DIV MIN MAX RCP RSQRT SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element. ?.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.SINGLE",
|
||||||
|
"SampleAfterValue": "2000005",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC7",
|
||||||
|
"UMask": "0x3c",
|
||||||
|
"BriefDescription": "Number of SSE/AVX computational packed floating-point instructions retired. Applies to SSE* and AVX*, packed, double and single precision floating-point: ADD SUB MUL DIV MIN MAX RSQRT RCP SQRT DPP FM(N)ADD/SUB. DPP and FM(N)ADD/SUB instructions count twice as they perform multiple calculations per element.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ARITH_INST_RETIRED.PACKED",
|
||||||
|
"SampleAfterValue": "2000004",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of X87 assists due to output value.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ASSIST.X87_OUTPUT",
|
||||||
|
"PublicDescription": "This event counts the number of x87 floating point (FP) micro-code assist (numeric overflow/underflow, inexact result) when the output value (destination register) is invalid.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Number of X87 assists due to input value.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ASSIST.X87_INPUT",
|
||||||
|
"PublicDescription": "This event counts x87 floating point (FP) micro-code assist (invalid operation, denormal operand, SNaN operand) when the input value (one of the source operands to an FP instruction) is invalid.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of SIMD FP assists due to Output values",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ASSIST.SIMD_OUTPUT",
|
||||||
|
"PublicDescription": "This event counts the number of SSE* floating point (FP) micro-code assist (numeric overflow/underflow) when the output value (destination register) is invalid. Counting covers only cases involving penalties that require micro-code assist intervention.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of SIMD FP assists due to input values",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ASSIST.SIMD_INPUT",
|
||||||
|
"PublicDescription": "This event counts any input SSE* FP assist - invalid operation, denormal operand, dividing by zero, SNaN operand. Counting includes only cases involving penalties that required micro-code assist intervention.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"UMask": "0x1e",
|
||||||
|
"BriefDescription": "Cycles with any input/output SSE or FP assist",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "FP_ASSIST.ANY",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts cycles with any input and output SSE or x87 FP assist. If an input and output assist are detected on the same cycle the event increments by 1.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
}
|
||||||
|
]
|
286
lib/libpmcstat/pmu-events/arch/x86/broadwellx/frontend.json
Normal file
286
lib/libpmcstat/pmu-events/arch/x86/broadwellx/frontend.json
Normal file
@ -0,0 +1,286 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Instruction Decode Queue (IDQ) empty cycles",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.EMPTY",
|
||||||
|
"PublicDescription": "This counts the number of cycles that the instruction decoder queue is empty and can indicate that the application may be bound in the front end. It does not determine whether there are uops being delivered to the Alloc stage since uops can be delivered by bypass skipping the Instruction Decode Queue (IDQ) when it is empty.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MITE_UOPS",
|
||||||
|
"PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from MITE path",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MITE_CYCLES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.DSB_UOPS",
|
||||||
|
"PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) from Decode Stream Buffer (DSB) path",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.DSB_CYCLES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_DSB_UOPS",
|
||||||
|
"PublicDescription": "This event counts the number of uops initiated by Decode Stream Buffer (DSB) that are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Cycles when uops initiated by Decode Stream Buffer (DSB) are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_DSB_CYCLES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts cycles during which uops initiated by Decode Stream Buffer (DSB) are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EdgeDetect": "1",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Deliveries to Instruction Decode Queue (IDQ) initiated by Decode Stream Buffer (DSB) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_DSB_OCCUR",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts the number of deliveries to Instruction Decode Queue (IDQ) initiated by Decode Stream Buffer (DSB) while the Microcode Sequencer (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x18",
|
||||||
|
"BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering 4 Uops",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.ALL_DSB_CYCLES_4_UOPS",
|
||||||
|
"CounterMask": "4",
|
||||||
|
"PublicDescription": "This event counts the number of cycles 4 uops were delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x18",
|
||||||
|
"BriefDescription": "Cycles Decode Stream Buffer (DSB) is delivering any Uop",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.ALL_DSB_CYCLES_ANY_UOPS",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts the number of cycles uops were delivered to Instruction Decode Queue (IDQ) from the Decode Stream Buffer (DSB) path. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_MITE_UOPS",
|
||||||
|
"PublicDescription": "This event counts the number of uops initiated by MITE and delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x24",
|
||||||
|
"BriefDescription": "Cycles MITE is delivering 4 Uops",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.ALL_MITE_CYCLES_4_UOPS",
|
||||||
|
"CounterMask": "4",
|
||||||
|
"PublicDescription": "This event counts the number of cycles 4 uops were delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x24",
|
||||||
|
"BriefDescription": "Cycles MITE is delivering any Uop",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.ALL_MITE_CYCLES_ANY_UOPS",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts the number of cycles uops were delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x30",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_UOPS",
|
||||||
|
"PublicDescription": "This event counts the total number of uops delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ. Uops maybe initiated by Decode Stream Buffer (DSB) or MITE.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x30",
|
||||||
|
"BriefDescription": "Cycles when uops are being delivered to Instruction Decode Queue (IDQ) while Microcode Sequenser (MS) is busy",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_CYCLES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts cycles during which uops are being delivered to Instruction Decode Queue (IDQ) while the Microcode Sequenser (MS) is busy. Counting includes uops that may bypass the IDQ. Uops maybe initiated by Decode Stream Buffer (DSB) or MITE.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EdgeDetect": "1",
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x30",
|
||||||
|
"BriefDescription": "Number of switches from DSB (Decode Stream Buffer) or MITE (legacy decode pipeline) to the Microcode Sequencer.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MS_SWITCHES",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x79",
|
||||||
|
"UMask": "0x3c",
|
||||||
|
"BriefDescription": "Uops delivered to Instruction Decode Queue (IDQ) from MITE path",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ.MITE_ALL_UOPS",
|
||||||
|
"PublicDescription": "This event counts the number of uops delivered to Instruction Decode Queue (IDQ) from the MITE path. Counting includes uops that may bypass the IDQ. This also means that uops are not being delivered from the Decode Stream Buffer (DSB).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of Instruction Cache, Streaming Buffer and Victim Cache Reads. both cacheable and noncacheable, including UC fetches",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ICACHE.HIT",
|
||||||
|
"PublicDescription": "This event counts the number of both cacheable and noncacheable Instruction Cache, Streaming Buffer and Victim Cache Reads including UC fetches.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of Instruction Cache, Streaming Buffer and Victim Cache Misses. Includes Uncacheable accesses.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ICACHE.MISSES",
|
||||||
|
"PublicDescription": "This event counts the number of instruction cache, streaming buffer and victim cache misses. Counting includes UC accesses.",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Cycles where a code fetch is stalled due to L1 instruction-cache miss.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ICACHE.IFDATA_STALL",
|
||||||
|
"PublicDescription": "This event counts cycles during which the demand fetch waits for data (wfdM104H) from L2 or iSB (opportunistic hit).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Uops not delivered to Resource Allocation Table (RAT) per thread when backend of the machine is not stalled",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CORE",
|
||||||
|
"PublicDescription": "This event counts the number of uops not delivered to Resource Allocation Table (RAT) per thread adding 4 x when Resource Allocation Table (RAT) is not stalled and Instruction Decode Queue (IDQ) delivers x uops to Resource Allocation Table (RAT) (where x belongs to {0,1,2,3}). Counting does not cover cases when:\n a. IDQ-Resource Allocation Table (RAT) pipe serves the other thread;\n b. Resource Allocation Table (RAT) is stalled for the thread (including uop drops and clear BE conditions); \n c. Instruction Decode Queue (IDQ) delivers four uops.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles per thread when 4 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_0_UOPS_DELIV.CORE",
|
||||||
|
"CounterMask": "4",
|
||||||
|
"PublicDescription": "This event counts, on the per-thread basis, cycles when no uops are delivered to Resource Allocation Table (RAT). IDQ_Uops_Not_Delivered.core =4.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles per thread when 3 or more uops are not delivered to Resource Allocation Table (RAT) when backend of the machine is not stalled",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_1_UOP_DELIV.CORE",
|
||||||
|
"CounterMask": "3",
|
||||||
|
"PublicDescription": "This event counts, on the per-thread basis, cycles when less than 1 uop is delivered to Resource Allocation Table (RAT). IDQ_Uops_Not_Delivered.core >=3.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles with less than 2 uops delivered by the front end.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_2_UOP_DELIV.CORE",
|
||||||
|
"CounterMask": "2",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles with less than 3 uops delivered by the front end.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_LE_3_UOP_DELIV.CORE",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Invert": "1",
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts cycles FE delivered 4 uops or Resource Allocation Table (RAT) was stalling FE.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "IDQ_UOPS_NOT_DELIVERED.CYCLES_FE_WAS_OK",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xAB",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DSB2MITE_SWITCHES.PENALTY_CYCLES",
|
||||||
|
"PublicDescription": "This event counts Decode Stream Buffer (DSB)-to-MITE switch true penalty cycles. These cycles do not include uops routed through because of the switch itself, for example, when Instruction Decode Queue (IDQ) pre-allocation is unavailable, or Instruction Decode Queue (IDQ) is full. SBD-to-MITE switch true penalty cycles happen after the merge mux (MM) receives Decode Stream Buffer (DSB) Sync-indication until receiving the first MITE uop. \nMM is placed before Instruction Decode Queue (IDQ) to merge uops being fed from the MITE and Decode Stream Buffer (DSB) paths. Decode Stream Buffer (DSB) inserts the Sync-indication whenever a Decode Stream Buffer (DSB)-to-MITE switch occurs.\nPenalty: A Decode Stream Buffer (DSB) hit followed by a Decode Stream Buffer (DSB) miss can cost up to six cycles in which no uops are delivered to the IDQ. Most often, such switches from the Decode Stream Buffer (DSB) to the legacy pipeline cost 02 cycles.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
}
|
||||||
|
]
|
679
lib/libpmcstat/pmu-events/arch/x86/broadwellx/memory.json
Normal file
679
lib/libpmcstat/pmu-events/arch/x86/broadwellx/memory.json
Normal file
@ -0,0 +1,679 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x05",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Speculative cache line split load uops dispatched to L1 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.LOADS",
|
||||||
|
"PublicDescription": "This event counts speculative cache-line split load uops dispatched to the L1 cache.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x05",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Speculative cache line split STA uops dispatched to L1 cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.STORES",
|
||||||
|
"PublicDescription": "This event counts speculative cache line split store-address (STA) uops dispatched to the L1 cache.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of times a TSX line had a cache conflict",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_CONFLICT",
|
||||||
|
"PublicDescription": "Number of times a TSX line had a cache conflict.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of times a TSX Abort was triggered due to an evicted line caused by a transaction overflow",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_CAPACITY_WRITE",
|
||||||
|
"PublicDescription": "Number of times a TSX Abort was triggered due to an evicted line caused by a transaction overflow.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Number of times a TSX Abort was triggered due to a non-release/commit store to lock",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_HLE_STORE_TO_ELIDED_LOCK",
|
||||||
|
"PublicDescription": "Number of times a TSX Abort was triggered due to a non-release/commit store to lock.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of times a TSX Abort was triggered due to commit but Lock Buffer not empty",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_HLE_ELISION_BUFFER_NOT_EMPTY",
|
||||||
|
"PublicDescription": "Number of times a TSX Abort was triggered due to commit but Lock Buffer not empty.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of times a TSX Abort was triggered due to release/commit but data and address mismatch",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_HLE_ELISION_BUFFER_MISMATCH",
|
||||||
|
"PublicDescription": "Number of times a TSX Abort was triggered due to release/commit but data and address mismatch.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Number of times a TSX Abort was triggered due to attempting an unsupported alignment from Lock Buffer",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.ABORT_HLE_ELISION_BUFFER_UNSUPPORTED_ALIGNMENT",
|
||||||
|
"PublicDescription": "Number of times a TSX Abort was triggered due to attempting an unsupported alignment from Lock Buffer.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x54",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Number of times we could not allocate Lock Buffer",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_MEM.HLE_ELISION_BUFFER_FULL",
|
||||||
|
"PublicDescription": "Number of times we could not allocate Lock Buffer.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5d",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts the number of times a class of instructions that may cause a transactional abort was executed. Since this is the count of execution, it may not always cause a transactional abort.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_EXEC.MISC1",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5d",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Counts the number of times a class of instructions (e.g., vzeroupper) that may cause a transactional abort was executed inside a transactional region",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_EXEC.MISC2",
|
||||||
|
"PublicDescription": "Unfriendly TSX abort triggered by a vzeroupper instruction.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5d",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Counts the number of times an instruction execution caused the transactional nest count supported to be exceeded",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_EXEC.MISC3",
|
||||||
|
"PublicDescription": "Unfriendly TSX abort triggered by a nest count that is too deep.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5d",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Counts the number of times a XBEGIN instruction was executed inside an HLE transactional region.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_EXEC.MISC4",
|
||||||
|
"PublicDescription": "RTM region detected inside HLE.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5d",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Counts the number of times an HLE XACQUIRE instruction was executed inside an RTM transactional region.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TX_EXEC.MISC5",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xC3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Counts the number of machine clears due to memory order conflicts.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "MACHINE_CLEARS.MEMORY_ORDERING",
|
||||||
|
"PublicDescription": "This event counts the number of memory ordering Machine Clears detected. Memory Ordering Machine Clears can result from one of the following:\n1. memory disambiguation,\n2. external snoop, or\n3. cross SMT-HW-thread snoop (stores) hitting load buffer.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of times we entered an HLE region; does not count nested transactions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.START",
|
||||||
|
"PublicDescription": "Number of times we entered an HLE region\n does not count nested transactions.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of times HLE commit succeeded",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.COMMIT",
|
||||||
|
"PublicDescription": "Number of times HLE commit succeeded.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Number of times HLE abort was triggered (PEBS)",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED",
|
||||||
|
"PublicDescription": "Number of times HLE abort was triggered (PEBS).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of times an HLE execution aborted due to various memory events (e.g., read/write capacity and conflicts).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED_MISC1",
|
||||||
|
"PublicDescription": "Number of times an HLE abort was attributed to a Memory condition (See TSX_Memory event for additional details).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of times an HLE execution aborted due to uncommon conditions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED_MISC2",
|
||||||
|
"PublicDescription": "Number of times the TSX watchdog signaled an HLE abort.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Number of times an HLE execution aborted due to HLE-unfriendly instructions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED_MISC3",
|
||||||
|
"PublicDescription": "Number of times a disallowed operation caused an HLE abort.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Number of times an HLE execution aborted due to incompatible memory type",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED_MISC4",
|
||||||
|
"PublicDescription": "Number of times HLE caused a fault.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc8",
|
||||||
|
"UMask": "0x80",
|
||||||
|
"BriefDescription": "Number of times an HLE execution aborted due to none of the previous 4 categories (e.g. interrupts)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "HLE_RETIRED.ABORTED_MISC5",
|
||||||
|
"PublicDescription": "Number of times HLE aborted and was not due to the abort conditions in subevents 3-6.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of times we entered an RTM region; does not count nested transactions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.START",
|
||||||
|
"PublicDescription": "Number of times we entered an RTM region\n does not count nested transactions.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Number of times RTM commit succeeded",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.COMMIT",
|
||||||
|
"PublicDescription": "Number of times RTM commit succeeded.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Number of times RTM abort was triggered (PEBS)",
|
||||||
|
"PEBS": "1",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED",
|
||||||
|
"PublicDescription": "Number of times RTM abort was triggered (PEBS).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Number of times an RTM execution aborted due to various memory events (e.g. read/write capacity and conflicts)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED_MISC1",
|
||||||
|
"PublicDescription": "Number of times an RTM abort was attributed to a Memory condition (See TSX_Memory event for additional details).",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Number of times an RTM execution aborted due to various memory events (e.g., read/write capacity and conflicts).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED_MISC2",
|
||||||
|
"PublicDescription": "Number of times the TSX watchdog signaled an RTM abort.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Number of times an RTM execution aborted due to HLE-unfriendly instructions",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED_MISC3",
|
||||||
|
"PublicDescription": "Number of times a disallowed operation caused an RTM abort.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Number of times an RTM execution aborted due to incompatible memory type",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED_MISC4",
|
||||||
|
"PublicDescription": "Number of times a RTM caused a fault.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xc9",
|
||||||
|
"UMask": "0x80",
|
||||||
|
"BriefDescription": "Number of times an RTM execution aborted due to none of the previous 4 categories (e.g. interrupt)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "RTM_RETIRED.ABORTED_MISC5",
|
||||||
|
"PublicDescription": "Number of times RTM aborted and was not due to the abort conditions in subevents 3-6.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 4",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x4",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_4",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above four.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 8",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x8",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_8",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above eight.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "50021",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 16",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x10",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_16",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 16.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "20011",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 32",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x20",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_32",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 32.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 64",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x40",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_64",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 64.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "2003",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 128",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x80",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_128",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 128.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "1009",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 256",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x100",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_256",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 256.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "503",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Loads with latency value being above 512",
|
||||||
|
"PEBS": "2",
|
||||||
|
"MSRValue": "0x200",
|
||||||
|
"Counter": "3",
|
||||||
|
"EventName": "MEM_TRANS_RETIRED.LOAD_LATENCY_GT_512",
|
||||||
|
"MSRIndex": "0x3F6",
|
||||||
|
"Errata": "BDM100, BDM35",
|
||||||
|
"PublicDescription": "This event counts loads with latency value being above 512.",
|
||||||
|
"TakenAlone": "1",
|
||||||
|
"SampleAfterValue": "101",
|
||||||
|
"CounterHTOff": "3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all requests that miss in the L3",
|
||||||
|
"MSRValue": "0x3fbfc08fff",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_REQUESTS.LLC_MISS.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all requests that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss the L3 and clean or shared data is transferred from remote cache",
|
||||||
|
"MSRValue": "0x087fc007f7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_READS.LLC_MISS.REMOTE_HIT_FORWARD",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss the L3 and clean or shared data is transferred from remote cache Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss the L3 and the modified data is transferred from remote cache",
|
||||||
|
"MSRValue": "0x103fc007f7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_READS.LLC_MISS.REMOTE_HITM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss the L3 and the modified data is transferred from remote cache Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss the L3 and the data is returned from remote dram",
|
||||||
|
"MSRValue": "0x063bc007f7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_READS.LLC_MISS.REMOTE_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss the L3 and the data is returned from remote dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss the L3 and the data is returned from local dram",
|
||||||
|
"MSRValue": "0x06040007f7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_READS.LLC_MISS.LOCAL_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss the L3 and the data is returned from local dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss in the L3",
|
||||||
|
"MSRValue": "0x3fbfc007f7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_READS.LLC_MISS.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all data/code/rfo reads (demand & prefetch) that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch code reads that miss the L3 and the data is returned from local dram",
|
||||||
|
"MSRValue": "0x0604000244",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_CODE_RD.LLC_MISS.LOCAL_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch code reads that miss the L3 and the data is returned from local dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch code reads that miss in the L3",
|
||||||
|
"MSRValue": "0x3fbfc00244",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_CODE_RD.LLC_MISS.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch code reads that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch RFOs that miss the L3 and the data is returned from local dram",
|
||||||
|
"MSRValue": "0x0604000122",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_RFO.LLC_MISS.LOCAL_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch RFOs that miss the L3 and the data is returned from local dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch RFOs that miss in the L3",
|
||||||
|
"MSRValue": "0x3fbfc00122",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_RFO.LLC_MISS.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch RFOs that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch data reads that miss the L3 and clean or shared data is transferred from remote cache",
|
||||||
|
"MSRValue": "0x087fc00091",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_DATA_RD.LLC_MISS.REMOTE_HIT_FORWARD",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch data reads that miss the L3 and clean or shared data is transferred from remote cache Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch data reads that miss the L3 and the modified data is transferred from remote cache",
|
||||||
|
"MSRValue": "0x103fc00091",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_DATA_RD.LLC_MISS.REMOTE_HITM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch data reads that miss the L3 and the modified data is transferred from remote cache Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch data reads that miss the L3 and the data is returned from remote dram",
|
||||||
|
"MSRValue": "0x063bc00091",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_DATA_RD.LLC_MISS.REMOTE_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch data reads that miss the L3 and the data is returned from remote dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch data reads that miss the L3 and the data is returned from local dram",
|
||||||
|
"MSRValue": "0x0604000091",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_DATA_RD.LLC_MISS.LOCAL_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch data reads that miss the L3 and the data is returned from local dram Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand & prefetch data reads that miss in the L3",
|
||||||
|
"MSRValue": "0x3fbfc00091",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ALL_DATA_RD.LLC_MISS.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand & prefetch data reads that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts prefetch (that bring data to LLC only) code reads that miss in the L3",
|
||||||
|
"MSRValue": "0x3fbfc00200",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.PF_LLC_CODE_RD.LLC_MISS.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts prefetch (that bring data to LLC only) code reads that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all prefetch (that bring data to LLC only) RFOs that miss in the L3",
|
||||||
|
"MSRValue": "0x3fbfc00100",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.PF_LLC_RFO.LLC_MISS.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all prefetch (that bring data to LLC only) RFOs that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand data writes (RFOs) that miss the L3 and the modified data is transferred from remote cache",
|
||||||
|
"MSRValue": "0x103fc00002",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.DEMAND_RFO.LLC_MISS.REMOTE_HITM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand data writes (RFOs) that miss the L3 and the modified data is transferred from remote cache Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Offcore": "1",
|
||||||
|
"EventCode": "0xB7, 0xBB",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Counts all demand data writes (RFOs) that miss in the L3",
|
||||||
|
"MSRValue": "0x3fbfc00002",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.DEMAND_RFO.LLC_MISS.ANY_RESPONSE",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"PublicDescription": "Counts all demand data writes (RFOs) that miss in the L3 Offcore response can be programmed only with a specific pair of event select and counter MSR, and with specific event codes and predefine mask bit value in a dedicated MSR to specify attributes of the offcore transaction.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
}
|
||||||
|
]
|
44
lib/libpmcstat/pmu-events/arch/x86/broadwellx/other.json
Normal file
44
lib/libpmcstat/pmu-events/arch/x86/broadwellx/other.json
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x5C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Unhalted core cycles when the thread is in ring 0",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "CPL_CYCLES.RING0",
|
||||||
|
"PublicDescription": "This event counts the unhalted core cycles during which the thread is in the ring 0 privileged mode.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EdgeDetect": "1",
|
||||||
|
"EventCode": "0x5C",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Number of intervals between processor halts while thread is in ring 0",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "CPL_CYCLES.RING0_TRANS",
|
||||||
|
"CounterMask": "1",
|
||||||
|
"PublicDescription": "This event counts when there is a transition from ring 1,2 or 3 to ring0.",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x5C",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Unhalted core cycles when thread is in rings 1, 2, or 3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "CPL_CYCLES.RING123",
|
||||||
|
"PublicDescription": "This event counts unhalted core cycles during which the thread is in rings 1, 2, or 3.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x63",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Cycles when L1 and L2 are locked due to UC or split lock",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "LOCK_CYCLES.SPLIT_LOCK_UC_LOCK_DURATION",
|
||||||
|
"PublicDescription": "This event counts cycles in which the L1 and L2 are locked due to a UC lock or split lock. A lock is asserted in case of locked memory access, due to noncacheable memory, locked operation that spans two cache lines, or a page walk from the noncacheable page table. L1D and L2 locks have a very high performance penalty and it is highly recommended to avoid such access.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
}
|
||||||
|
]
|
1427
lib/libpmcstat/pmu-events/arch/x86/broadwellx/pipeline.json
Normal file
1427
lib/libpmcstat/pmu-events/arch/x86/broadwellx/pipeline.json
Normal file
File diff suppressed because it is too large
Load Diff
317
lib/libpmcstat/pmu-events/arch/x86/broadwellx/uncore-cache.json
Normal file
317
lib/libpmcstat/pmu-events/arch/x86/broadwellx/uncore-cache.json
Normal file
@ -0,0 +1,317 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"BriefDescription": "Uncore cache clock ticks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "UNC_C_CLOCKTICKS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "All LLC Misses (code+ data rd + data wr - including demand and prefetch)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x34",
|
||||||
|
"EventName": "UNC_C_LLC_LOOKUP.ANY",
|
||||||
|
"Filter": "filter_state=0x1",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x11",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "M line evictions from LLC (writebacks to memory)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x37",
|
||||||
|
"EventName": "UNC_C_LLC_VICTIMS.M_STATE",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC misses - demand and prefetch data reads - excludes LLC prefetches. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.DATA_READ",
|
||||||
|
"Filter": "filter_opc=0x182",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC misses - Uncacheable reads (from cpu) . Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.UNCACHEABLE",
|
||||||
|
"Filter": "filter_opc=0x187",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "MMIO reads. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.MMIO_READ",
|
||||||
|
"Filter": "filter_opc=0x187,filter_nc=1",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "MMIO writes. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.MMIO_WRITE",
|
||||||
|
"Filter": "filter_opc=0x18f,filter_nc=1",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC prefetch misses for RFO. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.RFO_LLC_PREFETCH",
|
||||||
|
"Filter": "filter_opc=0x190",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC prefetch misses for code reads. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.CODE_LLC_PREFETCH",
|
||||||
|
"Filter": "filter_opc=0x191",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC prefetch misses for data reads. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.DATA_LLC_PREFETCH",
|
||||||
|
"Filter": "filter_opc=0x192",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "LLC misses for PCIe read current. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.PCIE_READ",
|
||||||
|
"Filter": "filter_opc=0x19e",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "ItoM write misses (as part of fast string memcpy stores) + PCIe full line writes. Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.PCIE_WRITE",
|
||||||
|
"Filter": "filter_opc=0x1c8",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "PCIe write misses (full cache line). Derived from unc_c_tor_inserts.miss_opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_MISSES.PCIE_NON_SNOOP_WRITE",
|
||||||
|
"Filter": "filter_opc=0x1c8,filter_tid=0x3e",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "PCIe writes (partial cache line). Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.PCIE_NS_PARTIAL_WRITE",
|
||||||
|
"Filter": "filter_opc=0x180,filter_tid=0x3e",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "L2 demand and L2 prefetch code references to LLC. Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.CODE_LLC_PREFETCH",
|
||||||
|
"Filter": "filter_opc=0x181",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Streaming stores (full cache line). Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.STREAMING_FULL",
|
||||||
|
"Filter": "filter_opc=0x18c",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Streaming stores (partial cache line). Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.STREAMING_PARTIAL",
|
||||||
|
"Filter": "filter_opc=0x18d",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "PCIe read current. Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.PCIE_READ",
|
||||||
|
"Filter": "filter_opc=0x19e",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "PCIe write references (full cache line). Derived from unc_c_tor_inserts.opcode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x35",
|
||||||
|
"EventName": "LLC_REFERENCES.PCIE_WRITE",
|
||||||
|
"Filter": "filter_opc=0x1c8,filter_tid=0x3e",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Occupancy counter for LLC data reads (demand and L2 prefetch). Derived from unc_c_tor_occupancy.miss_opcode",
|
||||||
|
"EventCode": "0x36",
|
||||||
|
"EventName": "UNC_C_TOR_OCCUPANCY.LLC_DATA_READ",
|
||||||
|
"Filter": "filter_opc=0x182",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "CBO"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "read requests to home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.READS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "read requests to local home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.READS_LOCAL",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "read requests to remote home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.READS_REMOTE",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "write requests to home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.WRITES",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0xC",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "write requests to local home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.WRITES_LOCAL",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "write requests to remote home agent",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x1",
|
||||||
|
"EventName": "UNC_H_REQUESTS.WRITES_REMOTE",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Conflict requests (requests for same address from multiple agents simultaneously)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x21",
|
||||||
|
"EventName": "UNC_H_SNOOP_RESP.RSPCNFLCT",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "M line forwarded from remote cache along with writeback to memory",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x21",
|
||||||
|
"EventName": "UNC_H_SNOOP_RESP.RSP_FWD_WB",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "M line forwarded from remote cache with no writeback to memory",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x21",
|
||||||
|
"EventName": "UNC_H_SNOOP_RESP.RSPIFWD",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Shared line response from remote cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x21",
|
||||||
|
"EventName": "UNC_H_SNOOP_RESP.RSPS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"Unit": "HA"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Shared line forwarded from remote cache",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x21",
|
||||||
|
"EventName": "UNC_H_SNOOP_RESP.RSPSFWD",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"Unit": "HA"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,28 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"BriefDescription": "QPI clock ticks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x14",
|
||||||
|
"EventName": "UNC_Q_CLOCKTICKS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "QPI LL"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Number of data flits transmitted . Derived from unc_q_txl_flits_g0.data",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "QPI_DATA_BANDWIDTH_TX",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "8Bytes",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"Unit": "QPI LL"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Number of non data (control) flits transmitted . Derived from unc_q_txl_flits_g0.non_data",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "QPI_CTL_BANDWIDTH_TX",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "8Bytes",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"Unit": "QPI LL"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,86 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"BriefDescription": "read requests to memory controller. Derived from unc_m_cas_count.rd",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x4",
|
||||||
|
"EventName": "LLC_MISSES.MEM_READ",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "write requests to memory controller. Derived from unc_m_cas_count.wr",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x4",
|
||||||
|
"EventName": "LLC_MISSES.MEM_WRITE",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"ScaleUnit": "64Bytes",
|
||||||
|
"UMask": "0xC",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Memory controller clock ticks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "UNC_M_CLOCKTICKS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Cycles where DRAM ranks are in power down (CKE) mode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"EventName": "UNC_M_POWER_CHANNEL_PPD",
|
||||||
|
"MetricExpr": "(UNC_M_POWER_CHANNEL_PPD / UNC_M_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_channel_ppd %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Cycles all ranks are in critical thermal throttle",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x86",
|
||||||
|
"EventName": "UNC_M_POWER_CRITICAL_THROTTLE_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_M_POWER_CRITICAL_THROTTLE_CYCLES / UNC_M_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_critical_throttle_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Cycles Memory is in self refresh power mode",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x43",
|
||||||
|
"EventName": "UNC_M_POWER_SELF_REFRESH",
|
||||||
|
"MetricExpr": "(UNC_M_POWER_SELF_REFRESH / UNC_M_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_self_refresh %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Pre-charges due to page misses",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x2",
|
||||||
|
"EventName": "UNC_M_PRE_COUNT.PAGE_MISS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Pre-charge for reads",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x2",
|
||||||
|
"EventName": "UNC_M_PRE_COUNT.RD",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"Unit": "iMC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Pre-charge for writes",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x2",
|
||||||
|
"EventName": "UNC_M_PRE_COUNT.WR",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"Unit": "iMC"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,92 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"BriefDescription": "PCU clock ticks. Use to get percentages of PCU cycles events",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "UNC_P_CLOCKTICKS",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "This is an occupancy event that tracks the number of cores that are in C0. It can be used by itself to get the average number of cores in C0, with threshholding to generate histograms, or with other PCU events and occupancy triggering to capture other details",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"EventName": "UNC_P_POWER_STATE_OCCUPANCY.CORES_C0",
|
||||||
|
"Filter": "occ_sel=1",
|
||||||
|
"MetricExpr": "(UNC_P_POWER_STATE_OCCUPANCY.CORES_C0 / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_state_occupancy.cores_c0 %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "This is an occupancy event that tracks the number of cores that are in C3. It can be used by itself to get the average number of cores in C0, with threshholding to generate histograms, or with other PCU events and occupancy triggering to capture other details",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"EventName": "UNC_P_POWER_STATE_OCCUPANCY.CORES_C3",
|
||||||
|
"Filter": "occ_sel=2",
|
||||||
|
"MetricExpr": "(UNC_P_POWER_STATE_OCCUPANCY.CORES_C3 / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_state_occupancy.cores_c3 %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "This is an occupancy event that tracks the number of cores that are in C6. It can be used by itself to get the average number of cores in C0, with threshholding to generate histograms, or with other PCU events ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"EventName": "UNC_P_POWER_STATE_OCCUPANCY.CORES_C6",
|
||||||
|
"Filter": "occ_sel=3",
|
||||||
|
"MetricExpr": "(UNC_P_POWER_STATE_OCCUPANCY.CORES_C6 / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "power_state_occupancy.cores_c6 %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Counts the number of cycles that we are in external PROCHOT mode. This mode is triggered when a sensor off the die determines that something off-die (like DRAM) is too hot and must throttle to avoid damaging the chip",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0xA",
|
||||||
|
"EventName": "UNC_P_PROCHOT_EXTERNAL_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_P_PROCHOT_EXTERNAL_CYCLES / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "prochot_external_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Counts the number of cycles when temperature is the upper limit on frequency",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x4",
|
||||||
|
"EventName": "UNC_P_FREQ_MAX_LIMIT_THERMAL_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_P_FREQ_MAX_LIMIT_THERMAL_CYCLES / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "freq_max_limit_thermal_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Counts the number of cycles when the OS is the upper limit on frequency",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x6",
|
||||||
|
"EventName": "UNC_P_FREQ_MAX_OS_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_P_FREQ_MAX_OS_CYCLES / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "freq_max_os_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Counts the number of cycles when power is the upper limit on frequency",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x5",
|
||||||
|
"EventName": "UNC_P_FREQ_MAX_POWER_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_P_FREQ_MAX_POWER_CYCLES / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "freq_max_power_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"BriefDescription": "Counts the number of cycles when current is the upper limit on frequency",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventCode": "0x74",
|
||||||
|
"EventName": "UNC_P_FREQ_TRANS_CYCLES",
|
||||||
|
"MetricExpr": "(UNC_P_FREQ_TRANS_CYCLES / UNC_P_CLOCKTICKS) * 100.",
|
||||||
|
"MetricName": "freq_trans_cycles %",
|
||||||
|
"PerPkg": "1",
|
||||||
|
"Unit": "PCU"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,388 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Load misses in all DTLB levels that cause page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.MISS_CAUSES_A_WALK",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause page walks of any page size (4K/2M/4M/1G).",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Demand load Miss in all translation lookaside buffer (TLB) levels causes a page walk that completes (4K).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_4K",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause a completed page walk (4K page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Demand load Miss in all translation lookaside buffer (TLB) levels causes a page walk that completes (2M/4M).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_2M_4M",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause a completed page walk (2M and 4M page sizes). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Load miss in all TLB levels causes a page walk that completes. (1G)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED_1G",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts load misses in all DTLB levels that cause a completed page walk (1G page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0xe",
|
||||||
|
"BriefDescription": "Demand load Miss in all translation lookaside buffer (TLB) levels causes a page walk that completes of any page size.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_COMPLETED",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Cycles when PMH is busy with page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.WALK_DURATION",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts the number of cycles while PMH is busy with the page walk.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Load misses that miss the DTLB and hit the STLB (4K).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.STLB_HIT_4K",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Load misses that miss the DTLB and hit the STLB (2M).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.STLB_HIT_2M",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x08",
|
||||||
|
"UMask": "0x60",
|
||||||
|
"BriefDescription": "Load operations that miss the first DTLB level but hit the second and do not cause page walks.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_LOAD_MISSES.STLB_HIT",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.MISS_CAUSES_A_WALK",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause page walks of any page size (4K/2M/4M/1G).",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Store miss in all TLB levels causes a page walk that completes. (4K)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_4K",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (4K page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause completed page walks (2M/4M)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_2M_4M",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (2M and 4M page sizes). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause completed page walks (1G)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED_1G",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (1G page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0xe",
|
||||||
|
"BriefDescription": "Store misses in all DTLB levels that cause completed page walks.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_COMPLETED",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Cycles when PMH is busy with page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.WALK_DURATION",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts the number of cycles while PMH is busy with the page walk.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Store misses that miss the DTLB and hit the STLB (4K).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.STLB_HIT_4K",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Store misses that miss the DTLB and hit the STLB (2M).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.STLB_HIT_2M",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x49",
|
||||||
|
"UMask": "0x60",
|
||||||
|
"BriefDescription": "Store operations that miss the first TLB level but hit the second and do not cause page walks.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "DTLB_STORE_MISSES.STLB_HIT",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x4F",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Cycle count for an Extended Page table walk.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "EPT.WALK_CYCLES",
|
||||||
|
"PublicDescription": "This event counts cycles for an extended page table walk. The Extended Page directory cache differs from standard TLB caches by the operating system that use it. Virtual machine operating systems use the extended page directory cache, while guest operating systems use the standard TLB caches.",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Misses at all ITLB levels that cause page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.MISS_CAUSES_A_WALK",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause page walks of any page size (4K/2M/4M/1G).",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (4K)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_4K",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (4K page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"BriefDescription": "Code miss in all TLB levels causes a page walk that completes. (2M/4M)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_2M_4M",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (2M and 4M page sizes). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"BriefDescription": "Store miss in all TLB levels causes a page walk that completes. (1G)",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED_1G",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts store misses in all DTLB levels that cause a completed page walk (1G page size). The page walk can end with or without a fault.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0xe",
|
||||||
|
"BriefDescription": "Misses in all ITLB levels that cause completed page walks.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_COMPLETED",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"BriefDescription": "Cycles when PMH is busy with page walks",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.WALK_DURATION",
|
||||||
|
"Errata": "BDM69",
|
||||||
|
"PublicDescription": "This event counts the number of cycles while PMH is busy with the page walk.",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "Core misses that miss the DTLB and hit the STLB (4K).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.STLB_HIT_4K",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x40",
|
||||||
|
"BriefDescription": "Code misses that miss the DTLB and hit the STLB (2M).",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.STLB_HIT_2M",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0x85",
|
||||||
|
"UMask": "0x60",
|
||||||
|
"BriefDescription": "Operations that miss the first ITLB level but hit the second and do not cause any page walks.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB_MISSES.STLB_HIT",
|
||||||
|
"SampleAfterValue": "100003",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xAE",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "Flushing of the Instruction TLB (ITLB) pages, includes 4k/2M/4M pages.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "ITLB.ITLB_FLUSH",
|
||||||
|
"PublicDescription": "This event counts the number of flushes of the big or small ITLB pages. Counting include both TLB Flush (covering all sets) and TLB Set Clear (set-specific).",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x11",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in the L1+FB.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_L1",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x12",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in the L2.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_L2",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x14",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in the L3 + XSNP.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_L3",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x18",
|
||||||
|
"BriefDescription": "Number of DTLB page walker hits in Memory.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.DTLB_MEMORY",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x21",
|
||||||
|
"BriefDescription": "Number of ITLB page walker hits in the L1+FB.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.ITLB_L1",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x22",
|
||||||
|
"BriefDescription": "Number of ITLB page walker hits in the L2.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.ITLB_L2",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBC",
|
||||||
|
"UMask": "0x24",
|
||||||
|
"BriefDescription": "Number of ITLB page walker hits in the L3 + XSNP.",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "PAGE_WALKER_LOADS.ITLB_L3",
|
||||||
|
"Errata": "BDM69, BDM98",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"CounterHTOff": "0,1,2,3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBD",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"BriefDescription": "DTLB flush attempts of the thread-specific entries",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TLB_FLUSH.DTLB_THREAD",
|
||||||
|
"PublicDescription": "This event counts the number of DTLB flush attempts of the thread-specific entries.",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventCode": "0xBD",
|
||||||
|
"UMask": "0x20",
|
||||||
|
"BriefDescription": "STLB flush attempts",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"EventName": "TLB_FLUSH.STLB_ANY",
|
||||||
|
"PublicDescription": "This event counts the number of any STLB flush attempts (such as entire, VPID, PCID, InvPage, CR3 write, and so on).",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"CounterHTOff": "0,1,2,3,4,5,6,7"
|
||||||
|
}
|
||||||
|
]
|
2045
lib/libpmcstat/pmu-events/arch/x86/goldmont/cache.json
Normal file
2045
lib/libpmcstat/pmu-events/arch/x86/goldmont/cache.json
Normal file
File diff suppressed because it is too large
Load Diff
52
lib/libpmcstat/pmu-events/arch/x86/goldmont/frontend.json
Normal file
52
lib/libpmcstat/pmu-events/arch/x86/goldmont/frontend.json
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts requests to the Instruction Cache (ICache) for one or more bytes in an ICache Line and that cache line is in the ICache (hit). The event strives to count on a cache line basis, so that multiple accesses which hit in a single cache line count as one ICACHE.HIT. Specifically, the event counts when straight line code crosses the cache line boundary, or when a branch target is to a new line, and that cache line is in the ICache. This event counts differently than Intel processors based on Silvermont microarchitecture.",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "ICACHE.HIT",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "References per ICache line that are available in the ICache (hit). This event counts differently than Intel processors based on Silvermont microarchitecture"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts requests to the Instruction Cache (ICache) for one or more bytes in an ICache Line and that cache line is not in the ICache (miss). The event strives to count on a cache line basis, so that multiple accesses which miss in a single cache line count as one ICACHE.MISS. Specifically, the event counts when straight line code crosses the cache line boundary, or when a branch target is to a new line, and that cache line is not in the ICache. This event counts differently than Intel processors based on Silvermont microarchitecture.",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "ICACHE.MISSES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "References per ICache line that are not available in the ICache (miss). This event counts differently than Intel processors based on Silvermont microarchitecture"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts requests to the Instruction Cache (ICache) for one or more bytes in an ICache Line. The event strives to count on a cache line basis, so that multiple fetches to a single cache line count as one ICACHE.ACCESS. Specifically, the event counts when accesses from straight line code crosses the cache line boundary, or when a branch target is to a new line.\r\nThis event counts differently than Intel processors based on Silvermont microarchitecture.",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"EventName": "ICACHE.ACCESSES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "References per ICache line. This event counts differently than Intel processors based on Silvermont microarchitecture"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of times the Microcode Sequencer (MS) starts a flow of uops from the MSROM. It does not count every time a uop is read from the MSROM. The most common case that this counts is when a micro-coded instruction is encountered by the front end of the machine. Other cases include when an instruction encounters a fault, trap, or microcode assist of any sort that initiates a flow of uops. The event will count MS startups for uops that are speculative, and subsequently cleared by branch mispredict or a machine clear.",
|
||||||
|
"EventCode": "0xE7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "MS_DECODED.MS_ENTRY",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "MS decode starts"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of times the prediction (from the predecode cache) for instruction length is incorrect.",
|
||||||
|
"EventCode": "0xE9",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "DECODE_RESTRICTION.PREDECODE_WRONG",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Decode restrictions due to predicting wrong instruction length"
|
||||||
|
}
|
||||||
|
]
|
294
lib/libpmcstat/pmu-events/arch/x86/goldmont/memory.json
Normal file
294
lib/libpmcstat/pmu-events/arch/x86/goldmont/memory.json
Normal file
@ -0,0 +1,294 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts when a memory load of a uop spans a page boundary (a split) is retired.",
|
||||||
|
"EventCode": "0x13",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.LOAD_PAGE_SPLIT",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Load uops that split a page (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts when a memory store of a uop spans a page boundary (a split) is retired.",
|
||||||
|
"EventCode": "0x13",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.STORE_PAGE_SPLIT",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Store uops that split a page (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts machine clears due to memory ordering issues. This occurs when a snoop request happens and the machine is uncertain if memory ordering will be preserved as another core is in the process of modifying the data.",
|
||||||
|
"EventCode": "0xC3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "MACHINE_CLEARS.MEMORY_ORDERING",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Machine clears due to memory ordering issue"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts data read, code read, and read for ownership (RFO) requests (demand & prefetch) that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x20000032b7 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ANY_READ.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts data read, code read, and read for ownership (RFO) requests (demand & prefetch) that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts reads for ownership (RFO) requests (demand & prefetch) that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000022 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ANY_RFO.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts reads for ownership (RFO) requests (demand & prefetch) that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts data reads (demand & prefetch) that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000003091",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ANY_DATA_RD.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts data reads (demand & prefetch) that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts data reads generated by L1 or L2 prefetchers that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000003010 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ANY_PF_DATA_RD.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts data reads generated by L1 or L2 prefetchers that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts requests to the uncore subsystem that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000008000 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.ANY_REQUEST.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts requests to the uncore subsystem that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts any data writes to uncacheable write combining (USWC) memory region that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000004800 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.STREAMING_STORES.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts any data writes to uncacheable write combining (USWC) memory region that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts partial cache line data writes to uncacheable write combining (USWC) memory region that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000004000 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.PARTIAL_STREAMING_STORES.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts partial cache line data writes to uncacheable write combining (USWC) memory region that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts data cache line reads generated by hardware L1 data cache prefetcher that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000002000 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.PF_L1_DATA_RD.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts data cache line reads generated by hardware L1 data cache prefetcher that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts data cache lines requests by software prefetch instructions that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000001000 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.SW_PREFETCH.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts data cache lines requests by software prefetch instructions that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts full cache line data writes to uncacheable write combining (USWC) memory region and full cache-line non-temporal writes that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000800 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.FULL_STREAMING_STORES.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts full cache line data writes to uncacheable write combining (USWC) memory region and full cache-line non-temporal writes that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts bus lock and split lock requests that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000400 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.BUS_LOCKS.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts bus lock and split lock requests that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts code reads in uncacheable (UC) memory region that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000200 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.UC_CODE_RD.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts code reads in uncacheable (UC) memory region that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of demand write requests (RFO) generated by a write to partial data cache line, including the writes to uncacheable (UC) and write through (WT), and write protected (WP) types of memory that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000100 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.PARTIAL_WRITES.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts the number of demand write requests (RFO) generated by a write to partial data cache line, including the writes to uncacheable (UC) and write through (WT), and write protected (WP) types of memory that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts demand data partial reads, including data in uncacheable (UC) or uncacheable write combining (USWC) memory types that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000080 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.PARTIAL_READS.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts demand data partial reads, including data in uncacheable (UC) or uncacheable write combining (USWC) memory types that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts reads for ownership (RFO) requests generated by L2 prefetcher that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000020 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.PF_L2_RFO.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts reads for ownership (RFO) requests generated by L2 prefetcher that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts data cacheline reads generated by hardware L2 cache prefetcher that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000010 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.PF_L2_DATA_RD.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts data cacheline reads generated by hardware L2 cache prefetcher that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of writeback transactions caused by L1 or L2 cache evictions that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000008 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.COREWB.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts the number of writeback transactions caused by L1 or L2 cache evictions that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts demand instruction cacheline and I-side prefetch requests that miss the instruction cache that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000004 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.DEMAND_CODE_RD.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts demand instruction cacheline and I-side prefetch requests that miss the instruction cache that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts demand reads for ownership (RFO) requests generated by a write to full data cache line that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000002 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.DEMAND_RFO.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts demand reads for ownership (RFO) requests generated by a write to full data cache line that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts demand cacheable data reads of full cache lines that miss the L2 cache and targets non-DRAM system address. Requires MSR_OFFCORE_RESP[0,1] to specify request type and response. (duplicated for both MSRs)",
|
||||||
|
"EventCode": "0xB7",
|
||||||
|
"MSRValue": "0x2000000001 ",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "OFFCORE_RESPONSE.DEMAND_DATA_RD.L2_MISS.NON_DRAM",
|
||||||
|
"MSRIndex": "0x1a6,0x1a7",
|
||||||
|
"SampleAfterValue": "100007",
|
||||||
|
"BriefDescription": "Counts demand cacheable data reads of full cache lines that miss the L2 cache and targets non-DRAM system address.",
|
||||||
|
"Offcore": "1"
|
||||||
|
}
|
||||||
|
]
|
82
lib/libpmcstat/pmu-events/arch/x86/goldmont/other.json
Normal file
82
lib/libpmcstat/pmu-events/arch/x86/goldmont/other.json
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts cycles that fetch is stalled due to any reason. That is, the decoder queue is able to accept bytes, but the fetch unit is unable to provide bytes. This will include cycles due to an ITLB miss, ICache miss and other events.",
|
||||||
|
"EventCode": "0x86",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "FETCH_STALL.ALL",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Cycles code-fetch stalled due to any reason."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts cycles that fetch is stalled due to an outstanding ITLB miss. That is, the decoder queue is able to accept bytes, but the fetch unit is unable to provide bytes due to an ITLB miss. Note: this event is not the same as page walk cycles to retrieve an instruction translation.",
|
||||||
|
"EventCode": "0x86",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "FETCH_STALL.ITLB_FILL_PENDING_CYCLES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Cycles code-fetch stalled due to an outstanding ITLB miss."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of issue slots per core cycle that were not consumed by the backend due to either a full resource in the backend (RESOURCE_FULL) or due to the processor recovering from some event (RECOVERY).",
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "ISSUE_SLOTS_NOT_CONSUMED.ANY",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Unfilled issue slots per cycle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of issue slots per core cycle that were not consumed because of a full resource in the backend. Including but not limited to resources such as the Re-order Buffer (ROB), reservation stations (RS), load/store buffers, physical registers, or any other needed machine resource that is currently unavailable. Note that uops must be available for consumption in order for this event to fire. If a uop is not available (Instruction Queue is empty), this event will not count.",
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "ISSUE_SLOTS_NOT_CONSUMED.RESOURCE_FULL",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Unfilled issue slots per cycle because of a full resource in the backend"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of issue slots per core cycle that were not consumed by the backend because allocation is stalled waiting for a mispredicted jump to retire or other branch-like conditions (e.g. the event is relevant during certain microcode flows). Counts all issue slots blocked while within this window including slots where uops were not available in the Instruction Queue.",
|
||||||
|
"EventCode": "0xCA",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "ISSUE_SLOTS_NOT_CONSUMED.RECOVERY",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Unfilled issue slots per cycle to recover"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts hardware interrupts received by the processor.",
|
||||||
|
"EventCode": "0xCB",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "HW_INTERRUPTS.RECEIVED",
|
||||||
|
"SampleAfterValue": "203",
|
||||||
|
"BriefDescription": "Hardware interrupts received"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts the number of core cycles during which interrupts are masked (disabled). Increments by 1 each core cycle that EFLAGS.IF is 0, regardless of whether interrupts are pending or not.",
|
||||||
|
"EventCode": "0xCB",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "HW_INTERRUPTS.MASKED",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Cycles hardware interrupts are masked"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts core cycles during which there are pending interrupts, but interrupts are masked (EFLAGS.IF = 0).",
|
||||||
|
"EventCode": "0xCB",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "HW_INTERRUPTS.PENDING_AND_MASKED",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Cycles pending interrupts are masked"
|
||||||
|
}
|
||||||
|
]
|
455
lib/libpmcstat/pmu-events/arch/x86/goldmont/pipeline.json
Normal file
455
lib/libpmcstat/pmu-events/arch/x86/goldmont/pipeline.json
Normal file
@ -0,0 +1,455 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"PublicDescription": "Counts the number of instructions that retire execution. For instructions that consist of multiple uops, this event counts the retirement of the last uop of the instruction. The counter continues counting during hardware interrupts, traps, and inside interrupt handlers. This event uses fixed counter 0. You cannot collect a PEBs record for this event.",
|
||||||
|
"EventCode": "0x00",
|
||||||
|
"Counter": "Fixed counter 0",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "INST_RETIRED.ANY",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Instructions retired (Fixed event)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Counts the number of core cycles while the core is not in a halt state. The core enters the halt state when it is running the HLT instruction. In mobile systems the core frequency may change from time to time. For this reason this event may have a changing ratio with regards to time. This event uses fixed counter 1. You cannot collect a PEBs record for this event.",
|
||||||
|
"EventCode": "0x00",
|
||||||
|
"Counter": "Fixed counter 1",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "CPU_CLK_UNHALTED.CORE",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Core cycles when core is not halted (Fixed event)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PublicDescription": "Counts the number of reference cycles that the core is not in a halt state. The core enters the halt state when it is running the HLT instruction. In mobile systems the core frequency may change from time. This event is not affected by core frequency changes but counts as if the core is running at the maximum frequency all the time. This event uses fixed counter 2. You cannot collect a PEBs record for this event.",
|
||||||
|
"EventCode": "0x00",
|
||||||
|
"Counter": "Fixed counter 2",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"EventName": "CPU_CLK_UNHALTED.REF_TSC",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Reference cycles when core is not halted (Fixed event)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts a load blocked from using a store forward, but did not occur because the store data was not available at the right time. The forward might occur subsequently when the data is available.",
|
||||||
|
"EventCode": "0x03",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "LD_BLOCKS.DATA_UNKNOWN",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Loads blocked due to store data not ready (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts a load blocked from using a store forward because of an address/size mismatch, only one of the loads blocked from each store will be counted.",
|
||||||
|
"EventCode": "0x03",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "LD_BLOCKS.STORE_FORWARD",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Loads blocked due to store forward restriction (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts loads that block because their address modulo 4K matches a pending store.",
|
||||||
|
"EventCode": "0x03",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "LD_BLOCKS.4K_ALIAS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Loads blocked because address has 4k partial address false dependence (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts loads blocked because they are unable to find their physical address in the micro TLB (UTLB).",
|
||||||
|
"EventCode": "0x03",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "LD_BLOCKS.UTLB_MISS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Loads blocked because address in not in the UTLB (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts anytime a load that retires is blocked for any reason.",
|
||||||
|
"EventCode": "0x03",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "LD_BLOCKS.ALL_BLOCK",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Loads blocked (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts uops issued by the front end and allocated into the back end of the machine. This event counts uops that retire as well as uops that were speculatively executed but didn't retire. The sort of speculative uops that might be counted includes, but is not limited to those uops issued in the shadow of a miss-predicted branch, those uops that are inserted during an assist (such as for a denormal floating point result), and (previously allocated) uops that might be canceled during a machine clear.",
|
||||||
|
"EventCode": "0x0E",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "UOPS_ISSUED.ANY",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Uops issued to the back end per cycle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Core cycles when core is not halted. This event uses a (_P)rogrammable general purpose performance counter.",
|
||||||
|
"EventCode": "0x3C",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "CPU_CLK_UNHALTED.CORE_P",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Core cycles when core is not halted"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Reference cycles when core is not halted. This event uses a programmable general purpose performance counter.",
|
||||||
|
"EventCode": "0x3C",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "CPU_CLK_UNHALTED.REF",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Reference cycles when core is not halted"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "This event used to measure front-end inefficiencies. I.e. when front-end of the machine is not delivering uops to the back-end and the back-end has is not stalled. This event can be used to identify if the machine is truly front-end bound. When this event occurs, it is an indication that the front-end of the machine is operating at less than its theoretical peak performance. Background: We can think of the processor pipeline as being divided into 2 broader parts: Front-end and Back-end. Front-end is responsible for fetching the instruction, decoding into uops in machine understandable format and putting them into a uop queue to be consumed by back end. The back-end then takes these uops, allocates the required resources. When all resources are ready, uops are executed. If the back-end is not ready to accept uops from the front-end, then we do not want to count these as front-end bottlenecks. However, whenever we have bottlenecks in the back-end, we will have allocation unit stalls and eventually forcing the front-end to wait until the back-end is ready to receive more uops. This event counts only when back-end is requesting more uops and front-end is not able to provide them. When 3 uops are requested and no uops are delivered, the event counts 3. When 3 are requested, and only 1 is delivered, the event counts 2. When only 2 are delivered, the event counts 1. Alternatively stated, the event will not count if 3 uops are delivered, or if the back end is stalled and not requesting any uops at all. Counts indicate missed opportunities for the front-end to deliver a uop to the back end. Some examples of conditions that cause front-end efficiencies are: ICache misses, ITLB misses, and decoder restrictions that limit the front-end bandwidth. Known Issues: Some uops require multiple allocation slots. These uops will not be charged as a front end 'not delivered' opportunity, and will be regarded as a back end problem. For example, the INC instruction has one uop that requires 2 issue slots. A stream of INC instructions will not count as UOPS_NOT_DELIVERED, even though only one instruction can be issued per clock. The low uop issue rate for a stream of INC instructions is considered to be a back end issue.",
|
||||||
|
"EventCode": "0x9C",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "UOPS_NOT_DELIVERED.ANY",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Uops requested but not-delivered to the back-end per cycle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of instructions that retire execution. For instructions that consist of multiple uops, this event counts the retirement of the last uop of the instruction. The event continues counting during hardware interrupts, traps, and inside interrupt handlers. This is an architectural performance event. This event uses a (_P)rogrammable general purpose performance counter. *This event is Precise Event capable: The EventingRIP field in the PEBS record is precise to the address of the instruction which caused the event. Note: Because PEBS records can be collected only on IA32_PMC0, only one event can use the PEBS facility at a time.",
|
||||||
|
"EventCode": "0xC0",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "INST_RETIRED.ANY_P",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Instructions retired (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts uops which retired.",
|
||||||
|
"EventCode": "0xC2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "UOPS_RETIRED.ANY",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Uops retired (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts uops retired that are from the complex flows issued by the micro-sequencer (MS). Counts both the uops from a micro-coded instruction, and the uops that might be generated from a micro-coded assist.",
|
||||||
|
"EventCode": "0xC2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "UOPS_RETIRED.MS",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "MS uops retired (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of floating point divide uops retired.",
|
||||||
|
"EventCode": "0xC2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "UOPS_RETIRED.FPDIV",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Floating point divide uops retired. (Precise Event Capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of integer divide uops retired.",
|
||||||
|
"EventCode": "0xC2",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "UOPS_RETIRED.IDIV",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Integer divide uops retired. (Precise Event Capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts machine clears for any reason.",
|
||||||
|
"EventCode": "0xC3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "MACHINE_CLEARS.ALL",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "All machine clears"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of times that the processor detects that a program is writing to a code section and has to perform a machine clear because of that modification. Self-modifying code (SMC) causes a severe penalty in all Intel architecture processors.",
|
||||||
|
"EventCode": "0xC3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "MACHINE_CLEARS.SMC",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Self-Modifying Code detected"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts machine clears due to floating point (FP) operations needing assists. For instance, if the result was a floating point denormal, the hardware clears the pipeline and reissues uops to produce the correct IEEE compliant denormal result.",
|
||||||
|
"EventCode": "0xC3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "MACHINE_CLEARS.FP_ASSIST",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Machine clears due to FP assists"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts machine clears due to memory disambiguation. Memory disambiguation happens when a load which has been issued conflicts with a previous unretired store in the pipeline whose address was not known at issue time, but is later resolved to be the same as the load address.",
|
||||||
|
"EventCode": "0xC3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "MACHINE_CLEARS.DISAMBIGUATION",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Machine clears due to memory disambiguation"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts branch instructions retired for all branch types. This is an architectural performance event.",
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "BR_INST_RETIRED.ALL_BRANCHES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired branch instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts retired Jcc (Jump on Conditional Code/Jump if Condition is Met) branch instructions retired, including both when the branch was taken and when it was not taken.",
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x7e",
|
||||||
|
"EventName": "BR_INST_RETIRED.JCC",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired conditional branch instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of taken branch instructions retired.",
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x80",
|
||||||
|
"EventName": "BR_INST_RETIRED.ALL_TAKEN_BRANCHES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired taken branch instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts far branch instructions retired. This includes far jump, far call and return, and Interrupt call and return.",
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xbf",
|
||||||
|
"EventName": "BR_INST_RETIRED.FAR_BRANCH",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired far branch instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts near indirect call or near indirect jmp branch instructions retired.",
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xeb",
|
||||||
|
"EventName": "BR_INST_RETIRED.NON_RETURN_IND",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired instructions of near indirect Jmp or call (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts near return branch instructions retired.",
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xf7",
|
||||||
|
"EventName": "BR_INST_RETIRED.RETURN",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired near return instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts near CALL branch instructions retired.",
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xf9",
|
||||||
|
"EventName": "BR_INST_RETIRED.CALL",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired near call instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts near indirect CALL branch instructions retired.",
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xfb",
|
||||||
|
"EventName": "BR_INST_RETIRED.IND_CALL",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired near indirect call instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts near relative CALL branch instructions retired.",
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xfd",
|
||||||
|
"EventName": "BR_INST_RETIRED.REL_CALL",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired near relative call instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts Jcc (Jump on Conditional Code/Jump if Condition is Met) branch instructions retired that were taken and does not count when the Jcc branch instruction were not taken.",
|
||||||
|
"EventCode": "0xC4",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xfe",
|
||||||
|
"EventName": "BR_INST_RETIRED.TAKEN_JCC",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired conditional branch instructions that were taken (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts mispredicted branch instructions retired including all branch types.",
|
||||||
|
"EventCode": "0xC5",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "BR_MISP_RETIRED.ALL_BRANCHES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired mispredicted branch instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts mispredicted retired Jcc (Jump on Conditional Code/Jump if Condition is Met) branch instructions retired, including both when the branch was supposed to be taken and when it was not supposed to be taken (but the processor predicted the opposite condition).",
|
||||||
|
"EventCode": "0xC5",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x7e",
|
||||||
|
"EventName": "BR_MISP_RETIRED.JCC",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired mispredicted conditional branch instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts mispredicted branch instructions retired that were near indirect call or near indirect jmp, where the target address taken was not what the processor predicted.",
|
||||||
|
"EventCode": "0xC5",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xeb",
|
||||||
|
"EventName": "BR_MISP_RETIRED.NON_RETURN_IND",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired mispredicted instructions of near indirect Jmp or near indirect call. (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts mispredicted near RET branch instructions retired, where the return address taken was not what the processor predicted.",
|
||||||
|
"EventCode": "0xC5",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xf7",
|
||||||
|
"EventName": "BR_MISP_RETIRED.RETURN",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired mispredicted near return instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts mispredicted near indirect CALL branch instructions retired, where the target address taken was not what the processor predicted.",
|
||||||
|
"EventCode": "0xC5",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xfb",
|
||||||
|
"EventName": "BR_MISP_RETIRED.IND_CALL",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired mispredicted near indirect call instructions (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts mispredicted retired Jcc (Jump on Conditional Code/Jump if Condition is Met) branch instructions retired that were supposed to be taken but the processor predicted that it would not be taken.",
|
||||||
|
"EventCode": "0xC5",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0xfe",
|
||||||
|
"EventName": "BR_MISP_RETIRED.TAKEN_JCC",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Retired mispredicted conditional branch instructions that were taken (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts core cycles if either divide unit is busy.",
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x0",
|
||||||
|
"EventName": "CYCLES_DIV_BUSY.ALL",
|
||||||
|
"SampleAfterValue": "2000003",
|
||||||
|
"BriefDescription": "Cycles a divider is busy"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts core cycles the integer divide unit is busy.",
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "CYCLES_DIV_BUSY.IDIV",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Cycles the integer divide unit is busy"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts core cycles the floating point divide unit is busy.",
|
||||||
|
"EventCode": "0xCD",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "CYCLES_DIV_BUSY.FPDIV",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Cycles the FP divide unit is busy"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of times a BACLEAR is signaled for any reason, including, but not limited to indirect branch/call, Jcc (Jump on Conditional Code/Jump if Condition is Met) branch, unconditional branch/call, and returns.",
|
||||||
|
"EventCode": "0xE6",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "BACLEARS.ALL",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "BACLEARs asserted for any branch type"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts BACLEARS on return instructions.",
|
||||||
|
"EventCode": "0xE6",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x8",
|
||||||
|
"EventName": "BACLEARS.RETURN",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "BACLEARs asserted for return branch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts BACLEARS on Jcc (Jump on Conditional Code/Jump if Condition is Met) branches.",
|
||||||
|
"EventCode": "0xE6",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x10",
|
||||||
|
"EventName": "BACLEARS.COND",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "BACLEARs asserted for conditional branch"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,75 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts every core cycle when a Data-side (walks due to a data operation) page walk is in progress.",
|
||||||
|
"EventCode": "0x05",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"EventName": "PAGE_WALKS.D_SIDE_CYCLES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Duration of D-side page-walks in cycles"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts every core cycle when a Instruction-side (walks due to an instruction fetch) page walk is in progress.",
|
||||||
|
"EventCode": "0x05",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"EventName": "PAGE_WALKS.I_SIDE_CYCLES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Duration of I-side pagewalks in cycles"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts every core cycle a page-walk is in progress due to either a data memory operation or an instruction fetch.",
|
||||||
|
"EventCode": "0x05",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"EventName": "PAGE_WALKS.CYCLES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Duration of page-walks in cycles"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of times the machine was unable to find a translation in the Instruction Translation Lookaside Buffer (ITLB) for a linear address of an instruction fetch. It counts when new translation are filled into the ITLB. The event is speculative in nature, but will not count translations (page walks) that are begun and not finished, or translations that are finished but not filled into the ITLB.",
|
||||||
|
"EventCode": "0x81",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"EventName": "ITLB.MISS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "ITLB misses"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts load uops retired that caused a DTLB miss.",
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x11",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.DTLB_MISS_LOADS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Load uops retired that missed the DTLB (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts store uops retired that caused a DTLB miss.",
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x12",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.DTLB_MISS_STORES",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Store uops retired that missed the DTLB (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts uops retired that had a DTLB miss on load, store or either. Note that when two distinct memory operations to the same page miss the DTLB, only one of them will be recorded as a DTLB miss.",
|
||||||
|
"EventCode": "0xD0",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x13",
|
||||||
|
"EventName": "MEM_UOPS_RETIRED.DTLB_MISS",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Memory uops retired that missed the DTLB (Precise event capable)"
|
||||||
|
}
|
||||||
|
]
|
1453
lib/libpmcstat/pmu-events/arch/x86/goldmontplus/cache.json
Normal file
1453
lib/libpmcstat/pmu-events/arch/x86/goldmontplus/cache.json
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,62 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts requests to the Instruction Cache (ICache) for one or more bytes in an ICache Line and that cache line is in the ICache (hit). The event strives to count on a cache line basis, so that multiple accesses which hit in a single cache line count as one ICACHE.HIT. Specifically, the event counts when straight line code crosses the cache line boundary, or when a branch target is to a new line, and that cache line is in the ICache. This event counts differently than Intel processors based on Silvermont microarchitecture.",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"PEBScounters": "0,1,2,3",
|
||||||
|
"EventName": "ICACHE.HIT",
|
||||||
|
"PDIR_COUNTER": "na",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "References per ICache line that are available in the ICache (hit). This event counts differently than Intel processors based on Silvermont microarchitecture"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts requests to the Instruction Cache (ICache) for one or more bytes in an ICache Line and that cache line is not in the ICache (miss). The event strives to count on a cache line basis, so that multiple accesses which miss in a single cache line count as one ICACHE.MISS. Specifically, the event counts when straight line code crosses the cache line boundary, or when a branch target is to a new line, and that cache line is not in the ICache. This event counts differently than Intel processors based on Silvermont microarchitecture.",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"PEBScounters": "0,1,2,3",
|
||||||
|
"EventName": "ICACHE.MISSES",
|
||||||
|
"PDIR_COUNTER": "na",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "References per ICache line that are not available in the ICache (miss). This event counts differently than Intel processors based on Silvermont microarchitecture"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts requests to the Instruction Cache (ICache) for one or more bytes in an ICache Line. The event strives to count on a cache line basis, so that multiple fetches to a single cache line count as one ICACHE.ACCESS. Specifically, the event counts when accesses from straight line code crosses the cache line boundary, or when a branch target is to a new line.\r\nThis event counts differently than Intel processors based on Silvermont microarchitecture.",
|
||||||
|
"EventCode": "0x80",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x3",
|
||||||
|
"PEBScounters": "0,1,2,3",
|
||||||
|
"EventName": "ICACHE.ACCESSES",
|
||||||
|
"PDIR_COUNTER": "na",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "References per ICache line. This event counts differently than Intel processors based on Silvermont microarchitecture"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of times the Microcode Sequencer (MS) starts a flow of uops from the MSROM. It does not count every time a uop is read from the MSROM. The most common case that this counts is when a micro-coded instruction is encountered by the front end of the machine. Other cases include when an instruction encounters a fault, trap, or microcode assist of any sort that initiates a flow of uops. The event will count MS startups for uops that are speculative, and subsequently cleared by branch mispredict or a machine clear.",
|
||||||
|
"EventCode": "0xE7",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"PEBScounters": "0,1,2,3",
|
||||||
|
"EventName": "MS_DECODED.MS_ENTRY",
|
||||||
|
"PDIR_COUNTER": "na",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "MS decode starts"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts the number of times the prediction (from the predecode cache) for instruction length is incorrect.",
|
||||||
|
"EventCode": "0xE9",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x1",
|
||||||
|
"PEBScounters": "0,1,2,3",
|
||||||
|
"EventName": "DECODE_RESTRICTION.PREDECODE_WRONG",
|
||||||
|
"PDIR_COUNTER": "na",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Decode restrictions due to predicting wrong instruction length"
|
||||||
|
}
|
||||||
|
]
|
38
lib/libpmcstat/pmu-events/arch/x86/goldmontplus/memory.json
Normal file
38
lib/libpmcstat/pmu-events/arch/x86/goldmontplus/memory.json
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts when a memory load of a uop spans a page boundary (a split) is retired.",
|
||||||
|
"EventCode": "0x13",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"PEBScounters": "0,1,2,3",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.LOAD_PAGE_SPLIT",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Load uops that split a page (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"PEBS": "2",
|
||||||
|
"CollectPEBSRecord": "2",
|
||||||
|
"PublicDescription": "Counts when a memory store of a uop spans a page boundary (a split) is retired.",
|
||||||
|
"EventCode": "0x13",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x4",
|
||||||
|
"PEBScounters": "0,1,2,3",
|
||||||
|
"EventName": "MISALIGN_MEM_REF.STORE_PAGE_SPLIT",
|
||||||
|
"SampleAfterValue": "200003",
|
||||||
|
"BriefDescription": "Store uops that split a page (Precise event capable)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"CollectPEBSRecord": "1",
|
||||||
|
"PublicDescription": "Counts machine clears due to memory ordering issues. This occurs when a snoop request happens and the machine is uncertain if memory ordering will be preserved - as another core is in the process of modifying the data.",
|
||||||
|
"EventCode": "0xC3",
|
||||||
|
"Counter": "0,1,2,3",
|
||||||
|
"UMask": "0x2",
|
||||||
|
"PEBScounters": "0,1,2,3",
|
||||||
|
"EventName": "MACHINE_CLEARS.MEMORY_ORDERING",
|
||||||
|
"PDIR_COUNTER": "na",
|
||||||
|
"SampleAfterValue": "20003",
|
||||||
|
"BriefDescription": "Machine clears due to memory ordering issue"
|
||||||
|
}
|
||||||
|
]
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user