LIBPFM(3)

πŸ’– LIBPFM(3) β€” the Linux Programmer's Manual glow-up πŸ’–

okay bestie, welcome to the libpfm_intel_core page ✨ this is from the Linux Programmer's Manual, and it's all about making your Intel Core-based processors spill their performance-counter tea πŸ«–


🌸 NAME 🌸

libpfm_intel_core β€” support for Intel Core-based processors πŸ’…


✨ SYNOPSIS ✨

#include <perfmon/pfmlib.h>
  • PMU name: core
  • PMU desc: Intel Core

πŸ¦‹ DESCRIPTION πŸ¦‹

So the library is out here supporting every single Intel Core-based processor that exists, and that includes models 15, 23, and 29. all of them. no crumbs left. periodt πŸ’œ


πŸŽ€ MODIFIERS πŸŽ€

these are the modifiers that are supported on Intel Core processors β€” collect them all, they're iconic:

  • u β€” measure at user level, which includes privilege levels 1, 2, 3. this one corresponds to PFM_PLM3. it's a boolean modifier, so it's giving yes/no energy 🌸
  • k β€” measure at kernel level, which includes privilege level 0. this one corresponds to PFM_PLM0. also a boolean modifier, keep up bestie πŸ’«
  • i β€” invert the meaning of the event. the counter will now count cycles in which the event is not occurring. literally flipping the whole vibe. this is a boolean modifier πŸ™ˆ
  • 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. so it's the "something finally happened" detector πŸ”₯
⚠️ okay so this modifier must be combined with a counter mask modifier (m) with a value greater or equal to one. do not skip this step, i'm begging 😭

this is a boolean modifier.

  • c β€” set the counter mask value. the mask acts as a threshold. the counter will count the number of cycles in which the number of occurrences of the event is greater or equal to the threshold. it's giving "how many times do i have to see this before it counts" energy πŸ‘‘

this is an integer modifier with values in the range [0:255] πŸ’…


πŸ’Œ AUTHORS πŸ’Œ

Stephane Eranian <eranian@gmail.com> β€” the main character who made this happen πŸ«ΆπŸ‘‘


and that's the whole page bestie, no cap 🌈 September, 2009, from the Linux Programmer's Manual β€” LIBPFM(3), that's the source/version and the date right there, slay πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from