ProcessDist.h 771 Bytes
Newer Older
1
2
3
#ifndef PROCESS_DIST_H
#define PROCESS_DIST_H

4
5
6
7
8
#include <stdio.h>
#include <stdlib.h>
#include <mpi.h>
#include <string.h>
#include <slurm/slurm.h>
9
#include "malleabilityStates.h"
10

11
int init_slurm_comm(char *argv, int num_cpus, int num_nodes, char *nodelist, int myId, int numP, int numC, int root, int type_dist, int type_creation, int spawn_is_single, MPI_Comm comm, MPI_Comm *child);
12
int check_slurm_comm(int myId, int root, int numP, MPI_Comm *child, MPI_Comm comm, MPI_Comm comm_thread, double *end_real_time);
13

14
void malleability_establish_connection(int myId, int root, MPI_Comm *intercomm);
15
16


17
18
void proc_adapt_expand(int *numP, int numC, MPI_Comm intercomm, MPI_Comm *comm, int is_children_group);
void proc_adapt_shrink(int numC, MPI_Comm *comm, int myId);
19
20

#endif