OMPI_TIMING        50 ompi/util/timings.h     ompi_timing_t OMPI_TIMING;                                                 \
OMPI_TIMING        51 ompi/util/timings.h     OMPI_TIMING.prefix = __func__;                                             \
OMPI_TIMING        52 ompi/util/timings.h     OMPI_TIMING.size = _size;                                                  \
OMPI_TIMING        53 ompi/util/timings.h     OMPI_TIMING.get_ts = opal_timing_ts_func(OPAL_TIMING_AUTOMATIC_TIMER);     \
OMPI_TIMING        54 ompi/util/timings.h     OMPI_TIMING.cnt = 0;                                                       \
OMPI_TIMING        55 ompi/util/timings.h     OMPI_TIMING.error = 0;                                                     \
OMPI_TIMING        56 ompi/util/timings.h     OMPI_TIMING.ts = OMPI_TIMING.get_ts();                                     \
OMPI_TIMING        57 ompi/util/timings.h     OMPI_TIMING.enabled = 0;                                                   \
OMPI_TIMING        58 ompi/util/timings.h     OMPI_TIMING.import_cnt = 0;                                                \
OMPI_TIMING        63 ompi/util/timings.h             OMPI_TIMING.enabled = atoi(ptr);                                   \
OMPI_TIMING        65 ompi/util/timings.h         if (OMPI_TIMING.enabled) {                                             \
OMPI_TIMING        67 ompi/util/timings.h             OMPI_TIMING.timing = (ompi_timing_list_t*)malloc(sizeof(ompi_timing_list_t));              \
OMPI_TIMING        68 ompi/util/timings.h             memset(OMPI_TIMING.timing, 0, sizeof(ompi_timing_list_t));         \
OMPI_TIMING        69 ompi/util/timings.h             OMPI_TIMING.timing->val = (ompi_timing_val_t*)malloc(sizeof(ompi_timing_val_t) * _size);   \
OMPI_TIMING        70 ompi/util/timings.h             OMPI_TIMING.cur_timing = OMPI_TIMING.timing;                       \
OMPI_TIMING        76 ompi/util/timings.h         if (OMPI_TIMING.enabled) {                                                 \
OMPI_TIMING        77 ompi/util/timings.h             OMPI_TIMING.cur_timing->next = (struct ompi_timing_list_t*)malloc(sizeof(ompi_timing_list_t)); \
OMPI_TIMING        78 ompi/util/timings.h             OMPI_TIMING.cur_timing = (ompi_timing_list_t*)OMPI_TIMING.cur_timing->next;                    \
OMPI_TIMING        79 ompi/util/timings.h             memset(OMPI_TIMING.cur_timing, 0, sizeof(ompi_timing_list_t));                                 \
OMPI_TIMING        80 ompi/util/timings.h             OMPI_TIMING.cur_timing->val = malloc(sizeof(ompi_timing_val_t) * OMPI_TIMING.size);            \
OMPI_TIMING        86 ompi/util/timings.h         if (OMPI_TIMING.enabled) {                                                 \
OMPI_TIMING        87 ompi/util/timings.h             ompi_timing_list_t *t = OMPI_TIMING.timing, *tmp;                      \
OMPI_TIMING        94 ompi/util/timings.h             OMPI_TIMING.timing = NULL;                                             \
OMPI_TIMING        95 ompi/util/timings.h             OMPI_TIMING.cur_timing = NULL;                                         \
OMPI_TIMING        96 ompi/util/timings.h             OMPI_TIMING.cnt = 0;                                                   \
OMPI_TIMING       102 ompi/util/timings.h         if (!OMPI_TIMING.error && OMPI_TIMING.enabled) {                           \
OMPI_TIMING       106 ompi/util/timings.h             if (OMPI_TIMING.cur_timing->use >= OMPI_TIMING.size){                  \
OMPI_TIMING       109 ompi/util/timings.h             len = snprintf(OMPI_TIMING.cur_timing->val[OMPI_TIMING.cur_timing->use].desc,        \
OMPI_TIMING       112 ompi/util/timings.h                 OMPI_TIMING.error = 1;                                             \
OMPI_TIMING       114 ompi/util/timings.h             OMPI_TIMING.cur_timing->val[OMPI_TIMING.cur_timing->use].file = strdup(f);     \
OMPI_TIMING       115 ompi/util/timings.h             OMPI_TIMING.cur_timing->val[OMPI_TIMING.cur_timing->use].prefix = strdup(__func__);      \
OMPI_TIMING       116 ompi/util/timings.h             OMPI_TIMING.cur_timing->val[OMPI_TIMING.cur_timing->use++].ts =        \
OMPI_TIMING       117 ompi/util/timings.h                 OMPI_TIMING.get_ts() - OMPI_TIMING.ts;                             \
OMPI_TIMING       118 ompi/util/timings.h             OMPI_TIMING.cnt++;                                                     \
OMPI_TIMING       119 ompi/util/timings.h             OMPI_TIMING.ts = OMPI_TIMING.get_ts();                                 \
OMPI_TIMING       125 ompi/util/timings.h         if (OMPI_TIMING.cur_timing->use >= OMPI_TIMING.size){                      \
OMPI_TIMING       128 ompi/util/timings.h         int len = snprintf(OMPI_TIMING.cur_timing->val[OMPI_TIMING.cur_timing->use].desc,        \
OMPI_TIMING       131 ompi/util/timings.h             OMPI_TIMING.error = 1;                                                 \
OMPI_TIMING       133 ompi/util/timings.h         OMPI_TIMING.cur_timing->val[OMPI_TIMING.cur_timing->use].prefix = func;    \
OMPI_TIMING       134 ompi/util/timings.h         OMPI_TIMING.cur_timing->val[OMPI_TIMING.cur_timing->use].file = filename;  \
OMPI_TIMING       135 ompi/util/timings.h         OMPI_TIMING.cur_timing->val[OMPI_TIMING.cur_timing->use++].ts = ts;        \
OMPI_TIMING       136 ompi/util/timings.h         OMPI_TIMING.cnt++;                                                         \
OMPI_TIMING       141 ompi/util/timings.h         if (!OMPI_TIMING.error && OMPI_TIMING.enabled) {                           \
OMPI_TIMING       145 ompi/util/timings.h             OMPI_TIMING.import_cnt++;                                              \
OMPI_TIMING       147 ompi/util/timings.h             OPAL_TIMING_ENV_ERROR_PREFIX(_prefix, func, OMPI_TIMING.error);        \
OMPI_TIMING       150 ompi/util/timings.h                 OMPI_TIMING.cur_timing->val[OMPI_TIMING.cur_timing->use].imported= \
OMPI_TIMING       151 ompi/util/timings.h                     OMPI_TIMING.import_cnt;                                        \
OMPI_TIMING       163 ompi/util/timings.h         if (OMPI_TIMING.enabled) {                                                \
OMPI_TIMING       170 ompi/util/timings.h             MPI_Reduce(&OMPI_TIMING.error, &error, 1,                             \
OMPI_TIMING       179 ompi/util/timings.h                 double *avg = (double*)malloc(sizeof(double) * OMPI_TIMING.cnt);  \
OMPI_TIMING       180 ompi/util/timings.h                 double *min = (double*)malloc(sizeof(double) * OMPI_TIMING.cnt);  \
OMPI_TIMING       181 ompi/util/timings.h                 double *max = (double*)malloc(sizeof(double) * OMPI_TIMING.cnt);  \
OMPI_TIMING       182 ompi/util/timings.h                 char **desc = (char**)malloc(sizeof(char*) * OMPI_TIMING.cnt);    \
OMPI_TIMING       183 ompi/util/timings.h                 char **prefix = (char**)malloc(sizeof(char*) * OMPI_TIMING.cnt);  \
OMPI_TIMING       184 ompi/util/timings.h                 char **file = (char**)malloc(sizeof(char*) * OMPI_TIMING.cnt);    \
OMPI_TIMING       187 ompi/util/timings.h                 if( OMPI_TIMING.cnt > 0 ) {                                       \
OMPI_TIMING       188 ompi/util/timings.h                     OMPI_TIMING.ts = OMPI_TIMING.get_ts();                        \
OMPI_TIMING       189 ompi/util/timings.h                     ompi_timing_list_t *timing = OMPI_TIMING.timing;              \
OMPI_TIMING       209 ompi/util/timings.h                         if (OMPI_TIMING.timing->next) {                           \
OMPI_TIMING       215 ompi/util/timings.h                             OMPI_TIMING.prefix);                                  \
OMPI_TIMING       216 ompi/util/timings.h                         imported = OMPI_TIMING.timing->val[0].imported;           \
OMPI_TIMING       217 ompi/util/timings.h                         for(i=0; i< OMPI_TIMING.cnt; i++){                        \
OMPI_TIMING       219 ompi/util/timings.h                             imported = OMPI_TIMING.timing->val[i].imported;       \
OMPI_TIMING       224 ompi/util/timings.h                             if (OMPI_TIMING.timing->val[i].imported) {            \
OMPI_TIMING       229 ompi/util/timings.h                             if (i == (OMPI_TIMING.cnt-1)) {                       \
OMPI_TIMING       232 ompi/util/timings.h                                 print_total = imported != OMPI_TIMING.timing->val[i+1].imported; \
OMPI_TIMING       234 ompi/util/timings.h                             if (print_total && OMPI_TIMING.timing->val[i].imported) {            \
OMPI_TIMING       243 ompi/util/timings.h                         for(i=0; i< OMPI_TIMING.cnt; i++) {                       \
OMPI_TIMING       244 ompi/util/timings.h                             if (!OMPI_TIMING.timing->val[i].imported) {           \
OMPI_TIMING       251 ompi/util/timings.h                             OMPI_TIMING.prefix,                                   \
OMPI_TIMING       253 ompi/util/timings.h                         printf("[%s:overhead]: %lf \n", OMPI_TIMING.prefix,       \
OMPI_TIMING       254 ompi/util/timings.h                             OMPI_TIMING.get_ts() - OMPI_TIMING.ts);               \