results.h 899 Bytes
Newer Older
1
2
3
4
5
6
7
#include <stdio.h>
#include <stdlib.h>
#include <mpi.h>

typedef struct {
  // Iters data
  double *iters_time;
8
  int *iters_type, iter_index, iters_size;
9

10
11
  // Spawn, Thread, Sync, Async and Exec time
  double spawn_start, *spawn_time, *spawn_thread_time;
12
13
  double sync_start,  *sync_time;
  double async_start, *async_time;
14
  double exec_start, exec_time;
15
16
17
} results_data;


18
19
void send_results(results_data *results, int root, int resizes, MPI_Comm intercomm);
void recv_results(results_data *results, int root, int resizes, MPI_Comm intercomm);
20
21

void print_iter_results(results_data *results, int last_normal_iter_index);
22
void print_global_results(results_data *results, int resizes);
23
void init_results_data(results_data **results, int resizes, int iters_size);
24
void realloc_results_iters(results_data *results, int needed);
25
void free_results_data(results_data **results);