libpfm_intel_hswep_unc_pcu(3) — Linux manual page


LIBPFM(3)                 Linux Programmer's Manual                LIBPFM(3)

NAME         top

       libpfm_intel_hswep_unc_pcu  - support for Intel Haswell-EP Power Con‐
       troller Unit (PCU) uncore PMU

SYNOPSIS         top

       #include <perfmon/pfmlib.h>

       PMU name: hswep_unc_pcu
       PMU desc: Intel Haswell-EP PCU uncore PMU

DESCRIPTION         top

       The library supports the Intel Haswell Power Controller Unit uncore
       PMU.  This PMU model only exists on Haswell model 63.

MODIFIERS         top

       The following modifiers are supported on Intel Haswell PCU uncore

       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
              modifier (t) with a value greater or equal to one.  This is a
              boolean 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].

       i      Invert the meaning of the threshold or edge filter. If set,
              the event counts when strictly less than N occurrences occur
              per cycle if threshold is set to N. When invert is set, then
              threshold must be set to non-zero value. If set, the event
              counts when the event transitions from occurring to not
              occurring (falling edge) when edge detection is set. This is a
              boolean modifier

       ff     Enable frequency band filtering. This modifier applies only to
              the UNC_P_FREQ_BANDx_CYCLES events, where x is [0-3].  The
              modifiers expects an integer in the range [0-255]. The value
              is interpreted as a frequency value to be multiplied by
              100Mhz. Thus if the value is 32, then all cycles where the
              processor is running at 3.2GHz and more are counted.

Frequency band filtering         top

       There are 3 events which support frequency band filtering, namely,
       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         top

       Stephane Eranian <>

COLOPHON         top

       This page is part of the perfmon2 (a performance monitoring library)
       project.  Information about the project can be found at 
       ⟨⟩.  If you have a bug report for this
       manual page, send it to  This
       page was obtained from the project's upstream Git repository
       ⟨git:// perfmon2-libpfm4⟩ on
       2020-09-18.  (At that time, the date of the most recent commit that
       was found in the repository was 2020-08-25.)  If you discover any
       rendering problems in this HTML version of the page, or you believe
       there is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to

                                  May, 2015                        LIBPFM(3)