PAPI_start(3)

NAME
PAPI_start - Start counting hardware events in an event set.

SYNOPSIS

Detailed Description

C Interface:
    #include <papi.h>
     int PAPI_start( int EventSet );

Parameters
    EventSet -- an integer handle for a PAPI event set as created by PAPI_create_eventset

Return values
    PAPI_OK
    PAPI_EINVAL -- One or more of the arguments is invalid.
    PAPI_ESYS -- A system or C library call failed inside PAPI, see the errno variable.
    PAPI_ENOEVST -- The EventSet specified does not exist.
    PAPI_EISRUN -- The EventSet is currently counting events.
    PAPI_ECNFLCT -- The underlying counter hardware can not count this event and other events in the EventSet simultaneously.
    PAPI_ENOEVNT -- The PAPI preset is not available on the underlying hardware.

PAPI_start starts counting all of the hardware events contained in the previously defined EventSet. All counters are implicitly set to zero before counting. Assumes an initialized PAPI library and a properly added event set.

Example:

    int EventSet = PAPI_NULL;
    long long values[2];
    int ret;

    ret = PAPI_create_eventset(&EventSet);
    if (ret != PAPI_OK) handle_error(ret);

    // Add Total Instructions Executed to our EventSet
    ret = PAPI_add_event(EventSet, PAPI_TOT_INS);
    if (ret != PAPI_OK) handle_error(ret);

    // Start counting
    ret = PAPI_start(EventSet);
    if (ret != PAPI_OK) handle_error(ret);
    poorly_tuned_function();
    ret = PAPI_stop(EventSet, values);
    if (ret != PAPI_OK) handle_error(ret);
    printf("%lld\\n",values[0]);

See also
    PAPI_create_eventset PAPI_add_event PAPI_stop

Author

Generated automatically by Doxygen for PAPI from the source code.