Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
AMReX_ParallelDescriptor.cpp File Reference
#include <AMReX.H>
#include <AMReX_Utility.H>
#include <AMReX_BLProfiler.H>
#include <AMReX_BLFort.H>
#include <AMReX_ParallelDescriptor.H>
#include <AMReX_Print.H>
#include <AMReX_RealVect.H>
#include <AMReX_TypeTraits.H>
#include <AMReX_Arena.H>
#include <AMReX_ParmParse.H>
#include <cstdio>
#include <cstddef>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include <fstream>
#include <sstream>
#include <stack>
#include <list>
#include <chrono>

Namespaces

namespace  amrex
namespace  amrex::ParallelDescriptor
 Parallel frontend that abstracts functionalities needed to spawn processes and handle communication.

Functions

void amrex::ParallelDescriptor::StartParallel (int *argc=nullptr, char ***argv=nullptr, MPI_Comm mpi_comm=MPI_COMM_WORLD)
 Perform any needed parallel initialization. This MUST be the first routine in this class called from within a program.
void amrex::ParallelDescriptor::Gather (Real const *sendbuf, int nsend, Real *recvbuf, int root)
void amrex::ParallelDescriptor::EndParallel ()
 Perform any needed parallel finalization. This MUST be the last routine in this class called from within a program.
void amrex::ParallelDescriptor::Abort (int errorcode=SIGABRT, bool backtrace=true)
 Abort with specified error code.
const char * amrex::ParallelDescriptor::ErrorString (int errorcode)
 ErrorString return string associated with error internal error condition.
void amrex::ParallelDescriptor::Barrier (const std::string &)
void amrex::ParallelDescriptor::Barrier (const MPI_Comm &, const std::string &)
Message amrex::ParallelDescriptor::Abarrier ()
Message amrex::ParallelDescriptor::Abarrier (const MPI_Comm &)
void amrex::ParallelDescriptor::Test (MPI_Request &, int &, MPI_Status &)
void amrex::ParallelDescriptor::Test (Vector< MPI_Request > &, int &, Vector< MPI_Status > &)
void amrex::ParallelDescriptor::IProbe (int, int, int &, MPI_Status &)
void amrex::ParallelDescriptor::IProbe (int, int, MPI_Comm, int &, MPI_Status &)
void amrex::ParallelDescriptor::Comm_dup (MPI_Comm, MPI_Comm &)
void amrex::ParallelDescriptor::ReduceRealSum (Vector< std::reference_wrapper< Real > > const &)
void amrex::ParallelDescriptor::ReduceRealMax (Vector< std::reference_wrapper< Real > > const &)
void amrex::ParallelDescriptor::ReduceRealMin (Vector< std::reference_wrapper< Real > > const &)
void amrex::ParallelDescriptor::ReduceRealSum (Vector< std::reference_wrapper< Real > > const &, int)
void amrex::ParallelDescriptor::ReduceRealMax (Vector< std::reference_wrapper< Real > > const &, int)
void amrex::ParallelDescriptor::ReduceRealMin (Vector< std::reference_wrapper< Real > > const &, int)
void amrex::ParallelDescriptor::ReduceLongAnd (Long &)
void amrex::ParallelDescriptor::ReduceLongSum (Long &)
void amrex::ParallelDescriptor::ReduceLongMax (Long &)
void amrex::ParallelDescriptor::ReduceLongMin (Long &)
void amrex::ParallelDescriptor::ReduceLongAnd (Long &, int)
void amrex::ParallelDescriptor::ReduceLongSum (Long &, int)
void amrex::ParallelDescriptor::ReduceLongMax (Long &, int)
void amrex::ParallelDescriptor::ReduceLongMin (Long &, int)
void amrex::ParallelDescriptor::ReduceLongAnd (Long *, int)
void amrex::ParallelDescriptor::ReduceLongSum (Long *, int)
void amrex::ParallelDescriptor::ReduceLongMax (Long *, int)
void amrex::ParallelDescriptor::ReduceLongMin (Long *, int)
void amrex::ParallelDescriptor::ReduceLongAnd (Long *, int, int)
void amrex::ParallelDescriptor::ReduceLongSum (Long *, int, int)
void amrex::ParallelDescriptor::ReduceLongMax (Long *, int, int)
void amrex::ParallelDescriptor::ReduceLongMin (Long *, int, int)
void amrex::ParallelDescriptor::ReduceLongAnd (Vector< std::reference_wrapper< Long > > const &)
void amrex::ParallelDescriptor::ReduceLongSum (Vector< std::reference_wrapper< Long > > const &)
void amrex::ParallelDescriptor::ReduceLongMax (Vector< std::reference_wrapper< Long > > const &)
void amrex::ParallelDescriptor::ReduceLongMin (Vector< std::reference_wrapper< Long > > const &)
void amrex::ParallelDescriptor::ReduceLongAnd (Vector< std::reference_wrapper< Long > > const &, int)
void amrex::ParallelDescriptor::ReduceLongSum (Vector< std::reference_wrapper< Long > > const &, int)
void amrex::ParallelDescriptor::ReduceLongMax (Vector< std::reference_wrapper< Long > > const &, int)
void amrex::ParallelDescriptor::ReduceLongMin (Vector< std::reference_wrapper< Long > > const &, int)
void amrex::ParallelDescriptor::ReduceIntSum (int &)
void amrex::ParallelDescriptor::ReduceIntMax (int &)
void amrex::ParallelDescriptor::ReduceIntMin (int &)
void amrex::ParallelDescriptor::ReduceIntSum (int &, int)
void amrex::ParallelDescriptor::ReduceIntMax (int &, int)
void amrex::ParallelDescriptor::ReduceIntMin (int &, int)
void amrex::ParallelDescriptor::ReduceIntSum (int *, int)
void amrex::ParallelDescriptor::ReduceIntMax (int *, int)
void amrex::ParallelDescriptor::ReduceIntMin (int *, int)
void amrex::ParallelDescriptor::ReduceIntSum (int *, int, int)
void amrex::ParallelDescriptor::ReduceIntMax (int *, int, int)
void amrex::ParallelDescriptor::ReduceIntMin (int *, int, int)
void amrex::ParallelDescriptor::ReduceIntSum (Vector< std::reference_wrapper< int > > const &)
void amrex::ParallelDescriptor::ReduceIntMax (Vector< std::reference_wrapper< int > > const &)
void amrex::ParallelDescriptor::ReduceIntMin (Vector< std::reference_wrapper< int > > const &)
void amrex::ParallelDescriptor::ReduceIntSum (Vector< std::reference_wrapper< int > > const &, int)
void amrex::ParallelDescriptor::ReduceIntMax (Vector< std::reference_wrapper< int > > const &, int)
void amrex::ParallelDescriptor::ReduceIntMin (Vector< std::reference_wrapper< int > > const &, int)
void amrex::ParallelDescriptor::ReduceBoolAnd (bool &)
void amrex::ParallelDescriptor::ReduceBoolOr (bool &)
void amrex::ParallelDescriptor::ReduceBoolAnd (bool &, int)
void amrex::ParallelDescriptor::ReduceBoolOr (bool &, int)
void amrex::ParallelDescriptor::Bcast (void *, int, MPI_Datatype, int, MPI_Comm)
double amrex::ParallelDescriptor::second () noexcept
 Returns wall-clock seconds since start of execution.
void amrex::ParallelDescriptor::Wait (MPI_Request &, MPI_Status &)
void amrex::ParallelDescriptor::Waitall (Vector< MPI_Request > &, Vector< MPI_Status > &)
void amrex::ParallelDescriptor::Waitany (Vector< MPI_Request > &, int &, MPI_Status &)
void amrex::ParallelDescriptor::Waitsome (Vector< MPI_Request > &, int &, Vector< int > &, Vector< MPI_Status > &)
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_BARRIER, bl_pd_barrier)()
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_COMMUNICATOR, bl_pd_communicator)(void *vcomm)
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_MYPROC, bl_pd_myproc)(int *myproc)
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_NPROCS, bl_pd_nprocs)(int *nprocs)
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_IOPROC, bl_pd_ioproc)(int *ioproc)
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_IS_IOPROC, bl_pd_is_ioproc)(int *ioproc)
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_SECOND, bl_pd_second)(double *r)
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_REDUCE_REAL_MAX_TO_IOPROC, bl_pd_reduce_real_max_to_ioproc)(double *r)
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_REDUCE_REAL_SUM_TO_IOPROC, bl_pd_reduce_real_sum_to_ioproc)(double *r)
 amrex::ParallelDescriptor::BL_FORT_PROC_DECL (BL_PD_ABORT, bl_pd_abort)()
void amrex::ParallelDescriptor::ReadAndBcastFile (const std::string &filename, Vector< char > &charBuf, bool bExitOnError, const MPI_Comm &comm)
void amrex::ParallelDescriptor::Initialize ()
void amrex::ParallelDescriptor::Finalize ()
void amrex::ParallelDescriptor::StartTeams ()
 Split the process pool into teams.
void amrex::ParallelDescriptor::EndTeams ()
std::string amrex::ParallelDescriptor::mpi_level_to_string (int mtlev)
int amrex_fi_pd_myproc ()
int amrex_fi_pd_nprocs ()
int amrex_fi_pd_ioprocessor ()
int amrex_fi_pd_ioprocessor_number ()
void amrex_fi_pd_bcast_r (Real *x, int n, int root)
Real amrex_fi_pd_wtime ()

Function Documentation

◆ amrex_fi_pd_bcast_r()

void amrex_fi_pd_bcast_r ( Real * x,
int n,
int root )

◆ amrex_fi_pd_ioprocessor()

int amrex_fi_pd_ioprocessor ( )

◆ amrex_fi_pd_ioprocessor_number()

int amrex_fi_pd_ioprocessor_number ( )

◆ amrex_fi_pd_myproc()

int amrex_fi_pd_myproc ( )

◆ amrex_fi_pd_nprocs()

int amrex_fi_pd_nprocs ( )

◆ amrex_fi_pd_wtime()

Real amrex_fi_pd_wtime ( )