LIBPFM(3)
π LIBPFM_INTEL_BDX_UNC_IMC β ok bestie, let's talk uncore π
From the Linux Programmer's Manual, section 3, obviously β¨ this is libpfm_intel_bdx_unc_imc, and she's here to give you support for the Intel Broadwell Server Integrated Memory Controller (IMC) uncore PMU π§
πΈ SYNOPSIS πΈ
#include <perfmon/pfmlib.h>
PMU name: bdx_unc_imc[0-7]
PMU desc: Intel Broadwell Server IMC uncore PMU
Not the [0-7] bestie π
that's eight whole PMUs, she's got range.
π¦ DESCRIPTION π¦
So like, the library supports the Intel Broadwell Server Integrated Memory Controller (IMC) uncore PMU π periodt.
And okay real talk β this PMU model only exists on various Broadwell server models (79, 86). If you're not on one of those, this is giving β¨ nothing β¨ for you, no cap.
π MODIFIERS π
These are the modifiers supported on the Intel Broadwell server IMC uncore PMU, and bestie there are three, let's go π
eβ turns on edge detection, which is the fancy way of saying "count only when there's a state transition from no occurrence of the event to at least one occurrence." π¦ This one is a boolean modifier, and heads up: you must combine it with a threshold modifier (t) that has a value greater than or equal to one. Not optional, she's a package deal πtβ sets the threshold value. When you set it to a non-zero value, the counter counts the number of IMC cycles in which the number of occurrences of the event is greater than or equal to the threshold. This is an integer modifier with values in the range[0:255]π₯iβ inverts the meaning of the threshold or edge filter. If set, the event counts when strictly less than N occurrences occur per cycle, where the threshold is set to N. When invert is set, then the threshold must be set to a non-zero value. And if set while edge detection is on, the event counts when the event transitions from occurring to not occurring β the falling edge π This is a boolean modifier.
π lowkey the original manpage merged theimodifier into thetparagraph and it reads like one run-on sentence, but the facts are the facts and we're keeping every single one, periodt.
π AUTHORS π
Stephane Eranian <eranian@gmail.com> β the icon who made this, we stan π«Ά
June, 2017 π that's when this page dropped, LIBPFM(3) babe, and that's the whole thing. You ate, bestie, go count some IMC cycles πβ¨π
π¦ 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