6#ifndef PARALLEL_GLOBAL_H
7#define PARALLEL_GLOBAL_H
23void read_pal_param(
int argc,
char** argv,
int& NPROC,
int& NTHREAD_PER_PROC,
int& MY_RANK);
25void myProd(std::complex<double>* in, std::complex<double>* inout,
int* len, MPI_Datatype* dptr);
40void split_diag_world(
const int& diag_np,
const int& nproc,
const int& my_rank,
int& drank,
int& dsize,
int& dcolor);
41void split_grid_world(
const int diag_np,
const int& nproc,
const int& my_rank,
int& grank,
int& gsize);
51 int& NPROC_IN_BNDGROUP,
62 int& NPROC_IN_BNDGROUP,
80 const int& num_groups,
85 const bool even =
false);
Definition parallel_global.cpp:25
void myProd(std::complex< double > *in, std::complex< double > *inout, int *len, MPI_Datatype *dptr)
Definition parallel_global.cpp:30
int omp_number
Definition parallel_global.cpp:27
void finalize_mpi()
Release MPI communicator and resources.
Definition parallel_global.cpp:237
int mpi_number
Definition parallel_global.cpp:26
void split_diag_world(const int &diag_np, const int &nproc, const int &my_rank, int &drank, int &dsize, int &dcolor)
Definition parallel_global.cpp:47
void split_grid_world(const int diag_np, const int &nproc, const int &my_rank, int &grank, int &gsize)
Definition parallel_global.cpp:72
void read_pal_param(int argc, char **argv, int &NPROC, int &NTHREAD_PER_PROC, int &MY_RANK)
Definition parallel_global.cpp:91
void init_pools(const int &NPROC, const int &MY_RANK, const int &BNDPAR, const int &KPAR, int &NPROC_IN_BNDGROUP, int &RANK_IN_BPGROUP, int &MY_BNDGROUP, int &NPROC_IN_POOL, int &RANK_IN_POOL, int &MY_POOL)
An interface function to call "Parallel_Global::divide_pools()".
Definition parallel_global.cpp:252
void divide_pools(const int &NPROC, const int &MY_RANK, const int &BNDPAR, const int &KPAR, int &NPROC_IN_BNDGROUP, int &RANK_IN_BPGROUP, int &MY_BNDGROUP, int &NPROC_IN_POOL, int &RANK_IN_POOL, int &MY_POOL)
Definition parallel_global.cpp:315
void divide_mpi_groups(const int &procs, const int &num_groups, const int &rank, int &procs_in_group, int &my_group, int &rank_in_group, const bool even=false)
Divide MPI processes into groups.
Definition parallel_global.cpp:378