1 #ifndef __CS_PARALL_H__ 2 #define __CS_PARALL_H__ 79 #if defined(HAVE_MPI_IN_PLACE) 86 MPI_Allreduce(MPI_IN_PLACE, cpt, n,
CS_MPI_GNUM, MPI_SUM,
91 #elif defined(HAVE_MPI) 99 #define cs_parall_counter(_cpt, _n) 111 #if defined(HAVE_MPI_IN_PLACE) 118 MPI_Allreduce(MPI_IN_PLACE, cpt, n,
CS_MPI_LNUM, MPI_MAX,
123 #elif defined(HAVE_MPI) 131 #define cs_parall_counter_max(_cpt, _n) 144 #if defined(HAVE_MPI_IN_PLACE) 157 #elif defined(HAVE_MPI) 166 #define cs_parall_sum(_n, _datatype, _val); 179 #if defined(HAVE_MPI_IN_PLACE) 192 #elif defined(HAVE_MPI) 201 #define cs_parall_max(_n, _datatype, _val); 214 #if defined(HAVE_MPI_IN_PLACE) 227 #elif defined(HAVE_MPI) 236 #define cs_parall_min(_n, _datatype, _val); 252 #if defined(HAVE_MPI) 267 #define cs_parall_bcast(_root_rank, _n, _datatype, _val); static void cs_parall_counter(cs_gnum_t cpt[], const int n)
Sum values of a counter on all default communicator processes.
Definition: cs_parall.h:82
cs_datatype_t
Definition: cs_defs.h:260
unsigned long cs_gnum_t
global mesh entity number
Definition: cs_defs.h:286
#define BEGIN_C_DECLS
Definition: cs_defs.h:467
int cs_int_t
Fortran-compatible integer.
Definition: cs_defs.h:301
static void cs_parall_counter_max(cs_lnum_t cpt[], const int n)
Maximum values of a counter on all default communicator processes.
Definition: cs_parall.h:114
int cs_glob_n_ranks
Definition: cs_defs.c:177
static void cs_parall_bcast(int root_rank, int n, cs_datatype_t datatype, void *val)
Broadcast values of a given datatype to all default communicator processes.
Definition: cs_parall.h:255
double cs_real_t
Floating-point value.
Definition: cs_defs.h:302
void cs_parall_min_loc_vals(int n, cs_real_t *min, cs_real_t min_loc_vals[])
Minimum value of a real and the value of related array on all default communicator processes...
Definition: cs_parall.c:785
MPI_Datatype cs_datatype_to_mpi[]
Definition: cs_defs.c:159
size_t cs_parall_get_min_coll_buf_size(void)
Return minimum recommended scatter or gather buffer size.
Definition: cs_parall.c:944
void cs_parall_min_id_rank_r(cs_lnum_t *elt_id, int *rank_id, cs_real_t dis2mn)
Given an (id, rank, value) tuple, return the local id and rank corresponding to the global minimum va...
Definition: cs_parall.c:824
#define CS_MPI_GNUM
Definition: cs_defs.h:362
void cs_parall_set_min_coll_buf_size(size_t buffer_size)
Define minimum recommended scatter or gather buffer size.
Definition: cs_parall.c:966
static void cs_parall_max(int n, cs_datatype_t datatype, void *val)
Maximum values of a given datatype on all default communicator processes.
Definition: cs_parall.h:182
MPI_Comm cs_glob_mpi_comm
Definition: cs_defs.c:181
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:298
void cs_parall_max_loc_vals(int n, cs_real_t *max, cs_real_t max_loc_vals[])
Maximum value of a real and the value of related array on all default communicator processes...
Definition: cs_parall.c:747
void parhis(cs_int_t *node, cs_int_t *ndrang, cs_real_t var[], cs_real_t *varcap)
Definition: cs_parall.c:609
#define CS_MPI_LNUM
Definition: cs_defs.h:378
#define END_C_DECLS
Definition: cs_defs.h:468
static void cs_parall_sum(int n, cs_datatype_t datatype, void *val)
Sum values of a given datatype on all default communicator processes.
Definition: cs_parall.h:147
void cs_parall_allgather_r(int n_elts, int n_g_elts, cs_real_t array[], cs_real_t g_array[])
Build a global array from each local array in each domain.
Definition: cs_parall.c:878
#define CS_PROCF(x, y)
Definition: cs_defs.h:481
static void cs_parall_min(int n, cs_datatype_t datatype, void *val)
Minimum values of a given datatype on all default communicator processes.
Definition: cs_parall.h:217