LIBPFM(3)

NAME
pfm_set_options - set performance monitoring library debug options

SYNOPSIS
#include <perfmon/pfmlib.h>

int pfm_set_options(pfmlib_options_t *opt);

DESCRIPTION
This function can be called at any time to adjust the level of debug of the library. In both cases, extra output will be generated on standard error when the library gets called. This can be useful to figure out how the PMC registers are initialized for instance.

The opt argument to this function is a pointer to a pfmlib_options_t structure which is defined as follows:

typedef struct {
	unsigned int	pfm_debug:1;
	unsigned int	pfm_verbose:1;
} pfmlib_options_t;

Setting pfm_debug to 1 will enable debug messages whereas setting pfm_verbose will enable verbose messages.

ENVIRONMENT VARIABLES
Setting library options with this function has lower priority than with environment variables. As such, the call to this function may not have any actual effects. A user can set the following environment variables to control verbosity and debug output:

LIBPFM_VERBOSE
    Enable verbose output. Value must be 0 or 1. When not set, verbosity level can be controlled with this function.

LIBPFM_DEBUG
    Enable debug output. Value must be 0 or 1. When not set, debug level can be controlled with this function.

RETURN
The function returns whether or not it was successful. A return value of PFMLIB_SUCCESS indicates success, otherwise the value is the error code.

When environment variables exist, they take precedence and this function returns PFMLIB_SUCCESS.

ERRORS

PFMLIB_ERR_INVAL
    the argument is invalid, most likely a NULL pointer.

AUTHOR
Stephane Eranian <eranian@hpl.hp.com>