GHOST  1.1.2
General, Hybrid, and Optimized Sparse Toolkit
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Enumerations | Functions
datatransfers.h File Reference

Functions for tracking data transfers in a parallel run. More...

#include "error.h"
Include dependency graph for datatransfers.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define GHOST_DATATRANSFER_RANK_GPU   -1
 Indicate that a data transfers is done to a GPU instead of another MPI rank. More...
 
#define GHOST_DATATRANSFER_RANK_ALL   -2
 Regard data transfers to any rank. More...
 
#define GHOST_DATATRANSFER_RANK_ALL_W_GPU   -3
 Regard data transfers to any rank and the process-local GPU. More...
 

Enumerations

enum  ghost_datatransfer_direction_t { GHOST_DATATRANSFER_IN, GHOST_DATATRANSFER_OUT, GHOST_DATATRANSFER_ANY }
 The direction of a data transfer. More...
 

Functions

ghost_error ghost_datatransfer_register (const char *tag, ghost_datatransfer_direction_t dir, int rank, size_t volume)
 Register a data transfer. More...
 
ghost_error ghost_datatransfer_summarystring (char **str)
 Create a string summarizing all data transfers. More...
 
size_t ghost_datatransfer_volume_get (const char *tag, ghost_datatransfer_direction_t dir, int rank)
 

Detailed Description

Functions for tracking data transfers in a parallel run.

Author
Moritz Kreutzer morit.nosp@m.z.kr.nosp@m.eutze.nosp@m.r@fa.nosp@m.u.de

Macro Definition Documentation

#define GHOST_DATATRANSFER_RANK_ALL   -2

Regard data transfers to any rank.

#define GHOST_DATATRANSFER_RANK_ALL_W_GPU   -3

Regard data transfers to any rank and the process-local GPU.

#define GHOST_DATATRANSFER_RANK_GPU   -1

Indicate that a data transfers is done to a GPU instead of another MPI rank.

Enumeration Type Documentation

The direction of a data transfer.

Enumerator
GHOST_DATATRANSFER_IN 

Incoming data transfer.

GHOST_DATATRANSFER_OUT 

Outgoing data transfer.

GHOST_DATATRANSFER_ANY 

Any direction.

Function Documentation

ghost_error ghost_datatransfer_register ( const char *  tag,
ghost_datatransfer_direction_t  dir,
int  rank,
size_t  volume 
)

Register a data transfer.

Parameters
tagThe tag of the data transfer.
dirThe transfer's direction.
rankThe rank of the communication partner.
volumeThe size of the data transfer.
Returns
ghost_error ghost_datatransfer_summarystring ( char **  str)

Create a string summarizing all data transfers.

Parameters
strWhere to store the string.
Returns
GHOST_SUCCESS on success or an error indicator.

Here is the call graph for this function:

size_t ghost_datatransfer_volume_get ( const char *  tag,
ghost_datatransfer_direction_t  dir,
int  rank 
)