DIY  3.0
data-parallel out-of-core C++ library
 All Classes Namespaces Functions Typedefs Groups Pages
Public Member Functions | List of all members
diy::mpi::communicator Class Reference

Simple wrapper around MPI_Comm. More...

#include <diy/mpi/communicator.hpp>

Public Member Functions

 communicator (MPI_Comm comm=MPI_COMM_WORLD)
 
int rank () const
 
int size () const
 
template<class T >
void send (int dest, int tag, const T &x) const
 Send x to processor dest using tag (blocking).
 
template<class T >
status recv (int source, int tag, T &x) const
 Receive x from dest using tag (blocking). If T is an std::vector<...>, recv will resize it to fit exactly the sent number of values.
 
template<class T >
request isend (int dest, int tag, const T &x) const
 Non-blocking version of send().
 
template<class T >
request irecv (int source, int tag, T &x) const
 Non-blocking version of recv(). If T is an std::vector<...>, its size must be big enough to accomodate the sent values.
 
status probe (int source, int tag) const
 probe
 
optional< statusiprobe (int source, int tag) const
 iprobe
 
void barrier () const
 barrier
 
 operator MPI_Comm () const
 

Detailed Description

Simple wrapper around MPI_Comm.

Examples:
decomposition/regular-decomposer-long.cpp, decomposition/regular-decomposer-short.cpp, decomposition/test-direct-master.cpp, io/test-io.cpp, reduce/all-done.cpp, reduce/all-to-all.cpp, reduce/kd-tree.cpp, reduce/merge-reduce.cpp, reduce/sample-sort.cpp, reduce/sort.cpp, reduce/swap-reduce.cpp, simple/read-blocks.cpp, simple/simple.cpp, and simple/until-done.cpp.

The documentation for this class was generated from the following file: