LIBPFM(3)

πŸ’– LIBPFM(3) β€” the group chat edition πŸ’–

okay bestie, welcome to the Linux Programmer's Manual ✨ this one's all about libpfm_intel_hswep_unc_irp, and ngl it's niche but it ATE.


🌸 NAME 🌸

libpfm_intel_hswep_unc_irp β€” support for the Intel Haswell-EP IRP uncore PMU πŸŽ€


✨ SYNOPSIS ✨

#include <perfmon/pfmlib.h>
  • PMU name: hswep_unc_irp
  • PMU desc: Intel Haswell-EP IRP uncore PMU

πŸ¦‹ DESCRIPTION πŸ¦‹

So the library ships support for the Intel Haswell uncore PMU, and this particular PMU model is a whole rarity β€” it only exists on Haswell model 63. No other model, no substitutions, it's giving exclusive πŸ’…


πŸŽ€ MODIFIERS πŸŽ€

These are the modifiers you can use on the Intel Haswell IRP uncore PMU, bestie. Learn them, love them:

  • 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. This one's a boolean modifier, periodt ✨
  • t β€” sets the threshold value. When you set it to a non-zero value, the counter counts the number of cycles in which the number of occurrences of the event is greater than or equal to the threshold. It's an integer modifier, and the values live in the range [0:255] 🌈
  • 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, assuming threshold is set to N. Heads up though: when invert is set, threshold must be set to a non-zero value 🫢 If it's set alongside edge detection, the event counts when the event transitions from occurring to not occurring β€” that's a falling edge, iykyk. This one's a boolean modifier πŸ’œ

πŸ‘‘ AUTHORS πŸ‘‘

Stephane Eranian <eranian@gmail.com> β€” thank you icon, we owe you πŸ«‘πŸ’–


that's the whole vibe bestie, you're officially fluent πŸ’…πŸŒΈ

β€” with love from the Linux Programmer's Manual, LIBPFM(3), dated May, 2015 πŸŽ€βœ¨πŸ¦‹

πŸ“¦ where this page comes from