pmc.soft(3)

pmc.soft3

Measurements using software based events

Usage

#include <pmc.h>

Library

library “libpmc”

Overview

Software events are used to collect various source of software events.

PMC Features

16 sampling counters using software events based on various sources. These PMCs support the following capabilities:

CapabilitySupport
PMC_CAP_CASCADENo
PMC_CAP_EDGENo
PMC_CAP_INTERRUPTYes
PMC_CAP_INVERTNo
PMC_CAP_READYes
PMC_CAP_PRECISENo
PMC_CAP_SYSTEMYes
PMC_CAP_TAGGINGNo
PMC_CAP_THRESHOLDNo
PMC_CAP_USERYes
PMC_CAP_WRITEYes

Event Qualifiers

There is no supported event qualifier.

The event specifiers supported by software are:

CLOCK.HARD

Hard clock ticks.

CLOCK.STAT

Stat clock ticks.

CLOCK.PROF

Profiling clock ticks.

INTR.ALL

Interrupt filter executed

INTR.FILTER

Interrupt filter returned FILTER_HANDLED.

INTR.ITHREAD

Interrupt filter returned FILTER_SCHEDULE_ITHREAD.

INTR.SCHEDULE

Ithread scheduled.

INTR.STRAY

Interrupt filter returned FILTER_STRAY.

INTR.WAITING

Ithread not scheduled, already active.

LOCK.FAILED

Lock acquisition failed.

PAGE_FAULT.ALL

All page fault type.

PAGE_FAULT.READ

Read page fault.

PAGE_FAULT.WRITE

Write page fault.

Releases

33 releases since FreeBSD 9.1-RELEASE; the text changed 23 times.

  1. 9.1
  2. 9.2
  3. 9.3
  4. 10.0
  5. 10.1
  6. 10.2
  7. 10.3
  8. 10.4
  9. 11.0
  10. 11.1
  11. 11.2
  12. 11.3
  13. 11.4
  14. 12.0
  15. 12.1
  16. 12.2
  17. 12.3
  18. 12.4
  19. 13.0
  20. 13.1
  21. 13.2
  22. 13.3–14.5
  23. 15.0–15.1
  24. 16.0

History

The pmc library first appeared in FreeBSD 6.0.

Authors

The library “libpmc” library was written by Joseph Koshy ⟨[email protected]⟩. Software PMC was written by Fabien Thomas ⟨[email protected]⟩.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.