Simplified call to get Mflops/s (floating point operation rate), real and processor time. More...
|*rtime||total realtime since the first call|
|*ptime||total process time since the first call|
|*flpops||total floating point operations since the first call|
|*mflops||incremental (Mega) floating point operations per seconds since the last call|
|PAPI_EINVAL||The counters were already started by something other than PAPI_flops().|
|PAPI_ENOEVNT||The floating point operations event does not exist.|
|PAPI_ENOMEM||Insufficient memory to complete the operation.|
The first call to PAPI_flops() will initialize the PAPI High Level interface, set up the counters to monitor the PAPI_FP_OPS event and start the counters.
Subsequent calls will read the counters and return total real time, total process time, total floating point operations since the start of the measurement and the Mflop/s rate since latest call to PAPI_flops(). A call to PAPI_stop_counters() will stop the counters from running and then calls such as PAPI_start_counters() or other rate calls can safely be used.
PAPI_flops returns information related to theoretical floating point operations rather than simple instructions. It uses the PAPI_FP_OPS event which attempts to 'correctly' account for, e.g., FMA undercounts and FP Store overcounts, etc.