Blame src/libpfm4/docs/man3/libpfm_intel_ivbep_unc_cbo.3

Packit 577717
.TH LIBPFM 3  "February, 2014" "" "Linux Programmer's Manual"
Packit 577717
.SH NAME
Packit 577717
libpfm_intel_ivbep_unc_cbo - support for Intel Ivy Bridge-EP C-Box uncore PMU
Packit 577717
.SH SYNOPSIS
Packit 577717
.nf
Packit 577717
.B #include <perfmon/pfmlib.h>
Packit 577717
.sp
Packit 577717
.B PMU name: ivbep_unc_cbo[0-7]
Packit 577717
.B PMU desc: Intel Ivy Bridge-EP C-Box uncore PMU
Packit 577717
.sp
Packit 577717
.SH DESCRIPTION
Packit 577717
The library supports the Intel Ivy Bridge C-Box (coherency engine) uncore PMU.
Packit 577717
This PMU model only exists on Ivy Bridge model 62. There is one C-box
Packit 577717
PMU per physical core. Therefore there are up to fifteen identical C-Box PMU instances
Packit 577717
numbered from 0 to 14. On dual-socket systems, the number refers to the C-Box
Packit 577717
PMU on the socket where the program runs. For instance, if running on CPU15, then
Packit 577717
ivbep_unc_cbo0 refers to the C-Box for physical core 0 on socket 1. Conversely,
Packit 577717
if running on CPU0, then the same ivbep_unc_cbo0 refers to the C-Box for physical
Packit 577717
core 0 but on socket 0.
Packit 577717
Packit 577717
Each C-Box PMU implements 4 generic counters and two filter registers used only
Packit 577717
with certain events and umasks.
Packit 577717
Packit 577717
.SH MODIFIERS
Packit 577717
The following modifiers are supported on Intel Ivy Bridge C-Box uncore PMU:
Packit 577717
.TP
Packit 577717
.B e
Packit 577717
Enable edge detection, i.e., count only when there is a state transition from no occurrence of the event to at least one occurrence. This modifier must be combined with a threshold modifier (t) with a value greater or equal to one.  This is a boolean modifier.
Packit 577717
.TP
Packit 577717
.B t
Packit 577717
Set the threshold value. When set to a non-zero value, the counter counts the number
Packit 577717
of C-Box cycles in which the number of occurrences of the event is greater or equal to
Packit 577717
the threshold.  This is an integer modifier with values in the range [0:255].
Packit 577717
.TP
Packit 577717
.B nf
Packit 577717
Node filter. Certain events, such as UNC_C_LLC_LOOKUP, UNC_C_LLC_VICTIMS, provide a \fBNID\fR umask.
Packit 577717
Sometimes the \fBNID\fR is combined with other filtering capabilities, such as opcodes.
Packit 577717
The node filter is an 8-bit max bitmask. A node corresponds to a processor
Packit 577717
socket. The legal values therefore depend on the underlying hardware configuration. For
Packit 577717
dual-socket systems, the bitmask has two valid bits [0:1].
Packit 577717
.TP
Packit 577717
.B cf
Packit 577717
Core Filter. This is a 3-bit filter which is used to filter based on physical core origin
Packit 577717
of the C-Box request. Possible values are 0-7. If the filter is not specified, then no
Packit 577717
filtering takes place.
Packit 577717
.TP
Packit 577717
.B tf
Packit 577717
Thread Filter. This is a 1-bit filter which is used to filter C-Box requests based on logical
Packit 577717
processor (hyper-thread) identification. Possibles values are 0-1. If the filter is not
Packit 577717
specified, then no filtering takes place.
Packit 577717
.TP
Packit 577717
.B nc
Packit 577717
Non-Coherent. This is a 1-bit filter which is used to filter C-Box requests only for the
Packit 577717
TOR_INSERTS and TOR_OCCUPANCY umasks using the OPCODE matcher. If the filter is not
Packit 577717
specified, then no filtering takes place.
Packit 577717
.TP
Packit 577717
.B isoc
Packit 577717
Isochronous. This is a 1-bit filter which is used to filter C-Box requests only for the
Packit 577717
TOR_INSERTS and TOR_OCCUPANCY umasks using the OPCODE matcher. If the filter is not
Packit 577717
specified, then no filtering takes place.
Packit 577717
Packit 577717
.SH Opcode filtering
Packit 577717
Packit 577717
Certain events, such as UNC_C_TOR_INSERTS supports opcode matching on the C-BOX transaction
Packit 577717
type. To use this feature, first an opcode matching umask must be selected, e.g., MISS_OPCODE.
Packit 577717
Second, the opcode to match on must be selected via a second umask among the OPC_* umasks.
Packit 577717
For instance, UNC_C_TOR_INSERTS:OPCODE:OPC_RFO, counts the number of TOR insertions for RFO
Packit 577717
transactions. 
Packit 577717
Packit 577717
Opcode matching may be combined with node filtering with certain umasks. In general, the
Packit 577717
filtering support is encoded into the umask name, e.g., NID_OPCODE supports both
Packit 577717
node and opcode filtering. For instance, UNC_C_TOR_INSERTS:NID_OPCODE:OPC_RFO:nf=1.
Packit 577717
Packit 577717
.SH AUTHORS
Packit 577717
.nf
Packit 577717
Stephane Eranian <eranian@gmail.com>
Packit 577717
.if
Packit 577717
.PP