LIBPFM(3) Linux Programmer's Manual LIBPFM(3)NAMElibpfm_intel_snbep_unc_ubo - support for Intel Sandy Bridge-EP U-Box
uncore PMU
SYNOPSIS
#include <perfmon/pfmlib.h>
PMU name: snbep_unc_ubo
PMU desc: Intel Sandy Bridge-EP U-Box uncore PMU
DESCRIPTION
The library supports the Intel Sandy Bridge system configuration unit
(U-Box) uncore PMU. This PMU model only exists on Sandy Bridge model
45. There is only one U-Box PMU per processor socket.
MODIFIERS
The following modifiers are supported on Intel Sandy Bridge U-Box
uncore PMU:
i Invert the meaning of the event. The counter will now count HA
cycles in which the event is not occurring. This is a boolean
modifier
e 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 mod‐
ifier (t) with a value greater or equal to one. This is a bool‐
ean modifier.
t Set the threshold value. When set to a non-zero value, the
counter counts the number of HA cycles in which the number of
occurrences of the event is greater or equal to the threshold.
This is an integer modifier with values in the range [0:15].
oi Invert the meaning of the occupancy event POWER_STATE_OCCUPANCY.
The counter will now count PCU cycles in which the event is not
occurring. This is a boolean modifier
oe Enable edge detection for the occupancy event POWER_STATE_OCCU‐
PANCY. The event now counts only when there is a state transi‐
tion 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 modi‐
fier.
ff Enable frequency band filtering. This modifier applies only to
the UNC_P_FREQ_BANDx_CYCLES events, where x is [0-3]. The modi‐
fiers expects an integer in the range [0-255]. The value is
interpreted as a frequency value to be multipled by 100Mhz. Thus
if the value is 32, then all cycles where the processor is run‐
ning at 3.2GHz and more are counted.
Frequency band filtering
There are 3 events which support frequency band filtering, namely,
UNC_P_FREQ_BAND0_CYCLES, UNC_P_FREQ_BAND1_CYCLES,
UNC_P_FREQ_BAND2_CYCLES, UNC_P_FREQ_BAND3_CYCLES. The frequency filter
(available via the ff modifier) is stored into a PMU shared register
which hold all 4 possible frequency bands, one per event. However, the
library generate the encoding for each event individually because it
processes events one at a time. The caller or the underlying kernel
interface may have to merge the band filter settings to program the
filter register properly.
AUTHORS
Stephane Eranian <eranian@gmail.com>
August, 2012 LIBPFM(3)