man.bsd.lv manual page server

Manual Page Search Parameters

PMC_READ(3) Library Functions Manual PMC_READ(3)

pmc_read, pmc_rw, pmc_writeread and write hardware performance counters

library “libpmc”

#include <pmc.h>

int
pmc_read(pmc_id_t pmc, pmc_value_t *value);

int
pmc_rw(pmc_id_t pmc, pmc_value_t newvalue, pmc_value_t *oldvaluep);

int
pmc_write(pmc_id_t pmc, pmc_value_t value);

These functions read and write the current value of a PMC.

Function () will read the current value of the PMC specified by argument pmc and write it to the location specified by argument value.

Function () will set the current value of the PMC specified by argument pmc to the value specified by argument value.

Function () combines a read and a write into a single atomic operation.

For write operations the PMC should be a quiescent state.

Upon successful completion, the value 0 is returned; otherwise the value -1 is returned and the global variable errno is set to indicate the error.

A call to these functions may fail with the following errors:

[]
A write operation specified a currently running PMC.
[]
Argument pmc specified a PMC not in a readable state.
[]
The PMC specified by argument pmc was not owned by the current process.

pmc(3), hwpmc(4)

November 25, 2007 FreeBSD-12.0