int PAPI_flops_rate ( int event, float *rtime, float *ptime, long long *flpops, float *mflops );
event one of the three presets PAPI_FP_OPS, PAPI_SP_OPS or PAPI_DP_OPS
*rtime realtime since the latest call
*ptime process time since the latest call
*flpops floating point operations since the latest call
*mflops incremental (Mega) floating point operations per seconds since the latest call
- Return values
PAPI_EINVAL The counters were already started by something other than PAPI_flops_rate().
PAPI_ENOEVNT The floating point operations event does not exist.
PAPI_ENOMEM Insufficient memory to complete the operation.
The first call to PAPI_flops_rate() will initialize the PAPI interface, set up the counters to monitor the floating point operations event and start the counters.
Subsequent calls will read the counters and return real time, process time, floating point operations and the Mflop/s rate since the latest call to PAPI_flops_rate().
PAPI_flops_rate() returns information related to theoretical floating point operations rather than simple instructions. It uses the floating point operations event which attempts to 'correctly' account for, e.g., FMA undercounts and FP Store overcounts. Note that PAPI_flops_rate() is thread-safe and can therefore be called by multiple threads.
- See also
Generated automatically by Doxygen for PAPI from the source code.