Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

papi_flops(3) [centos man page]

PAPI_flops(3)							       PAPI							     PAPI_flops(3)

NAME
PAPI_flops - Simplified call to get Mflops/s (floating point operation rate), real and processor time. SYNOPSIS
Detailed Description C Interface: #include <papi.h> int PAPI_flops( float *rtime, float *ptime, long long *flpops, float *mflops ); Parameters: *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 Return values: 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. See Also: PAPI_flips() PAPI_ipc() PAPI_epc() PAPI_stop_counters() Author Generated automatically by Doxygen for PAPI from the source code. Version 5.2.0.0 Tue Jun 17 2014 PAPI_flops(3)

Check Out this Related Man Page

PAPI_epc(3)							       PAPI							       PAPI_epc(3)

NAME
PAPI_epc - Simplified call to get arbitrary events per cycle, real and processor time. SYNOPSIS
Detailed Description C Interface: #include <papi.h> int PAPI_epc( int event, float *rtime, float *ptime, long long *ref, long long *core, long long *evt, float *epc ); Parameters: event event code to be measured (0 defaults to PAPI_TOT_INS) *rtime total realtime since the first call *ptime total process time since the first call *ref incremental reference clock cycles since the last call *core incremental core clock cycles since the last call *evt total events since the first call *epc incremental events per cycle since the last call Return values: PAPI_EINVAL The counters were already started by something other than PAPI_epc(). PAPI_ENOEVNT One of the requested events does not exist. PAPI_ENOMEM Insufficient memory to complete the operation. The first call to PAPI_epc() will initialize the PAPI High Level interface, set up the counters to monitor the user specified event, PAPI_TOT_CYC, and PAPI_REF_CYC (if it exists) and start the counters. Subsequent calls will read the counters and return total real time, total process time, total event counts since the start of the measurement and the core and reference cycle count and EPC rate since the latest call to PAPI_epc(). 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_epc can provide a more detailed look at algorithm efficiency in light of clock variability in modern cpus. MFLOPS is no longer an adequate description of peak performance if clock rates can arbitrarily speed up or slow down. By allowing a user specified event and reporting reference cycles, core cycles and real time, PAPI_epc provides the information to compute an accurate effective clock rate, and an accurate measure of computational throughput. See Also: PAPI_flips() PAPI_flops() PAPI_ipc() PAPI_stop_counters() Author Generated automatically by Doxygen for PAPI from the source code. Version 5.2.0.0 Tue Jun 17 2014 PAPI_epc(3)
Man Page