Classes | |
struct | Mpi |
struct | Setup |
Functions | |
template<typename T > | |
constexpr MPI_Datatype | mpiType () |
template<typename T > | |
static std::vector< T > | allgather (T const &value, Mpi const &mpi) |
template<typename T > | |
static std::vector< T > | allgather (std::vector< T > const &vector, Mpi const &mpi) |
template<typename T > | |
static T | allreduce (T const &value, MPI_Op const &mpi_op, Mpi const &mpi) |
template<typename T > | |
static std::vector< T > | allreduce (std::vector< T > const &vector, MPI_Op const &mpi_op, Mpi const &mpi) |
template<typename T > | |
static void | allreduceInplace (std::vector< T > &vector, MPI_Op const &mpi_op, Mpi const &mpi) |
template<typename T > | |
static std::vector< int > | allgatherv (std::span< T > const send_buffer, std::vector< std::remove_const_t< T > > &receive_buffer, Mpi const &mpi) |
static bool | anyOf (bool const val, Mpi const &mpi=Mpi{MPI_COMM_WORLD}) |
|
static |
Definition at line 111 of file MPI.h.
References BaseLib::MPI::Mpi::communicator, mpiType(), and BaseLib::MPI::Mpi::size.
|
static |
Definition at line 100 of file MPI.h.
References BaseLib::MPI::Mpi::communicator, mpiType(), and BaseLib::MPI::Mpi::size.
Referenced by allgatherv(), MeshLib::computeNumberOfRegularBaseNodesAtRank(), MeshLib::computeNumberOfRegularHigherOrderNodesAtRank(), MeshLib::computeRegularBaseNodeGlobalNodeIDsOfSubDomainPartition(), MeshLib::IO::getPartitionInfo(), and MeshLib::IO::NodePartitionedMeshReader::newMesh().
|
static |
Allgather for variable data. Returns offsets in the receive buffer. The receive buffer is resized to accommodate the gathered data.
Definition at line 160 of file MPI.h.
References allgather(), BaseLib::MPI::Mpi::communicator, mpiType(), and BaseLib::sizesToOffsets().
Referenced by MeshLib::computeGhostBaseNodeGlobalNodeIDsOfSubDomainPartition(), and MathLib::PETScVector::getGlobalVector().
|
static |
Definition at line 133 of file MPI.h.
References BaseLib::MPI::Mpi::communicator, and mpiType().
|
static |
Definition at line 124 of file MPI.h.
References BaseLib::MPI::Mpi::communicator, and mpiType().
Referenced by MeshGeoToolsLib::BoundaryElementsAtPoint::BoundaryElementsAtPoint(), MeshLib::getNumberOfGlobalNodes(), NumLib::anonymous_namespace{DOFTableUtil.cpp}::norm1(), NumLib::anonymous_namespace{DOFTableUtil.cpp}::norm2(), NumLib::anonymous_namespace{DOFTableUtil.cpp}::normInfinity(), ProcessLib::PhaseField::PhaseFieldProcess< DisplacementDim >::postNonLinearSolverConcreteProcess(), ProcessLib::PhaseField::PhaseFieldProcess< DisplacementDim >::postTimestepConcreteProcess(), and MeshLib::IO::NodePartitionedMeshReader::readProperties().
|
static |
Definition at line 145 of file MPI.h.
References BaseLib::MPI::Mpi::communicator, and mpiType().
Referenced by MeshLib::computeGhostBaseNodeGlobalNodeIDsOfSubDomainPartition().
|
inlinestatic |
The reduction is implemented transparently for with and without MPI. In the latter case the input value is returned.
Definition at line 187 of file MPI.h.
Referenced by ProcessLib::AssemblyMixin< Process >::assembleWithJacobian(), and NumLib::NonlinearSolver< NonlinearSolverTag::Newton >::solve().
|
constexpr |
Definition at line 66 of file MPI.h.
Referenced by allgather(), allgather(), allgatherv(), allreduce(), allreduce(), and allreduceInplace().