Nek5000
SEM for Incompressible NS
|
Gather/Scatter Library interface. More...
Go to the source code of this file.
Macros | |
#define | gs PREFIXED_NAME(gs ) |
#define | gs_vec PREFIXED_NAME(gs_vec ) |
#define | gs_many PREFIXED_NAME(gs_many ) |
#define | gs_setup PREFIXED_NAME(gs_setup ) |
#define | gs_free PREFIXED_NAME(gs_free ) |
#define | gs_unique PREFIXED_NAME(gs_unique) |
Enumerations | |
enum | gs_method { gs_auto, gs_pairwise, gs_crystal_router, gs_all_reduce, gs_auto, gs_pairwise, gs_crystal_router, gs_all_reduce } |
Functions | |
void | gs (void *u, gs_dom dom, gs_op op, unsigned transpose, struct gs_data *gsh, buffer *buf) |
void | gs_vec (void *u, unsigned vn, gs_dom dom, gs_op op, unsigned transpose, struct gs_data *gsh, buffer *buf) |
void | gs_many (void *const *u, unsigned vn, gs_dom dom, gs_op op, unsigned transpose, struct gs_data *gsh, buffer *buf) |
struct gs_data * | gs_setup (const slong *id, uint n, const struct comm *comm, int unique, gs_method method, int verbose) |
void | gs_free (struct gs_data *gsh) |
void | gs_unique (slong *id, uint n, const struct comm *comm) |
Gather/Scatter Library interface.
Definition in file gs.h.
#define gs PREFIXED_NAME(gs ) |
#define gs_free PREFIXED_NAME(gs_free ) |
#define gs_many PREFIXED_NAME(gs_many ) |
#define gs_setup PREFIXED_NAME(gs_setup ) |
#define gs_unique PREFIXED_NAME(gs_unique) |
#define gs_vec PREFIXED_NAME(gs_vec ) |
enum gs_method |
Definition at line 1065 of file gs.c.
References gs_aux(), and mode_plain.
void gs_free | ( | struct gs_data * | gsh | ) |
Definition at line 1149 of file gs.c.
References gs_data::comm, comm_free(), gs_remote::data, gs_remote::fin, gs_data::flagged_primaries, gs_data::map_local, gs_data::r, and uint.
struct gs_data* gs_setup | ( | const slong * | id, |
uint | n, | ||
const struct comm * | comm, | ||
int | unique, | ||
gs_method | method, | ||
int | verbose | ||
) |
Definition at line 1140 of file gs.c.
References gs_data::comm, comm_dup, gs_setup_aux(), and tmalloc.
Definition at line 1158 of file gs.c.
References crystal_free, crystal_init, crystal::data, get_topology(), gs_topology_free(), comm::id, and make_topology_unique().