Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
UPstream Class Reference

Inter-processor communications stream. More...

Inheritance diagram for UPstream:
Inheritance graph
[legend]
Collaboration diagram for UPstream:
Collaboration graph
[legend]

Classes

class  commsStruct
 
class  communicator
 
struct  listEq
 

Public Types

enum  commsTypes : char { blocking, scheduled, nonBlocking }
 
typedef IntRange< int > rangeType
 

Public Member Functions

 ClassName ("UPstream")
 
 UPstream (const commsTypes commsType)
 
commsTypes commsType () const noexcept
 
commsTypes commsType (const commsTypes ct) noexcept
 
template<class T >
Foam::List< TlistGatherValues (const T &localValue, const label comm)
 

Static Public Member Functions

static label allocateCommunicator (const label parent, const labelList &subRanks, const bool doPstream=true)
 
static void freeCommunicator (const label communicator, const bool doPstream=true)
 
static void freeCommunicators (const bool doPstream)
 
static int baseProcNo (const label myComm, const int procID)
 
static label procNo (const label comm, const int baseProcID)
 
static label procNo (const label myComm, const label currentComm, const int currentProcID)
 
static void addValidParOptions (HashTable< string > &validParOptions)
 
static bool init (int &argc, char **&argv, const bool needsThread)
 
static bool initNull ()
 
static label nRequests ()
 
static void resetRequests (const label sz)
 
static void waitRequests (const label start=0)
 
static void waitRequest (const label i)
 
static bool finishedRequest (const label i)
 
static int allocateTag (const char *)
 
static int allocateTag (const word &)
 
static void freeTag (const char *, const int tag)
 
static void freeTag (const word &, const int tag)
 
static bool parRun (const bool on) noexcept
 
static boolparRun () noexcept
 
static bool haveThreads () noexcept
 
static label nProcs (const label communicator=worldComm)
 
static constexpr int masterNo () noexcept
 
static bool master (const label communicator=worldComm)
 
static int myProcNo (const label communicator=worldComm)
 
static label parent (const label communicator)
 
static List< int > & procID (label communicator)
 
static const wordListallWorlds () noexcept
 
static const labelListworldIDs () noexcept
 
static label myWorldID ()
 
static const wordmyWorld ()
 
static rangeType allProcs (const label communicator=worldComm)
 
static rangeType subProcs (const label communicator=worldComm)
 
static const List< commsStruct > & linearCommunication (const label communicator=worldComm)
 
static const List< commsStruct > & treeCommunication (const label communicator=worldComm)
 
static int & msgType () noexcept
 
static void shutdown (int errNo=0)
 
static void abort ()
 
static void exit (int errNo=1)
 
static void allToAll (const labelUList &sendData, labelUList &recvData, const label communicator=worldComm)
 
static void allToAll (const char *sendData, const UList< int > &sendSizes, const UList< int > &sendOffsets, char *recvData, const UList< int > &recvSizes, const UList< int > &recvOffsets, const label communicator=worldComm)
 
static void mpiGather (const char *sendData, int sendSize, char *recvData, int recvSize, const label communicator=worldComm)
 
static void mpiScatter (const char *sendData, int sendSize, char *recvData, int recvSize, const label communicator=worldComm)
 
static void gather (const char *sendData, int sendSize, char *recvData, const UList< int > &recvSizes, const UList< int > &recvOffsets, const label communicator=worldComm)
 
static void scatter (const char *sendData, const UList< int > &sendSizes, const UList< int > &sendOffsets, char *recvData, int recvSize, const label communicator=worldComm)
 
template<class T >
static List< TlistGatherValues (const T &localValue, const label communicator=worldComm)
 
template<class T >
static T listScatterValues (const UList< T > &allValues, const label communicator=worldComm)
 
static constexpr int firstSlave () noexcept
 
static int lastSlave (const label communicator=worldComm)
 

Static Public Attributes

static const Enum< commsTypescommsTypeNames
 
static bool floatTransfer
 
static int nProcsSimpleSum
 
static commsTypes defaultCommsType
 
static int nPollProcInterfaces
 
static int maxCommsSize
 
static const int mpiBufferSize
 
static label worldComm
 
static label warnComm
 

Protected Attributes

commsTypes commsType_
 

Detailed Description

Inter-processor communications stream.

Source files

Definition at line 57 of file UPstream.H.

Member Typedef Documentation

◆ rangeType

typedef IntRange<int> rangeType

Definition at line 62 of file UPstream.H.

Member Enumeration Documentation

◆ commsTypes

enum commsTypes : char
strong
Enumerator
blocking 
scheduled 
nonBlocking 

Definition at line 65 of file UPstream.H.

Constructor & Destructor Documentation

◆ UPstream()

UPstream ( const commsTypes  commsType)
inlineexplicit

Definition at line 298 of file UPstream.H.

Member Function Documentation

◆ ClassName()

ClassName ( "UPstream"  )

◆ allocateCommunicator()

Foam::label allocateCommunicator ( const label  parent,
const labelList subRanks,
const bool  doPstream = true 
)
static

◆ freeCommunicator()

void freeCommunicator ( const label  communicator,
const bool  doPstream = true 
)
static

◆ freeCommunicators()

void freeCommunicators ( const bool  doPstream)
static

Definition at line 194 of file UPstream.C.

References forAll.

◆ baseProcNo()

int baseProcNo ( const label  myComm,
const int  procID 
)
static

Definition at line 206 of file UPstream.C.

References UPstream::parent(), and UPstream::procID().

Referenced by UPstream::procNo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ procNo() [1/2]

Foam::label procNo ( const label  comm,
const int  baseProcID 
)
static

Definition at line 222 of file UPstream.C.

◆ procNo() [2/2]

Foam::label procNo ( const label  myComm,
const label  currentComm,
const int  currentProcID 
)
static

Definition at line 240 of file UPstream.C.

References UPstream::baseProcNo().

Here is the call graph for this function:

◆ addValidParOptions()

void addValidParOptions ( HashTable< string > &  validParOptions)
static

Definition at line 27 of file UPstream.C.

◆ init()

bool init ( int &  argc,
char **&  argv,
const bool  needsThread 
)
static

Definition at line 41 of file UPstream.C.

References Foam::endl(), Foam::exit(), Foam::FatalError, and FatalErrorInFunction.

Referenced by ParRunControl::runPar().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ initNull()

bool initNull ( )
static

Definition at line 31 of file UPstream.C.

References Foam::endl(), and WarningInFunction.

Here is the call graph for this function:

◆ nRequests()

Foam::label nRequests ( )
static

◆ resetRequests()

void resetRequests ( const label  sz)
static

Definition at line 251 of file UPstream.C.

◆ waitRequests()

void waitRequests ( const label  start = 0)
static

◆ waitRequest()

void waitRequest ( const label  i)
static

Definition at line 259 of file UPstream.C.

Referenced by PPCG::scalarSolveCG().

Here is the caller graph for this function:

◆ finishedRequest()

bool finishedRequest ( const label  i)
static

Definition at line 263 of file UPstream.C.

References NotImplemented.

◆ allocateTag() [1/2]

int allocateTag ( const char *  s)
static

Definition at line 1419 of file UPstream.C.

References Foam::expressions::patchExpr::debug, Foam::endl(), Foam::PstreamGlobals::freedTags_, Foam::PstreamGlobals::nTags_, Foam::Pout, DynamicList::remove(), and s.

Here is the call graph for this function:

◆ allocateTag() [2/2]

int allocateTag ( const word s)
static

Definition at line 1448 of file UPstream.C.

References Foam::expressions::patchExpr::debug, Foam::endl(), Foam::PstreamGlobals::freedTags_, Foam::PstreamGlobals::nTags_, Foam::Pout, DynamicList::remove(), and s.

Here is the call graph for this function:

◆ freeTag() [1/2]

void freeTag ( const char *  s,
const int  tag 
)
static

Definition at line 1477 of file UPstream.C.

References DynamicList::append(), Foam::expressions::patchExpr::debug, Foam::endl(), Foam::PstreamGlobals::freedTags_, Foam::Pout, and s.

Here is the call graph for this function:

◆ freeTag() [2/2]

void freeTag ( const word s,
const int  tag 
)
static

Definition at line 1493 of file UPstream.C.

References DynamicList::append(), Foam::expressions::patchExpr::debug, Foam::endl(), Foam::PstreamGlobals::freedTags_, Foam::Pout, and s.

Here is the call graph for this function:

◆ parRun() [1/2]

static bool parRun ( const bool  on)
inlinestaticnoexcept

Definition at line 420 of file UPstream.H.

◆ parRun() [2/2]

static bool& parRun ( )
inlinestaticnoexcept

Definition at line 429 of file UPstream.H.

Referenced by snappyLayerDriver::addLayers(), unwatchedIOdictionary::addWatch(), regIOobject::addWatch(), UPstream::allToAll(), meshRefinement::balance(), addPatchCellLayer::calcExtrudeInfo(), processorCyclicPolyPatch::calcGeometry(), processorFaPatch::calcGeometry(), processorPolyPatch::calcGeometry(), surfaceNoise::calculate(), cyclicAMIPolyPatch::canResetAMI(), IOobjectList::checkNames(), polyBoundaryMesh::checkParallelSync(), AMIInterpolation::checkSymmetricWeights(), fieldValue::combineFields(), mapDistributeBase::compact(), dynamicOversetFvMesh::correctBoundaryConditions(), dynamicOversetFvMesh::correctCoupledBoundaryConditions(), processorFvPatch::coupled(), cyclicAMIPointPatch::coupled(), processorPointPatchField< Type >::coupled(), processorCyclicPointPatchField< Type >::coupled(), processorFvsPatchField< Type >::coupled(), processorCyclicFvsPatchField< Type >::coupled(), processorFaePatchField< Type >::coupled(), processorFaPatchField< Type >::coupled(), processorFvPatchField< Type >::coupled(), cyclicACMIFvPatch::coupled(), processorFaPatch::coupled(), cyclicAMIFvPatch::coupled(), calculatedProcessorFvPatchField< Type >::coupled(), processorPolyPatch::coupled(), multiWorldConnections::createComms(), simpleGeomDecomp::decompose(), decompositionMethod::decompose(), conformalVoronoiMesh::decomposition(), processorFvPatch::delta(), processorFaPatch::delta(), masterUncollatedFileOperation::dirPath(), refinementHistory::distribute(), fvMeshDistribute::distribute(), distributedTriSurfaceMesh::distribute(), distributedTriSurfaceMesh::distributedTriSurfaceMesh(), snappyLayerDriver::doLayers(), snappyRefineDriver::doRefine(), GeometricField::Boundary::evaluate(), Foam::evaluateConstraintTypes(), Pstream::exchange(), Foam::exitNow(), faMesh::faMesh(), faMeshReconstructor::faMeshReconstructor(), masterUncollatedFileOperation::filePath(), polyMesh::findCell(), masterUncollatedFileOperation::findInstance(), distributedTriSurfaceMesh::findLine(), distributedTriSurfaceMesh::findLineAll(), distributedTriSurfaceMesh::findLineAny(), distributedTriSurfaceMesh::findNearest(), masterUncollatedFileOperation::findTimes(), Pstream::gather(), Pstream::gatherList(), zoneDistribute::getDatafromOtherProc(), distributedTriSurfaceMesh::getField(), distributedTriSurfaceMesh::getNormal(), distributedTriSurfaceMesh::getRegion(), distributedTriSurfaceMesh::getVolumeType(), faMeshBoundaryHalo::haloSize(), InflationInjection< CloudType >::InflationInjection(), processorFaPatch::initGeometry(), processorPolyPatch::initGeometry(), InjectedParticleInjection< CloudType >::initialise(), InjectedParticleDistributionInjection< CloudType >::initialise(), extractEulerianParticles::initialiseBins(), processorPolyPatch::initOrder(), processorFaPatch::initUpdateMesh(), processorPolyPatch::initUpdateMesh(), fileOperation::lookupAndCacheProcessorsPath(), LUscalarMatrix::LUscalarMatrix(), processorFaPatch::makeDeltaCoeffs(), processorFaPatch::makeNonGlobalPatchPoints(), processorFvPatch::makeWeights(), processorFaPatch::makeWeights(), error::master(), surfaceWriter::merge(), surfaceWriter::mergeFieldTemplate(), Cloud< passivePositionParticle >::move(), polyBoundaryMesh::neighbourEdges(), masterUncollatedFileOperation::NewIFstream(), fvMeshTools::newMesh(), fileWriter::open(), processorPolyPatch::order(), InflationInjection< CloudType >::parcelsToInject(), argList::parse(), pointHistory::pointHistory(), collatedFileOperation::processorsDir(), masterUncollatedFileOperation::read(), lumpedPointState::readData(), Time::readModifiedObjects(), masterUncollatedFileOperation::readObjects(), masterUncollatedFileOperation::readStream(), surfaceNoise::readSurfaceData(), AMIWeights::reportPatch(), faMeshBoundaryHalo::reset(), PPCG::scalarSolveCG(), Pstream::scatter(), Pstream::scatterList(), fvMeshSubset::setCellSubset(), Time::setControls(), surfaceWriter::setSurface(), zoneDistribute::setUpCommforZone(), shortestPathSet::shortestPathSet(), error::simpleExit(), messageStream::stream(), surfaceWriter::surface(), surfaceNoise::surfaceAverage(), syncObjects::sync(), syncTools::syncEdgeMap(), syncTools::syncPointMap(), triSurfaceMesh::triSurfaceMesh(), turbulentDFSEMInletFvPatchVectorField::updateCoeffs(), processorFaPatch::updateMesh(), processorPolyPatch::updateMesh(), faMesh::updateMesh(), fileOperation::updateStates(), mergedSurf::use(), energySpectrum::write(), ensightCells::write(), areaWrite::write(), vtkWrite::write(), meshToMeshMethod::writeConnectivity(), AMIWeights::writeFileHeader(), fieldMinMax::writeFileHeader(), isoAdvection::writeIsoFaces(), faMeshReconstructor::writeMesh(), patchMeshWriter::writeNeighIDs(), collatedFileOperation::writeObject(), fileWriter::writeProcIDs(), surfaceNoise::writeSurfaceData(), and streamLineBase::writeToFile().

◆ haveThreads()

static bool haveThreads ( )
inlinestaticnoexcept

Definition at line 435 of file UPstream.H.

Referenced by OFstreamCollator::write().

Here is the caller graph for this function:

◆ nProcs()

static label nProcs ( const label  communicator = worldComm)
inlinestatic

Definition at line 441 of file UPstream.H.

Referenced by surfaceZonesInfo::addCellZonesToMesh(), surfaceZonesInfo::addFaceZonesToMesh(), masterCoarsestGAMGProcAgglomeration::agglomerate(), eagerGAMGProcAgglomeration::agglomerate(), procFacesGAMGProcAgglomeration::agglomerate(), manualGAMGProcAgglomeration::agglomerate(), UPstream::allProcs(), sensitivitySurfacePoints::assembleSensitivities(), meshRefinement::balanceAndRefine(), faPatch::boundaryProcs(), faMesh::boundaryProcs(), faPatch::boundaryProcSizes(), faMesh::boundaryProcSizes(), mapDistributeBase::calcCompactAddressing(), surfaceNoise::calculate(), meshRefinement::checkCoupledFaceZones(), polyBoundaryMesh::checkParallelSync(), mappedPatchBase::collectSamples(), fieldValue::combineFields(), sizeDistribution::combineFields(), Foam::combineReduce(), UPstream::commsStruct::commsStruct(), mapDistributeBase::compact(), GAMGAgglomeration::continueAgglomerating(), fvMeshDistribute::countCells(), meshRefinement::directionalRefineCandidates(), fvMeshDistribute::distribute(), distributedTriSurfaceMesh::distribute(), distributedTriSurfaceMesh::distributedTriSurfaceMesh(), Pstream::exchange(), mapDistributeBase::exchangeAddressing(), Pstream::exchangeSizes(), extendedUpwindCellToFaceStencil::extendedUpwindCellToFaceStencil(), distributedTriSurfaceMesh::findNearest(), meshRefinement::findRegions(), mappedPatchBase::findSamples(), Pstream::gather(), externalCoupled::gatherAndCombine(), Pstream::gatherList(), zoneDistribute::getDatafromOtherProc(), distributedTriSurfaceMesh::getVolumeType(), processorPolyPatch::initGeometry(), InjectedParticleInjection< CloudType >::initialise(), viewFactor::initialise(), InjectedParticleDistributionInjection< CloudType >::initialise(), processorPolyPatch::initUpdateMesh(), UPstream::lastSlave(), distributedTriSurfaceMesh::localQueries(), LUscalarMatrix::LUscalarMatrix(), mapDistributeBase::mapDistributeBase(), Cloud< passivePositionParticle >::move(), masterUncollatedFileOperation::NewIFstream(), InflationInjection< CloudType >::parcelsToInject(), argList::parse(), pointHistory::pointHistory(), mapDistributeBase::printLayout(), collatedFileOperation::processorsDir(), masterUncollatedFileOperation::read(), lumpedPointState::readData(), masterUncollatedFileOperation::readHeader(), masterUncollatedFileOperation::readStream(), Foam::reduce(), meshRefinement::refineAndBalance(), meshRefinement::refineCandidates(), meshRefinement::removeGapCells(), parProfiling::report(), faMeshBoundaryHalo::reset(), globalIndex::reset(), Foam::returnReduce(), Pstream::scatter(), Pstream::scatterList(), fvMeshSubset::setCellSubset(), Time::setControls(), zoneDistribute::setUpCommforZone(), ParSortableList< Type >::sort(), UPstream::subProcs(), syncObjects::sync(), trackingInverseDistance::update(), inverseDistance::update(), dynamicOversetFvMesh::updateAddressing(), turbulentDFSEMInletFvPatchVectorField::updateCoeffs(), globalMeshData::updateMesh(), externalCoupled::writeGeometry(), isoAdvection::writeIsoFaces(), and streamLineBase::writeToFile().

◆ masterNo()

static constexpr int masterNo ( )
inlinestaticconstexprnoexcept

◆ master()

static bool master ( const label  communicator = worldComm)
inlinestatic

Definition at line 453 of file UPstream.H.

References UPstream::masterNo().

Referenced by regIOobject::addWatch(), masterUncollatedFileOperation::addWatch(), mappedPatchBase::calcMapping(), pointNoise::calculate(), viewFactor::calculate(), surfaceNoise::calculate(), argList::check(), fileWriter::checkFormatterValidity(), polyBoundaryMesh::checkParallelSync(), argList::checkRootCase(), extractEulerianParticles::collectParticle(), sizeDistribution::combineFields(), commSchedule::commSchedule(), writeFile::createFile(), logFiles::createFiles(), simpleGeomDecomp::decompose(), masterUncollatedFileOperation::dirPath(), systemCall::dispatch(), snappyVoxelMeshDriver::doRefine(), abort::end(), abort::execute(), wallHeatFlux::execute(), Curle::execute(), momentum::execute(), forces::execute(), externalFileCoupler::externalFileCoupler(), masterUncollatedFileOperation::filePath(), logFiles::files(), probes::findElements(), masterUncollatedFileOperation::findInstance(), meshRefinement::findRegions(), masterUncollatedFileOperation::findTimes(), masterUncollatedFileOperation::findWatch(), STDMD::fit(), sampledSet::gather(), externalCoupled::gatherAndCombine(), masterUncollatedFileOperation::getFile(), masterUncollatedFileOperation::getState(), Random::globalGaussNormal(), Random::globalPosition(), Random::globalRandomise01(), Random::globalSample01(), viewFactor::initialise(), surfaceNoise::initialise(), JobInfo::JobInfo(), fileOperation::lookupAndCacheProcessorsPath(), LUscalarMatrix::LUscalarMatrix(), NURBS3DVolume::makeFolders(), error::master(), messageStream::masterStream(), surfaceWriter::mergeFieldTemplate(), ensightCase::newCloud(), ensightCase::newGeometry(), masterUncollatedFileOperation::NewIFstream(), fvMeshTools::newMesh(), fileOperation::nProcs(), objectiveManager::objectiveManager(), fileWriter::open(), InflationInjection< CloudType >::parcelsToInject(), argList::parse(), pointHistory::pointHistory(), porosityModel::porosityModel(), probes::prepare(), decomposedBlockData::read(), writeFile::read(), sampledSets::read(), externalCoupled::read(), sampledSurfaces::read(), masterUncollatedFileOperation::read(), baseIOdictionary::readData(), lumpedPointState::readData(), masterUncollatedFileOperation::readHeader(), masterUncollatedFileOperation::readObjects(), masterUncollatedFileOperation::readStream(), surfaceNoise::readSurfaceData(), externalCoupled::removeDataMaster(), externalCoupled::removeDataSlave(), masterUncollatedFileOperation::removeWatch(), parProfiling::report(), logFiles::resetNames(), ensightCase::setTime(), masterUncollatedFileOperation::setUnmodified(), globalMeshData::sharedPoints(), shortestPathSet::shortestPathSet(), externalFileCoupler::shutdown(), snappyVoxelMeshDriver::snappyVoxelMeshDriver(), rigidBodyMeshMotionSolver::solve(), rigidBodyMeshMotion::solve(), rigidBodyMotion::solve(), ParSortableList< Type >::sort(), SQP::SQP(), messageStream::stream(), surfaceNoise::surfaceAverage(), hexRef8Data::sync(), syncTools::syncEdgeMap(), syncTools::syncPointMap(), triSurfaceMesh::triSurfaceMesh(), sixDoFRigidBodyMotion::update(), lumpedPointDisplacementPointPatchVectorField::updateCoeffs(), activePressureForceBaffleVelocityFvPatchVectorField::updateCoeffs(), electrostaticDepositionFvPatchScalarField::updateCoeffs(), turbulentDigitalFilterInletFvPatchVectorField::updateCoeffs(), updateMethod::updateMethod(), fileMonitor::updateStates(), masterUncollatedFileOperation::updateStates(), solution::upgradeSolverDict(), externalFileCoupler::useMaster(), externalFileCoupler::useSlave(), OFstreamCollator::waitAll(), externalFileCoupler::waitForMaster(), externalFileCoupler::waitForSlave(), sensitivityBezier::write(), sensitivityVolBSplines::write(), sensitivityVolBSplinesFI::write(), proxyWriter::write(), sensitivityBezierFI::write(), timeInfo::write(), x3dWriter::write(), SQP::write(), energySpectrum::write(), starcdWriter::write(), OFstreamCollator::write(), foamWriter::write(), rawWriter::write(), yPlus::write(), vtkWriter::write(), wallShearStress::write(), abaqusWriter::write(), boundaryDataWriter::write(), histogram::write(), sampledSets::write(), nastranWriter::write(), sizeDistribution::write(), vtkCloud::write(), NURBS3DCurve::write(), objective::write(), vtkWrite::write(), volFieldValue::write(), regionSizeDistribution::write(), NURBS3DSurface::write(), turbulentDigitalFilterInletFvPatchVectorField::write(), surfaceFieldValue::write(), propellerInfo::writeAxialWake(), ensightWriter::writeCollated(), updateMethod::writeCorrection(), NURBS3DVolume::writeCps(), decomposedBlockData::writeData(), lumpedPointMovement::writeData(), lumpedPointMovement::writeForcesAndMomentsVTP(), externalCoupled::writeGeometry(), objective::writeInstantaneousSeparator(), objective::writeInstantaneousValue(), isoAdvection::writeIsoFaces(), objective::writeMeanValue(), faMeshReconstructor::writeMesh(), patchMeshWriter::writeNeighIDs(), collatedFileOperation::writeObject(), decomposedBlockData::writeObject(), patchMeshWriter::writePatchIDs(), patchMeshWriter::writePoints(), fileWriter::writeProcIDs(), sampledSets::writeSampleFile(), surfaceNoise::writeSurfaceData(), foamWriter::writeTemplate(), starcdWriter::writeTemplate(), boundaryDataWriter::writeTemplate(), x3dWriter::writeTemplate(), vtkWriter::writeTemplate(), streamLineBase::writeToFile(), ensightWriter::writeUncollated(), NURBS3DSurface::writeVTK(), propellerInfo::writeWake(), AMIWeights::writeWeightField(), NURBS3DCurve::writeWParses(), and NURBS3DSurface::writeWParses().

Here is the call graph for this function:

◆ myProcNo()

static int myProcNo ( const label  communicator = worldComm)
inlinestatic

Definition at line 459 of file UPstream.H.

Referenced by surfaceZonesInfo::addCellZonesToMesh(), surfaceZonesInfo::addFaceZonesToMesh(), masterCoarsestGAMGProcAgglomeration::agglomerate(), eagerGAMGProcAgglomeration::agglomerate(), manualGAMGProcAgglomeration::agglomerate(), sensitivitySurfacePoints::assembleSensitivities(), faPatch::boundaryProcs(), faMesh::boundaryProcs(), faPatch::boundaryProcSizes(), faMesh::boundaryProcSizes(), mapDistributeBase::calcCompactAddressing(), addPatchCellLayer::calcExtrudeInfo(), viewFactor::calculate(), GAMGAgglomeration::calculateRegionMaster(), meshRefinement::checkCoupledFaceZones(), polyBoundaryMesh::checkParallelSync(), mappedPatchBase::collectSamples(), fieldValue::combineFields(), sizeDistribution::combineFields(), mapDistributeBase::compact(), noDecomp::decompose(), fvMeshDistribute::distribute(), distributedTriSurfaceMesh::distribute(), distributedTriSurfaceMesh::distributedTriSurfaceMesh(), Pstream::exchange(), mapDistributeBase::exchangeAddressing(), processorField::execute(), InjectionModel< CloudType >::findCellAtPosition(), patchProbes::findElements(), probes::findElements(), mappedPatchBase::findLocalSamples(), distributedTriSurfaceMesh::findNearest(), meshRefinement::findRegions(), mappedPatchBase::findSamples(), Pstream::gather(), lduPrimitiveMesh::gather(), externalCoupled::gatherAndCombine(), Pstream::gatherList(), zoneDistribute::getDatafromOtherProc(), InjectedParticleInjection< CloudType >::initialise(), viewFactor::initialise(), InjectedParticleDistributionInjection< CloudType >::initialise(), globalIndex::inplaceToGlobal(), globalIndex::isLocal(), lduPrimitiveMesh::lduPrimitiveMesh(), distributedTriSurfaceMesh::localQueries(), globalIndex::localSize(), globalIndex::localStart(), mapDistribute::mapDistribute(), mapDistributeBase::mapDistributeBase(), globalIndex::maxNonLocalSize(), Cloud< passivePositionParticle >::move(), UPstream::myWorldID(), masterUncollatedFileOperation::NewIFstream(), regionSplit::nLocalRegions(), InflationInjection< CloudType >::parcelsToInject(), argList::parse(), pointHistory::pointHistory(), probes::prepare(), mapDistributeBase::printLayout(), backgroundMeshDecomposition::procBounds(), globalIndex::range(), masterUncollatedFileOperation::read(), lumpedPointState::readData(), masterUncollatedFileOperation::readHeader(), masterUncollatedFileOperation::readStream(), surfaceNoise::readSurfaceData(), indexedVertex::referred(), parProfiling::report(), faMeshBoundaryHalo::reset(), globalIndex::reset(), Pstream::scatter(), Pstream::scatterList(), fvMeshSubset::setCellSubset(), Time::setControls(), patchInjectionBase::setPositionAndCell(), zoneDistribute::setUpCommforZone(), ParSortableList< Type >::sort(), KinematicSurfaceFilm< CloudType >::splashInteraction(), globalIndex::toGlobal(), globalIndex::toLocal(), trackingInverseDistance::update(), inverseDistance::update(), dynamicOversetFvMesh::updateAddressing(), patchInjectionBase::updateMesh(), propellerInfo::updateSampleDiskCells(), meshToMeshMethod::writeConnectivity(), AMIInterpolation::writeFaceConnectivity(), externalCoupled::writeGeometry(), isoAdvection::writeIsoFaces(), and fileWriter::writeProcIDs().

◆ parent()

static label parent ( const label  communicator)
inlinestatic

Definition at line 464 of file UPstream.H.

Referenced by UPstream::baseProcNo().

Here is the caller graph for this function:

◆ procID()

static List<int>& procID ( label  communicator)
inlinestatic

Definition at line 470 of file UPstream.H.

Referenced by UPstream::baseProcNo(), and collatedFileOperation::processorsDir().

Here is the caller graph for this function:

◆ allWorlds()

static const wordList& allWorlds ( )
inlinestaticnoexcept

Definition at line 479 of file UPstream.H.

Referenced by mappedPatchBase::calcMapping(), mappedPatchBase::masterWorld(), UPstream::myWorld(), argList::parse(), Foam::printDOT(), and mappedPatchBase::sameWorld().

Here is the caller graph for this function:

◆ worldIDs()

static const labelList& worldIDs ( )
inlinestaticnoexcept

Definition at line 485 of file UPstream.H.

◆ myWorldID()

static label myWorldID ( )
inlinestatic

Definition at line 491 of file UPstream.H.

References UPstream::myProcNo().

Referenced by mappedPatchBase::calcMapping(), multiWorldConnections::createComms(), mappedPatchBase::masterWorld(), and UPstream::myWorld().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ myWorld()

static const word& myWorld ( )
inlinestatic

Definition at line 497 of file UPstream.H.

References UPstream::allWorlds(), and UPstream::myWorldID().

Referenced by multiWorldConnections::addConnectionById(), multiWorldConnections::addConnectionByName(), mappedPatchBase::calcMapping(), argList::parse(), mappedPatchBase::sameWorld(), and mappedPatchBase::sampleMesh().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ allProcs()

static rangeType allProcs ( const label  communicator = worldComm)
inlinestatic

◆ subProcs()

static rangeType subProcs ( const label  communicator = worldComm)
inlinestatic

◆ linearCommunication()

static const List<commsStruct>& linearCommunication ( const label  communicator = worldComm)
inlinestatic

◆ treeCommunication()

static const List<commsStruct>& treeCommunication ( const label  communicator = worldComm)
inlinestatic

◆ msgType()

static int& msgType ( )
inlinestaticnoexcept

Definition at line 536 of file UPstream.H.

Referenced by solidAbsorption::a(), decompositionMethod::calcCellCells(), mappedPatchBase::calcMapping(), masterUncollatedFileOperation::chMod(), mappedPatchBase::collectSamples(), extendedCentredCellToFaceStencil::compact(), extendedCentredFaceToCellStencil::compact(), extendedCentredCellToCellStencil::compact(), masterUncollatedFileOperation::cp(), masterUncollatedFileOperation::dirPath(), mappedPatchBase::distribute(), solidAbsorption::e(), masterUncollatedFileOperation::exists(), masterUncollatedFileOperation::filePath(), masterUncollatedFileOperation::fileSize(), masterUncollatedFileOperation::findInstance(), distributedTriSurfaceMesh::findNearest(), mappedPatchBase::findSamples(), lduPrimitiveMesh::gather(), Foam::gAverage(), distributedTriSurfaceMesh::getVolumeType(), Foam::gSumCmptProd(), Foam::gSumProd(), masterUncollatedFileOperation::highResLastModified(), dynamicOversetFvMesh::interpolate(), regionModel::interRegionAMI(), masterUncollatedFileOperation::isDir(), masterUncollatedFileOperation::isFile(), masterUncollatedFileOperation::lastModified(), lduPrimitiveMesh::lduPrimitiveMesh(), masterUncollatedFileOperation::ln(), fileOperation::lookupAndCacheProcessorsPath(), LUscalarMatrix::LUscalarMatrix(), masterUncollatedFileOperation::mkDir(), masterUncollatedFileOperation::mode(), masterUncollatedFileOperation::mv(), masterUncollatedFileOperation::mvBak(), masterUncollatedFileOperation::NewIFstream(), fileOperation::nProcs(), masterUncollatedFileOperation::read(), lumpedPointState::readData(), masterUncollatedFileOperation::readDir(), masterUncollatedFileOperation::readHeader(), masterUncollatedFileOperation::readStream(), faMeshBoundaryHalo::reset(), globalIndex::reset(), mappedPatchBase::reverseDistribute(), masterUncollatedFileOperation::rm(), masterUncollatedFileOperation::rmDir(), mapDistributeBase::schedule(), syncObjects::sync(), processorFvPatch::tag(), processorFaPatch::tag(), processorCyclicPolyPatch::tag(), processorPolyPatch::tag(), masterUncollatedFileOperation::type(), dynamicOversetFvMesh::updateAddressing(), wideBandDiffusiveRadiationMixedFvPatchScalarField::updateCoeffs(), mappedVelocityFluxFixedValueFvPatchField::updateCoeffs(), filmPyrolysisTemperatureCoupledFvPatchScalarField::updateCoeffs(), filmPyrolysisVelocityCoupledFvPatchVectorField::updateCoeffs(), greyDiffusiveRadiationMixedFvPatchScalarField::updateCoeffs(), mappedFlowRateFvPatchVectorField::updateCoeffs(), MarshakRadiationFvPatchScalarField::updateCoeffs(), MarshakRadiationFixedTemperatureFvPatchScalarField::updateCoeffs(), alphatFilmWallFunctionFvPatchScalarField::updateCoeffs(), thermalBaffle1DFvPatchScalarField< solidType >::updateCoeffs(), turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs(), turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs(), globalMeshData::updateMesh(), OFstreamCollator::write(), and decomposedBlockData::writeData().

◆ commsType() [1/2]

commsTypes commsType ( ) const
inlinenoexcept

Definition at line 543 of file UPstream.H.

References UPstream::commsType_.

◆ commsType() [2/2]

commsTypes commsType ( const commsTypes  ct)
inlinenoexcept

Definition at line 549 of file UPstream.H.

References UPstream::commsType_.

◆ shutdown()

void shutdown ( int  errNo = 0)
static

Definition at line 52 of file UPstream.C.

Referenced by ParRunControl::~ParRunControl().

Here is the caller graph for this function:

◆ abort()

void abort ( )
static

Definition at line 63 of file UPstream.C.

References Foam::abort().

Referenced by error::simpleExit().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ exit()

void exit ( int  errNo = 1)
static

Definition at line 56 of file UPstream.C.

References Foam::exit().

Referenced by snappyLayerDriver::addLayers(), argList::argList(), Foam::exitNow(), argList::parse(), ParRunControl::runPar(), and error::simpleExit().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ allToAll() [1/2]

void allToAll ( const labelUList sendData,
labelUList recvData,
const label  communicator = worldComm 
)
static

Definition at line 165 of file UPstream.C.

References UList::deepCopy().

Referenced by fvMeshDistribute::distribute().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ allToAll() [2/2]

void allToAll ( const char *  sendData,
const UList< int > &  sendSizes,
const UList< int > &  sendOffsets,
char *  recvData,
const UList< int > &  recvSizes,
const UList< int > &  recvOffsets,
const label  communicator = worldComm 
)
static

◆ mpiGather()

void mpiGather ( const char *  sendData,
int  sendSize,
char *  recvData,
int  recvSize,
const label  communicator = worldComm 
)
static

Definition at line 176 of file UPstream.C.

◆ mpiScatter()

void mpiScatter ( const char *  sendData,
int  sendSize,
char *  recvData,
int  recvSize,
const label  communicator = worldComm 
)
static

Definition at line 190 of file UPstream.C.

◆ gather()

void gather ( const char *  sendData,
int  sendSize,
char *  recvData,
const UList< int > &  recvSizes,
const UList< int > &  recvOffsets,
const label  communicator = worldComm 
)
static

Definition at line 204 of file UPstream.C.

◆ scatter()

void scatter ( const char *  sendData,
const UList< int > &  sendSizes,
const UList< int > &  sendOffsets,
char *  recvData,
int  recvSize,
const label  communicator = worldComm 
)
static

Definition at line 219 of file UPstream.C.

◆ listGatherValues() [1/2]

static List<T> listGatherValues ( const T localValue,
const label  communicator = worldComm 
)
static

◆ listScatterValues()

T listScatterValues ( const UList< T > &  allValues,
const label  communicator = worldComm 
)
static

Definition at line 71 of file UPstreamTemplates.C.

References Foam::abort(), UList::cdata_bytes(), UList::empty(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, UList::size(), T, and Foam::Zero.

Here is the call graph for this function:

◆ firstSlave()

static constexpr int firstSlave ( )
inlinestaticconstexprnoexcept

Definition at line 666 of file UPstream.H.

◆ lastSlave()

static int lastSlave ( const label  communicator = worldComm)
inlinestatic

Definition at line 673 of file UPstream.H.

References UPstream::nProcs().

Here is the call graph for this function:

◆ listGatherValues() [2/2]

Foam::List<T> listGatherValues ( const T localValue,
const label  comm 
)

Definition at line 25 of file UPstreamTemplates.C.

References Foam::abort(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, List::resize(), and T.

Here is the call graph for this function:

Member Data Documentation

◆ commsTypeNames

const Foam::Enum< Foam::UPstream::commsTypes > commsTypeNames
static

◆ commsType_

commsTypes commsType_
protected

Definition at line 256 of file UPstream.H.

Referenced by UPstream::commsType().

◆ floatTransfer

bool floatTransfer
static

Definition at line 270 of file UPstream.H.

Referenced by argList::parse().

◆ nProcsSimpleSum

int nProcsSimpleSum
static

◆ defaultCommsType

Foam::UPstream::commsTypes defaultCommsType
static

◆ nPollProcInterfaces

int nPollProcInterfaces
static

Definition at line 280 of file UPstream.H.

Referenced by argList::parse().

◆ maxCommsSize

int maxCommsSize
static

Definition at line 283 of file UPstream.H.

Referenced by Pstream::exchange().

◆ mpiBufferSize

const int mpiBufferSize
static

Definition at line 286 of file UPstream.H.

Referenced by attachOurBuffers().

◆ worldComm

Foam::label worldComm
static

◆ warnComm

Foam::label warnComm
static

The documentation for this class was generated from the following files: