PAPI_ipc - Man Page

Simplified call to get instructions per cycle, real and processor time.


Detailed Description

C Interface:

#include <papi.h>
int PAPI_ipc( float *rtime, float *ptime, long long *ins, float *ipc );


*rtime realtime since the latest call
*ptime process time since the latest call
*ins instructions since the latest call
*ipc incremental instructions per cycle since the latest call

Return values

PAPI_EINVAL The counters were already started by something other than PAPI_ipc().
PAPI_ENOEVNT The events PAPI_TOT_INS and PAPI_TOT_CYC are not supported.
PAPI_ENOMEM Insufficient memory to complete the operation.

The first call to PAPI_ipc() will initialize the PAPI interface, set up the counters to monitor PAPI_TOT_INS and PAPI_TOT_CYC events and start the counters.

Subsequent calls will read the counters and return real time, process time, instructions and the IPC rate since the latest call to PAPI_ipc().

PAPI_ipc() should return a ratio greater than 1.0, indicating instruction level parallelism within the chip. The larger this ratio the more effeciently the program is running. Note that PAPI_ipc() is thread-safe and can therefore be called by multiple threads.

See also






Generated automatically by Doxygen for PAPI from the source code.


Thu Jan 28 2021 Version PAPI