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

Files

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

Namespaces

namespace  madness
 Namespace for all elements and tools of MADNESS.
 

Macros

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

Variables

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

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:59
#define MPI_THREAD_MULTIPLE
Definition stubmpi.h:62
#define MPI_THREAD_SERIALIZED
Definition stubmpi.h:61
#define MPI_THREAD_FUNNELED
Definition stubmpi.h:60

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().