LIBPFM(3)

πŸ’– LIBPFM πŸ’–

okay bestie, this is a page from the Linux Programmer's Manual, section 3 (that's the library-calls girlies, iykyk). it's all about libpfm_arm_ac15, which is the bit of libpfm that holds space for the Qualcomm Krait PMU. yes it's niche. yes it's iconic. let's get into it πŸŽ€


✨ NAME ✨

libpfm_arm_ac15 β€” the support module for the Qualcomm Krait PMU. that's it, that's the whole job, and she does it flawlessly πŸ’…


🌸 SYNOPSIS 🌸

so like, here's how you actually pull her into your code:

#include <perfmon/pfmlib.h>

and the deets you need to know about the PMU herself:

PMU name: qcom_krait
PMU desc: Qualcomm Krait

keep those strings exact, bestie, they're how the library finds her 🫢


πŸ¦‹ DESCRIPTION πŸ¦‹

the library ships support for the Qualcomm Krait core PMU. that's the whole vibe. main character energy, no notes.

now the fun part: this PMU gives you 5 counters to play with, and she does privilege levels filtering too β€” so you get to decide whose activity you're watching. lowkey powerful. πŸ”₯


πŸ‘‘ MODIFIERS πŸ‘‘

these are the little suffixes you can slap onto an event to shape how it measures. all three are boolean modifiers β€” meaning it's a yes/no situation, on or off, no in-between, periodt:

  • u β€” measure at the user level. this maps to PFM_PLM3. boolean modifier, so it's just vibes: present or not ✨
  • k β€” measure at the kernel level. this maps to PFM_PLM0. also a boolean modifier πŸ’œ
  • hv β€” measure at the hypervisor level. this maps to PFM_PLMH. yep, boolean modifier too, she's consistent 🧚

πŸ’« AUTHORS πŸ’«

Stephane Eranian <eranian@gmail.com> β€” thank you for your service, king 🫑


and that's the whole page, bestie!! the Linux Programmer's Manual, dated January, 2014, page LIBPFM(3). go forth and profile something cute πŸŒˆπŸ’–