OOPS
oops/mpi/mpi.h File Reference
#include <Eigen/Dense>
#include <vector>
#include "eckit/exception/Exceptions.h"
#include "eckit/mpi/Comm.h"
Include dependency graph for oops/mpi/mpi.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 oops
 The namespace for the main oops code.
 
 oops::mpi
 

Functions

const eckit::mpi::Comm & oops::mpi::world ()
 Default communicator with all MPI tasks (ie MPI_COMM_WORLD) More...
 
const eckit::mpi::Comm & oops::mpi::myself ()
 Default communicator with each MPI task by itself. More...
 
template<typename SERIALIZABLE >
void oops::mpi::send (const eckit::mpi::Comm &comm, const SERIALIZABLE &sendobj, const int dest, const int tag)
 Extend eckit Comm for Serializable oops objects. More...
 
template<typename SERIALIZABLE >
void oops::mpi::receive (const eckit::mpi::Comm &comm, SERIALIZABLE &recvobj, const int source, const int tag)
 
void oops::mpi::gather (const eckit::mpi::Comm &comm, const std::vector< double > &send, std::vector< double > &recv, const size_t root)
 
template<typename SERIALIZABLE >
void oops::mpi::gather (const eckit::mpi::Comm &comm, const std::vector< SERIALIZABLE > &send, std::vector< SERIALIZABLE > &recv, const size_t root)
 
void oops::mpi::allGather (const eckit::mpi::Comm &comm, const Eigen::VectorXd &sendbuf, std::vector< Eigen::VectorXd > &recvbuf)
 
template<typename CIter , typename Iter >
void oops::mpi::allGathervUsingSerialize (const eckit::mpi::Comm &comm, CIter first, CIter last, Iter recvbuf)
 A wrapper around the MPI all gather operation for serializable types. More...