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

Packit 577717
.TH LIBPFM 3  "September, 2009" "" "Linux Programmer's Manual"
Packit 577717
.SH NAME
Packit 577717
libpfm_intel_wsm - support for Intel Westmere core PMU
Packit 577717
.SH SYNOPSIS
Packit 577717
.nf
Packit 577717
.B #include <perfmon/pfmlib.h>
Packit 577717
.sp
Packit 577717
.B PMU name: wsm
Packit 577717
.B PMU desc: Intel Westmere
Packit 577717
.B PMU name: wsm_dp
Packit 577717
.B PMU desc: Intel Westmere DP
Packit 577717
.sp
Packit 577717
.SH DESCRIPTION
Packit 577717
The library supports the Intel Westmere core PMU. It should be noted that
Packit 577717
this PMU model only covers the each core's PMU and not the socket level
Packit 577717
PMU. It is provided separately. Support is provided for the Intel Core i7
Packit 577717
and Core i5 processors (models 37, 44).
Packit 577717
Packit 577717
.SH MODIFIERS
Packit 577717
The following modifiers are supported on Intel Westmere processors:
Packit 577717
.TP
Packit 577717
.B u
Packit 577717
Measure at user level which includes privilege levels 1, 2, 3. This corresponds to \fBPFM_PLM3\fR.
Packit 577717
This is a boolean modifier.
Packit 577717
.TP
Packit 577717
.B k
Packit 577717
Measure at kernel level which includes privilege level 0. This corresponds to \fBPFM_PLM0\fR.
Packit 577717
This is a boolean modifier.
Packit 577717
.TP
Packit 577717
.B i
Packit 577717
Invert the meaning of the event. The counter will now count cycles in which the event is \fBnot\fR
Packit 577717
occurring. This is a boolean modifier
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
Packit 577717
to at least one occurrence. This modifier must be combined with a counter mask modifier (m) with a value greater or equal to one.
Packit 577717
This is a boolean modifier.
Packit 577717
.TP
Packit 577717
.B c
Packit 577717
Set the counter mask value. The mask acts as a threshold. The counter will count the number of cycles
Packit 577717
in which the number of occurrences of the event is greater or equal to the threshold. This is an integer
Packit 577717
modifier with values in the range [0:255].
Packit 577717
.TP
Packit 577717
.B t
Packit 577717
Measure on both threads at the same time assuming hyper-threading is enabled. This is a boolean modifier.
Packit 577717
.TP
Packit 577717
.B ldlat
Packit 577717
Pass a latency threshold to the MEM_INST_RETIRED:LATENCY_ABOVE_THRESHOLD event.
Packit 577717
This is an integer attribute that must be in the range [3:65535]. It is required
Packit 577717
for this event.  Note that the event must be used with precise sampling (PEBS).
Packit 577717
Packit 577717
.SH OFFCORE_RESPONSE events
Packit 577717
The library is able to encode the OFFCORE_RESPONSE_0 and OFFCORE_RESPONSE_1 events.
Packit 577717
Those are special events because they, each, need a second MSR (0x1a6 and 0x1a7 respectively)
Packit 577717
to be programmed for the event to count properly. Thus two values are necessary for each event.
Packit 577717
The first value can be programmed on any of the generic counters. The second value goes into
Packit 577717
the dedicated MSR (0x1a6 or 0x1a7).
Packit 577717
Packit 577717
The OFFCORE_RESPONSE events are exposed as normal events with several umasks which are divided in
Packit 577717
two groups: request and response. The user must provide \fBat least\fR one umask from each group.
Packit 577717
For instance, OFFCORE_RESPONSE_0:ANY_DATA:LOCAL_DRAM.
Packit 577717
Packit 577717
When using \fBpfm_get_event_encoding()\fR, two 64-bit values are returned. The first value
Packit 577717
corresponds to what needs to be programmed into any of the generic counters. The second value
Packit 577717
must be programmed into the corresponding dedicated MSR (0x1a6 or 0x1a7).
Packit 577717
Packit 577717
When using an OS-specific encoding routine, the way the event is encoded is OS specific. Refer to
Packit 577717
the corresponding man page for more information.
Packit 577717
Packit 577717
.SH AUTHORS
Packit 577717
.nf
Packit 577717
Stephane Eranian <eranian@gmail.com>
Packit 577717
.if
Packit 577717
.PP