PAPI_set_opt(3)

NAME
PAPI_set_opt -

Set PAPI library or event set options.

SYNOPSIS

Detailed Description

C Interface:
    #include <papi.h>
     int PAPI_set_opt( int option, PAPI_option_t * ptr );

Parameters:
    option Defines the option to be set. Possible values are briefly described in the table below.
    ptr Pointer to a structure determined by the selected option. See PAPI_option_t for a description of possible structures.

Return values:
    PAPI_OK
    PAPI_EINVAL The specified option or parameter is invalid.
    PAPI_ENOEVST The EventSet specified does not exist.
    PAPI_EISRUN The EventSet is currently counting events.
    PAPI_ECMP The option is not implemented for the current component.
    PAPI_ENOINIT PAPI has not been initialized.
    PAPI_EINVAL_DOM Invalid domain has been requested.

PAPI_set_opt() changes the options of the PAPI library or a specific EventSet created by PAPI_create_eventset. Some options may require that the EventSet be bound to a component before they can execute successfully. This can be done either by adding an event or by explicitly calling PAPI_assign_eventset_component.

Ptr is a pointer to the PAPI_option_t structure, which is actually a union of different structures for different options. Not all options require or return information in these structures. Each requires different values to be set. Some options require a component index to be provided. These options are handled implicitly through the option structures.

Note:
    Some options, such as PAPI_DOMAIN and PAPI_MULTIPLEX are also available as separate entry points in both C and Fortran.

The reader is encouraged to peruse the ctests code in the PAPI distribution for examples of usage of PAPI_set_opt.

Possible values for the PAPI_set_opt option parameter

     OPTION     DEFINITION
     PAPI_DEFDOM    Set default counting domain for newly created event sets. Requires a
                        component index.
     PAPI_DEFGRN    Set default counting granularity. Requires a component index.
     PAPI_DEBUG    Set the PAPI debug state and the debug handler. The debug state is
                        specified in ptr->debug.level. The debug handler is specified in
                        ptr->debug.handler. For further information regarding debug states and
                        the behavior of the handler, see PAPI_set_debug.
     PAPI_MULTIPLEX    Enable specified EventSet for multiplexing.
     PAPI_DEF_ITIMER    Set the type of itimer used in software multiplexing, overflowing
                        and profiling.
     PAPI_DEF_MPX_NS    Set the sampling time slice in nanoseconds for multiplexing and overflow.
     PAPI_DEF_ITIMER_NS See PAPI_DEF_MPX_NS.
     PAPI_ATTACH    Attach EventSet specified in ptr->attach.eventset to thread or process id
                        specified in in ptr->attach.tid.
     PAPI_CPU_ATTACH    Attach EventSet specified in ptr->cpu.eventset to cpu specified in in
                        ptr->cpu.cpu_num.
     PAPI_DETACH    Detach EventSet specified in ptr->attach.eventset from any thread
                        or process id.
     PAPI_DOMAIN    Set domain for EventSet specified in ptr->domain.eventset.
                        Will error if eventset is not bound to a component.
     PAPI_GRANUL    Set granularity for EventSet specified in ptr->granularity.eventset.
                        Will error if eventset is not bound to a component.
     PAPI_INHERIT    Enable or disable inheritance for specified EventSet.
     PAPI_DATA_ADDRESS    Set data address range to restrict event counting for EventSet specified
                        in ptr->addr.eventset. Starting and ending addresses are specified in
                        ptr->addr.start and ptr->addr.end, respectively. If exact addresses
                        cannot be instantiated, offsets are returned in ptr->addr.start_off and
                        ptr->addr.end_off. Currently implemented on Itanium only.
     PAPI_INSTR_ADDRESS    Set instruction address range as described above. Itanium only.

See also:
    PAPI_set_debug

    PAPI_set_multiplex

    PAPI_set_domain

    PAPI_option_t

Author

Generated automatically by Doxygen for PAPI from the source code.