QUDA  v1.1.0
A library for QCD on GPUs
Classes | Functions | Variables
communicator_quda.h File Reference
#include <unistd.h>
#include <assert.h>
#include <limits>
#include <quda_internal.h>
#include <comm_quda.h>
#include <csignal>
#include <comm_key.h>
#include <algorithm>
#include <numeric>

Go to the source code of this file.

Classes

struct  Topology_s
 
struct  Communicator
 

Functions

int lex_rank_from_coords_dim_t (const int *coords, void *fdata)
 
int lex_rank_from_coords_dim_x (const int *coords, void *fdata)
 
Topologycomm_create_topology (int ndim, const int *dims, QudaCommsMap rank_from_coords, void *map_data, int my_rank)
 
void comm_destroy_topology (Topology *topo)
 
int comm_ndim (const Topology *topo)
 
const int * comm_dims (const Topology *topo)
 
const int * comm_coords (const Topology *topo)
 
const int * comm_coords_from_rank (const Topology *topo, int rank)
 
int comm_rank_from_coords (const Topology *topo, const int *coords)
 
int comm_rank_displaced (const Topology *topo, const int displacement[])
 
bool isHost (const void *buffer)
 
void check_displacement (const int displacement[], int ndim)
 
void push_communicator (const quda::CommKey &split_key)
 
void comm_broadcast_global (void *data, size_t nbytes)
 These routine broadcast the data according to the default communicator. More...
 

Variables

constexpr quda::CommKey default_comm_key = {1, 1, 1, 1}
 

Function Documentation

◆ check_displacement()

void check_displacement ( const int  displacement[],
int  ndim 
)
inline

Definition at line 154 of file communicator_quda.h.

◆ comm_broadcast_global()

void comm_broadcast_global ( void *  data,
size_t  nbytes 
)

These routine broadcast the data according to the default communicator.

Definition at line 190 of file communicator_stack.cpp.

◆ comm_coords()

const int* comm_coords ( const Topology topo)
inline

Definition at line 110 of file communicator_quda.h.

◆ comm_coords_from_rank()

const int* comm_coords_from_rank ( const Topology topo,
int  rank 
)
inline

Definition at line 112 of file communicator_quda.h.

◆ comm_create_topology()

Topology* comm_create_topology ( int  ndim,
const int *  dims,
QudaCommsMap  rank_from_coords,
void *  map_data,
int  my_rank 
)

Definition at line 173 of file comm_common.cpp.

◆ comm_destroy_topology()

void comm_destroy_topology ( Topology topo)
inline

Definition at line 99 of file communicator_quda.h.

◆ comm_dims()

const int* comm_dims ( const Topology topo)
inline

Definition at line 108 of file communicator_quda.h.

◆ comm_ndim()

int comm_ndim ( const Topology topo)
inline

Definition at line 106 of file communicator_quda.h.

◆ comm_rank_displaced()

int comm_rank_displaced ( const Topology topo,
const int  displacement[] 
)
inline

Definition at line 121 of file communicator_quda.h.

◆ comm_rank_from_coords()

int comm_rank_from_coords ( const Topology topo,
const int *  coords 
)
inline

Definition at line 114 of file communicator_quda.h.

◆ isHost()

bool isHost ( const void *  buffer)
inline

Definition at line 132 of file communicator_quda.h.

◆ lex_rank_from_coords_dim_t()

int lex_rank_from_coords_dim_t ( const int *  coords,
void *  fdata 
)
inline

Definition at line 49 of file communicator_quda.h.

◆ lex_rank_from_coords_dim_x()

int lex_rank_from_coords_dim_x ( const int *  coords,
void *  fdata 
)
inline

Definition at line 57 of file communicator_quda.h.

◆ push_communicator()

void push_communicator ( const quda::CommKey split_key)

Definition at line 38 of file communicator_stack.cpp.

Variable Documentation

◆ default_comm_key

constexpr quda::CommKey default_comm_key = {1, 1, 1, 1}
constexpr

Definition at line 804 of file communicator_quda.h.