MADNESS  0.10.1
Files | Macros | Variables
Collaboration diagram for Interfaces from World to MPI:

Files

file  worldmpi.cc
 Several variables needed for WorldMPI.
 
file  worldmpi.h
 Implements WorldMpiInterface.
 

Macros

#define MPI_THREAD_STRING(level)
 String description of the MPI thread level. More...
 

Variables

static bool madness::detail::WorldMpi::own_mpi = false
 Flag storing if MADNESS is responsible for MPI. More...
 
static std::shared_ptr< WorldMpimadness::detail::WorldMpi::world_mpi
 Pointer to help MADNESS manage MPI. More...
 

Detailed Description

Todo:
Write a high-level overview of the MPI interface.

Macro Definition Documentation

◆ MPI_THREAD_STRING

#define MPI_THREAD_STRING (   level)
Value:
( level==MPI_THREAD_SERIALIZED ? "THREAD_SERIALIZED" : \
( level==MPI_THREAD_MULTIPLE ? "THREAD_MULTIPLE" : \
( level==MPI_THREAD_FUNNELED ? "THREAD_FUNNELED" : \
( level==MPI_THREAD_SINGLE ? "THREAD_SINGLE" : "THREAD_UNKNOWN" ) ) ) )
#define MPI_THREAD_SINGLE
Definition: stubmpi.h:56
#define MPI_THREAD_MULTIPLE
Definition: stubmpi.h:59
#define MPI_THREAD_SERIALIZED
Definition: stubmpi.h:58
#define MPI_THREAD_FUNNELED
Definition: stubmpi.h:57

String description of the MPI thread level.

Parameters
[in]levelThe MPI thread level.
Returns
A string description of the thread level.

Variable Documentation

◆ own_mpi

bool madness::detail::WorldMpi::own_mpi = false
staticprivate

Flag storing if MADNESS is responsible for MPI.

Todo:
Brief description needed.
Todo:
Verify the above brief description.

Referenced by madness::detail::WorldMpi::WorldMpi(), madness::detail::WorldMpi::~WorldMpi(), and madness::detail::WorldMpi::initialize().

◆ world_mpi

std::shared_ptr< WorldMpi > madness::detail::WorldMpi::world_mpi
staticprivate

Pointer to help MADNESS manage MPI.

This shared pointer is used to manage the lifetime of the MPI within MADNESS. It ensures that MPI is destroyed only after the last world object is destroyed.

Referenced by madness::detail::WorldMpi::finalize(), and madness::detail::WorldMpi::initialize().