MACSio  0.9
Multi-purpose, Application-Centric, Scalable I/O Proxy App
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
macsio_timing.h File Reference
#include <mpi.h>
#include <stdio.h>

Go to the source code of this file.

Macros

#define MACSIO_TIMING_ITER_AUTO   -1
 Automatic iteration numbering Use for iter argument to StartTimer() when you don't want to manager iteration numbering of the timer explicitly. More...
 
#define MACSIO_TIMING_ITER_IGNORE   -2
 What is this? More...
 
#define MACSIO_TIMING_INVALID_TIMER   (~((MACSIO_TIMING_TimerId_t)0x0))
 Maybe returned from StartTimer() More...
 
#define MACSIO_TIMING_NO_GROUP   (((MACSIO_TIMING_GroupMask_t)0x0)
 Group mask when timer is not assigned to any group. More...
 
#define MACSIO_TIMING_ALL_GROUPS   (~((MACSIO_TIMING_GroupMask_t)0))
 Group mask representing all groups. More...
 
#define MT_Time   MACSIO_TIMING_GetCurrentTime
 Convenience macro for getting current time. More...
 
#define MT_StartTimer(LAB, GMASK, ITER)   MACSIO_TIMING_StartTimer(LAB, GMASK, ITER, __FILE__, __LINE__)
 Convenience macro for starting a timer. More...
 
#define MT_StopTimer(ID)   MACSIO_TIMING_StopTimer(ID)
 Convenience macro for stopping a timer. More...
 

Typedefs

typedef unsigned int MACSIO_TIMING_TimerId_t
 
typedef unsigned long long MACSIO_TIMING_GroupMask_t
 

Functions

MACSIO_TIMING_GroupMask_t MACSIO_TIMING_GroupMask (char const *grpName)
 Create a group name and mask. More...
 
MACSIO_TIMING_TimerId_t MACSIO_TIMING_StartTimer (char const *label, MACSIO_TIMING_GroupMask_t gmask, int iter_num, char const *file, int line)
 Create/Start a timer. More...
 
double MACSIO_TIMING_StopTimer (MACSIO_TIMING_TimerId_t id)
 Stop a timer. More...
 
double MACSIO_TIMING_GetTimer (MACSIO_TIMING_TimerId_t tid, char const *field)
 Get data from a specific timer. More...
 
double MACSIO_TIMING_GetReducedTimer (MACSIO_TIMING_TimerId_t tid, char const *field)
 Get data from a specific reduced timer. More...
 
void MACSIO_TIMING_DumpTimersToStrings (MACSIO_TIMING_GroupMask_t gmask, char ***strs, int *nstrs, int *maxlen)
 Dump timers to ascii strings. More...
 
void MACSIO_TIMING_ReduceTimers (MPI_Comm comm, int root)
 Reduce timers across MPI tasks. More...
 
void MACSIO_TIMING_DumpReducedTimersToStrings (MACSIO_TIMING_GroupMask_t gmask, char ***strs, int *nstrs, int *maxlen)
 Dump reduced timers to ascii strings. More...
 
void MACSIO_TIMING_ClearTimers (MACSIO_TIMING_GroupMask_t gmask)
 Clear a group of timers. More...
 
double MACSIO_TIMING_GetCurrentTime (void)
 Get current time. More...
 

Variables

int MACSIO_TIMING_UseMPI_Wtime
 Integer variable to control function used to get timer values. More...