![]()  | 
  
    OGS
    
   | 
 
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{OGS_COMM_WORLD}) | 
Variables | |
| MPI_Comm | OGS_COMM_WORLD = MPI_COMM_WORLD | 
      
  | 
  static | 
Definition at line 115 of file MPI.h.
References BaseLib::MPI::Mpi::communicator, mpiType(), and BaseLib::MPI::Mpi::size.
      
  | 
  static | 
Definition at line 104 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(), MeshLib::IO::getTopologyType(), 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 164 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 137 of file MPI.h.
References BaseLib::MPI::Mpi::communicator, and mpiType().
      
  | 
  static | 
Definition at line 128 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 149 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 191 of file MPI.h.
References OGS_COMM_WORLD.
Referenced by ProcessLib::AssemblyMixin< Process >::assembleWithJacobian(), and NumLib::NonlinearSolver< NonlinearSolverTag::Newton >::solve().
      
  | 
  constexpr | 
Definition at line 70 of file MPI.h.
Referenced by allgather(), allgather(), allgatherv(), allreduce(), allreduce(), and allreduceInplace().
| MPI_Comm BaseLib::MPI::OGS_COMM_WORLD = MPI_COMM_WORLD | 
Definition at line 15 of file MPI.cpp.
Referenced by ApplicationsLib::LinearSolverLibrarySetup::LinearSolverLibrarySetup(), MeshLib::IO::PVDFile::addVTUFile(), anyOf(), MeshLib::IO::getCommunicator(), initializeLogger(), BaseLib::initOGSLogger(), MeshLib::IO::isFileManager(), ChemistryLib::PhreeqcIOData::specifyFileName(), and MeshLib::IO::VtuInterface::writeVTU().