|
PAPI
5.0.1.0
|
Stop counting hardware events in an event set. More...
| EventSet | -- an integer handle for a PAPI event set as created by PAPI_create_eventset |
| values | -- an array to hold the counter values of the counting events |
| 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_ENOTRUN | The EventSet is currently not running. |
PAPI_stop halts the counting of a previously defined event set and the counter values contained in that EventSet are copied into the values array Assumes an initialized PAPI library and a properly added event set.
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]);