|
  PAPI3:PAPI get virt cyc.3
| |
ViewsFrom PAPIDocs
(Redirected from PAPI3:PAPI get virt usec.3)
NAME
SynopsisC Interface #include <papi.h> long_long PAPI_get_virt_cyc(void); long_long PAPI_get_virt_usec(void); Fortran Interface #include <papi.h> long_long PAPI_get_virt_cyc(void); long_long PAPI_get_virt_usec(void); #include fpapi.h PAPIF_get_virt_usec(C_LONG_LONG time) PAPIF_get_virt_cyc(C_LONG_LONG virt_cyc) DescriptionBoth of these functions return the total number of virtual units from some arbitrary starting point. Virtual units accrue every time the process is running in user-mode on behalf of the process. Like the real time counters, these are guaranteed to exist on every platform PAPI supports. However on some platforms, the resolution can be as bad as 1/Hz as defined by the operating system. ErrorsThe functions returns PAPI_ECNFLCT if there is no master event set. This will happen if the library has not been initialized, or for threaded applications, if there has been no thread id function defined by the PAPI_thread_init\ function. For threaded applications, if there has not yet been any thread specific master event created for the current thread, and if the allocation of such an event set fails, the call will return PAPI_ENOMEM or PAPI_ESYS . BugsThese functions have no known bugs. EXAMPLE s = PAPI_get_virt_cyc();
your_slow_code();
e = PAPI_get_virt_cyc();
printf("Process has run for cycles: %lld\en",e-s);
==See Also==
[[PAPI3:PAPIF.3 | PAPIF(3)]],[[PAPI3:PAPI.3 | PAPI(3)]],[[PAPI3:PAPI_get_real_cyc.3 | PAPI_get_real_cyc(3)]],[[PAPI3:PAPI_get_real_usec.3 | PAPI_get_real_usec(3)]],[[PAPI3:PAPI_library_init.3 | PAPI_library_init(3)]]
[[Category : PAPI_Classic_Manual|PAPI_get_virt_cyc.3]]
|