Block-Structured AMR Software Framework
amrex::ParallelContext Namespace Reference

Classes

class  Frame
 

Functions

MPI_Comm CommunicatorAll () noexcept
 world communicator More...
 
MPI_Group GroupAll () noexcept
 world group More...
 
int NProcsAll () noexcept
 number of ranks in world communicator More...
 
int MyProcAll () noexcept
 my rank in world communicator More...
 
int IOProcessorNumberAll () noexcept
 IO rank in world communicator. More...
 
bool IOProcessorAll () noexcept
 Am IO processor for world communicator? More...
 
std::ofstream * OFSPtrAll () noexcept
 Pointer to ofstream. More...
 
MPI_Comm CommunicatorSub () noexcept
 sub-communicator for current frame More...
 
MPI_Group GroupSub () noexcept
 sub-group for current frame More...
 
int NProcsSub () noexcept
 number of ranks in current frame More...
 
int MyProcSub () noexcept
 my sub-rank in current frame More...
 
int IOProcessorNumberSub () noexcept
 IO sub-rank in current frame. More...
 
bool IOProcessorSub () noexcept
 Am IO processor for current frame? More...
 
std::ofstream * OFSPtrSub () noexcept
 Pointer to ofstream. More...
 
void BarrierSub () noexcept
 
void BarrierAll () noexcept
 
int get_inc_mpi_tag () noexcept
 get and increment mpi tag in current frame More...
 
int local_to_global_rank (int rank) noexcept
 translate between local rank and global rank More...
 
void local_to_global_rank (int *global, const int *local, int n) noexcept
 
int global_to_local_rank (int rank) noexcept
 
void global_to_local_rank (int *local, const int *global, int n) noexcept
 
void push (MPI_Comm c)
 
void push (MPI_Comm c, int id, int io_rank)
 
void set_last_frame_ofs (const std::string &filename)
 
void pop ()
 Note that it's the user's responsibility to free the MPI_Comm. More...
 

Variables

Vector< Frameframes
 stack of communicator frames More...
 

Function Documentation

◆ BarrierAll()

void amrex::ParallelContext::BarrierAll ( )
inlinenoexcept

◆ BarrierSub()

void amrex::ParallelContext::BarrierSub ( )
inlinenoexcept

◆ CommunicatorAll()

MPI_Comm amrex::ParallelContext::CommunicatorAll ( )
inlinenoexcept

world communicator

◆ CommunicatorSub()

MPI_Comm amrex::ParallelContext::CommunicatorSub ( )
inlinenoexcept

sub-communicator for current frame

◆ get_inc_mpi_tag()

int amrex::ParallelContext::get_inc_mpi_tag ( )
inlinenoexcept

get and increment mpi tag in current frame

◆ global_to_local_rank() [1/2]

void amrex::ParallelContext::global_to_local_rank ( int local,
const int global,
int  n 
)
inlinenoexcept

◆ global_to_local_rank() [2/2]

int amrex::ParallelContext::global_to_local_rank ( int  rank)
inlinenoexcept

◆ GroupAll()

MPI_Group amrex::ParallelContext::GroupAll ( )
inlinenoexcept

world group

◆ GroupSub()

MPI_Group amrex::ParallelContext::GroupSub ( )
inlinenoexcept

sub-group for current frame

◆ IOProcessorAll()

bool amrex::ParallelContext::IOProcessorAll ( )
inlinenoexcept

Am IO processor for world communicator?

◆ IOProcessorNumberAll()

int amrex::ParallelContext::IOProcessorNumberAll ( )
inlinenoexcept

IO rank in world communicator.

◆ IOProcessorNumberSub()

int amrex::ParallelContext::IOProcessorNumberSub ( )
inlinenoexcept

IO sub-rank in current frame.

◆ IOProcessorSub()

bool amrex::ParallelContext::IOProcessorSub ( )
inlinenoexcept

Am IO processor for current frame?

◆ local_to_global_rank() [1/2]

void amrex::ParallelContext::local_to_global_rank ( int global,
const int local,
int  n 
)
inlinenoexcept

◆ local_to_global_rank() [2/2]

int amrex::ParallelContext::local_to_global_rank ( int  rank)
inlinenoexcept

translate between local rank and global rank

◆ MyProcAll()

int amrex::ParallelContext::MyProcAll ( )
inlinenoexcept

my rank in world communicator

◆ MyProcSub()

int amrex::ParallelContext::MyProcSub ( )
inlinenoexcept

my sub-rank in current frame

◆ NProcsAll()

int amrex::ParallelContext::NProcsAll ( )
inlinenoexcept

number of ranks in world communicator

◆ NProcsSub()

int amrex::ParallelContext::NProcsSub ( )
inlinenoexcept

number of ranks in current frame

◆ OFSPtrAll()

std::ofstream* amrex::ParallelContext::OFSPtrAll ( )
inlinenoexcept

Pointer to ofstream.

◆ OFSPtrSub()

std::ofstream* amrex::ParallelContext::OFSPtrSub ( )
inlinenoexcept

Pointer to ofstream.

◆ pop()

void amrex::ParallelContext::pop ( )
inline

Note that it's the user's responsibility to free the MPI_Comm.

◆ push() [1/2]

void amrex::ParallelContext::push ( MPI_Comm  c)
inline

◆ push() [2/2]

void amrex::ParallelContext::push ( MPI_Comm  c,
int  id,
int  io_rank 
)
inline

◆ set_last_frame_ofs()

void amrex::ParallelContext::set_last_frame_ofs ( const std::string &  filename)
inline

Variable Documentation

◆ frames

AMREX_EXPORT Vector< Frame > amrex::ParallelContext::frames

stack of communicator frames