LIBPFM(3)
π LIBPFM(3) π
okay bestie, welcome to the Linux Programmer's Manual, section 3, page LIBPFM(3) β and yes we're doing the deep lore today π«Ά
β¨ NAME β¨
libpfm_intel_hswep_unc_qpi β the whole entire support for the Intel Haswell-EP QPI uncore PMU πΈ
π SYNOPSIS π
#include <perfmon/pfmlib.h>
PMU name: hswep_unc_qpi0, hswep_unc_qpi1
PMU desc: Intel Haswell-EP QPI uncore PMU
like. that's the whole vibe check up top. two PMU names, one desc, iconic π
π¦ DESCRIPTION π¦
so this library supports the Intel Haswell Power QPI uncore PMU π and listen β this PMU model only exists on Haswell model 63. that's it. that's the whole gatekeeping. if you're not on model 63 this page is not for you, no cap π
π MODIFIERS π
these are the modifiers supported on the Haswell Bridge QPI uncore PMU β¨ (yes, Bridge, that's what it says, I don't make the rules):
eβ turns on edge detection, meaning it only counts when there's a state transition from no occurrence of the event to at least one occurrence π. heads up bestie: this modifier must be combined with a threshold modifier (t) whose value is greater than or equal to one. it's a boolean modifier, so it's giving on/off energy.tβ sets the threshold value ποΈ. when you set it to a non-zero value, the counter counts the number of QPI cycles in which the number of occurrences of the event is greater than or equal to the threshold. it's an integer modifier, values in the range[0:255]. periodt.iβ inverts the meaning of the threshold or edge filter π. if it's set, the event counts when strictly less than N occurrences happen per cycle, when the threshold is set to N. and when invert is set, the threshold must be set to a non-zero value β no zero, I'm serious. also: if it's set, the event counts when the event transitions from occurring to not occurring (that's a falling edge, gorgeous) when edge detection is set. it's a boolean modifier π
π AUTHORS π
Stephane Eranian <eranian@gmail.com> β shoutout to the author, the main character of this page fr fr π«Ά
okay that's the whole page, every flag and every rule, nothing skipped, we ate π
and for the cute sign-off: this one's from the Linux Programmer's Manual, page LIBPFM(3), dated May, 2015 β oldie but a goodie, mwah ππβ¨
π¦ where this page comes from
- arch rolling: libpfm 4.14.1-1 Β· MIT
- centos-stream 10: libpfm-devel 4.14.1-1.el10 Β· MIT
- centos-stream 9: libpfm-devel 4.14.1-1.el9 Β· MIT
- centos-stream 9: libpfm-devel 4.14.1-1.el9 Β· MIT
- debian bookworm: libpfm4-dev 4.13.0-1 Β· MIT
- debian trixie: libpfm4-dev 4.13.0+git99-gc5587f9-1 Β· MIT
- fedora 43: libpfm-devel 4.13.0-16.fc43 Β· MIT
- fedora 43: libpfm-devel 4.13.0-16.fc43 Β· MIT
- fedora 43: libpfm-devel 4.13.0-20.fc43
- fedora 43: libpfm-devel 4.13.0-20.fc43
- fedora 43: libpfm-devel 4.14.1-2.fc43 Β· MIT
- fedora 43: libpfm-devel 4.14.1-2.fc43 Β· MIT
- fedora 44: libpfm-devel 4.13.0-19.fc44 Β· MIT
- fedora 44: libpfm-devel 4.13.0-19.fc44 Β· MIT
- fedora 44: libpfm-devel 4.13.0-20.fc44
- fedora 44: libpfm-devel 4.13.0-20.fc44
- fedora 44: libpfm-devel 4.14.1-2.fc44 Β· MIT
- fedora 44: libpfm-devel 4.14.1-2.fc44 Β· MIT
- nixos 26.05: papi 7.2.0
- nixpkgs unstable: libpfm 4.14.1
- nixpkgs unstable: papi 7.2.0
- opensuse-leap 16.0: libpfm-devel 4.13.0-160000.3.1 Β· MIT
- ubuntu jammy: libpfm4-dev 4.11.1+git32-gd0b85fb-1 Β· BSD-like
- ubuntu jammy: libpfm4-dev 4.11.1+git32-gd0b85fb-1ubuntu0.1 Β· BSD-like
- ubuntu noble: libpfm4-dev 4.13.0+git32-g0d4ed0e-1 Β· MIT
- ubuntu noble: libpfm4-dev 4.13.0+git32-g0d4ed0e-1ubuntu0.1 Β· MIT
- ubuntu questing: libpfm4-dev 4.13.0+git99-gc5587f9-1
- ubuntu resolute: libpfm4-dev 4.13.0+git106-g3e4031b-1 Β· MIT
- ubuntu resolute: libpfm4-dev 4.13.0+git106-g3e4031b-1ubuntu0.1 Β· MIT
- ubuntu stonking: libpfm4-dev 4.13.0+git106-g3e4031b-1ubuntu1 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms