LIBPFM(3)
π LIBPFM π
okay bestie, so this is a page out of the Linux Programmer's Manual β third section, the library girlies β and it's all about one specific little PMU. grab a strawberry π and let's go.
β¨ NAME β¨
libpfm_intel_snbep_unc_r2pcie β the support squad for the Intel Sandy Bridge-EP R2 PCIe uncore PMU. that's it, that's the whole vibe. π
β¨ SYNOPSIS β¨
#include <perfmon/pfmlib.h>
PMU name: snbep_unc_r2pcie PMU desc: Intel Sandy Bridge-EP R2 PCIe uncore PMU
like, that's the name you'll be typing, no cap. π
πΈ DESCRIPTION πΈ
so the library supports the Intel Sandy Bridge R2 PCIe uncore PMU. π¦
and here's the tea you cannot skip: this PMU model only exists on Sandy Bridge model 45. that's it. model 45 or nothing. if you're on anything else, she's not there, don't go looking π
also? there is only one R2PCIe PMU per processor socket. one. singular. a whole socket and she's the only one. main character energy tbh π
β¨ MODIFIERS β¨
these are the modifiers supported on the Intel Sandy Bridge R2PCIe uncore PMU. they're little suffixes you tack onto events and honestly they ate:
iβ inverts the meaning of the event. the counter will now count R2 PCIe cycles in which the event is not occurring. yes, we're counting the absence. iconic. this is a boolean modifier β¨eβ enables edge detection, i.e. count only when there's a state transition from no occurrence of the event to at least one occurrence. β‘ careful though bestie: this modifier must be combined with a threshold modifier (t) with a value greater or equal to one. not, noe, that's the rule. this is a boolean modifier.tβ sets the threshold value. when set to a non-zero value, the counter counts the number of R2PCIe 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]. so like, fifteen max, she's got range but it's a bounded range π
π AUTHORS π
Stephane Eranian <eranian@gmail.com> β thank you for your service, king π«Ά
and that's the whole page, bestie!! slay π
this was LIBPFM(3) from the Linux Programmer's Manual, dated August, 2012. go forth and count some uncore events, ily πβ¨π
π¦ 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