Yet Another eXchange Tool  DO_NOT_EDIT_HERE
Data Structures | Enumerations | Functions | Variables
xt_redist_internal.h File Reference

redistribution of data, non-public declarations More...

#include <mpi.h>
#include "xt/xt_redist.h"
Include dependency graph for xt_redist_internal.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  Xt_redist_msg
 
struct  xt_redist_vtable
 
struct  Xt_redist_
 

Enumerations

enum  xt_msg_direction { SEND, RECV }
 

Functions

void xt_redist_msgs_strided_copy (size_t n, struct Xt_redist_msg *restrict src, size_t src_stride, struct Xt_redist_msg *restrict dst, size_t dst_stride, MPI_Comm comm)
 
void xt_redist_msgs_strided_destruct (size_t n, struct Xt_redist_msg *msgs, MPI_Comm comm, size_t ofs_stride)
 
static void xt_redist_msgs_free (size_t n, struct Xt_redist_msg *msgs, MPI_Comm comm)
 
void xt_redist_check_comms (Xt_redist *redists, int num_redists, MPI_Comm comm)
 
int xt_redist_get_msg_ranks (Xt_redist redist, enum xt_msg_direction direction, int **ranks)
 
size_t xt_ranks_uniq_count (size_t num_rank_sets, size_t *restrict num_ranks, const int *ranks[num_rank_sets])
 
MPI_Datatype xt_create_compound_datatype (size_t num_redists, const MPI_Aint displacements[num_redists], const MPI_Datatype datatypes[num_redists], const int block_lengths[num_redists], MPI_Comm comm)
 

Variables

void(* xt_redist_s_exchange_internal )(const void *src_data, void *dst_data, int nsend, int nrecv, struct Xt_redist_msg *send_msgs, struct Xt_redist_msg *recv_msgs, MPI_Comm comm)
 

Detailed Description

redistribution of data, non-public declarations

contains declaration the redistribution data structure, which is derived from one or more xt_xmaps

Author
Jörg Behrens behre.nosp@m.ns@d.nosp@m.krz.d.nosp@m.e Moritz Hanke hanke.nosp@m.@dkr.nosp@m.z.de Thomas Jahns jahns.nosp@m.@dkr.nosp@m.z.de

Definition in file xt_redist_internal.h.

Enumeration Type Documentation

◆ xt_msg_direction

Enumerator
SEND 
RECV 

Definition at line 61 of file xt_redist_internal.h.

Function Documentation

◆ xt_create_compound_datatype()

MPI_Datatype xt_create_compound_datatype ( size_t  num_redists,
const MPI_Aint  displacements[num_redists],
const MPI_Datatype  datatypes[num_redists],
const int  block_lengths[num_redists],
MPI_Comm  comm 
)

Definition at line 181 of file xt_redist.c.

Here is the caller graph for this function:

◆ xt_ranks_uniq_count()

size_t xt_ranks_uniq_count ( size_t  num_rank_sets,
size_t *restrict  num_ranks,
const int *  ranks[num_rank_sets] 
)

Definition at line 152 of file xt_redist.c.

Here is the caller graph for this function:

◆ xt_redist_check_comms()

void xt_redist_check_comms ( Xt_redist redists,
int  num_redists,
MPI_Comm  comm 
)

Definition at line 137 of file xt_redist.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ xt_redist_get_msg_ranks()

int xt_redist_get_msg_ranks ( Xt_redist  redist,
enum xt_msg_direction  direction,
int **  ranks 
)

Definition at line 97 of file xt_redist.c.

Here is the caller graph for this function:

◆ xt_redist_msgs_free()

static void xt_redist_msgs_free ( size_t  n,
struct Xt_redist_msg msgs,
MPI_Comm  comm 
)
inlinestatic

Definition at line 104 of file xt_redist_internal.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ xt_redist_msgs_strided_copy()

void xt_redist_msgs_strided_copy ( size_t  n,
struct Xt_redist_msg *restrict  src,
size_t  src_stride,
struct Xt_redist_msg *restrict  dst,
size_t  dst_stride,
MPI_Comm  comm 
)

Definition at line 105 of file xt_redist.c.

Here is the caller graph for this function:

◆ xt_redist_msgs_strided_destruct()

void xt_redist_msgs_strided_destruct ( size_t  n,
struct Xt_redist_msg msgs,
MPI_Comm  comm,
size_t  ofs_stride 
)

Definition at line 124 of file xt_redist.c.

Here is the caller graph for this function:

Variable Documentation

◆ xt_redist_s_exchange_internal

void(* xt_redist_s_exchange_internal) (const void *src_data, void *dst_data, int nsend, int nrecv, struct Xt_redist_msg *send_msgs, struct Xt_redist_msg *recv_msgs, MPI_Comm comm)