Command Section

PMC_READ(3)            FreeBSD Library Functions Manual            PMC_READ(3)

NAME
     pmc_read, pmc_rw, pmc_write - read and write hardware performance
     counters

LIBRARY
     Performance Counters Library (libpmc, -lpmc)

SYNOPSIS
     #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);

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

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

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

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

     For write operations the PMC should be a quiescent state.

RETURN VALUES
     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.

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

     [EBUSY]            A write operation specified a currently running PMC.

     [EINVAL]           Argument pmc specified a PMC not in a readable state.

     [EINVAL]           The PMC specified by argument pmc was not owned by the
                        current process.

SEE ALSO
     pmc(3), hwpmc(4)

FreeBSD 13.1-RELEASE-p6        November 25, 2007       FreeBSD 13.1-RELEASE-p6

Command Section

man2web Home...