LIBPFM(3)
π LIBPFM(3) β bestie edition π
okay so this is a page from the Linux Programmer's Manual, section 3, and it's all about one little library entry: libpfm_intel_skx_unc_irp. she's giving very specific, very niche, and honestly? iconic. let's get into it π«Ά
β¨ NAME β¨
libpfm_intel_skx_unc_irp β support for Intel Broadwell Server IRP uncore PMU
bestie I'm literally just reading you what it says, no cap. the NAME line says Broadwell Server IRP uncore PMU, and the rest of the page says Skylake X Server IRP. I'm not gonna "fix" it for you, I'm just handing you the facts as they are π
πΈ SYNOPSIS πΈ
#include <perfmon/pfmlib.h>
- PMU name:
skx_unc_irp - PMU desc: Intel Skylake X Server IRP uncore PMU
π¦ DESCRIPTION π¦
so basically the library supports the Intel Skylake X Server IRP (IIO coherency) uncore PMU. that's the whole vibe. uncore PMU, IIO coherency, slay π
π MODIFIERS π
here's the part where it gets juicy β these are the modifiers supported on the Intel Skylake X server IRP uncore PMU:
eβ turns on edge detection, meaning it only counts when there's a state transition from zero occurrences of the event to at least one occurrence. β οΈ important: you must pair this with a threshold modifier (t) whose value is greater than or equal to one. it's a boolean modifier, so it's on or off, no in-between.tβ sets the threshold value. when you set it to something non-zero, the counter counts the number of cycles in which the number of occurrences of the event is greater than or equal to the threshold. this one's an integer modifier, and the values live in the range[0:255].iβ inverts the meaning of the threshold or edge filter. if you set it, the event counts when strictly less than N occurrences happen per cycle, where the threshold is set to N. if invert is set, then the threshold must be set to a non-zero value. and if edge detection is set, then setting this means the event counts when the event transitions from occurring to not occurring β that's the falling edge, periodt. this is a boolean modifier.
π AUTHORS π
- Stephane Eranian
<eranian@gmail.com>
and that's the whole page, bestie, we ate and left no crumbs π this was the LIBPFM(3) page from the Linux Programmer's Manual, dated January, 2018 β go forth and count your 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