Determines/represents processor-processor connection. After instantiation contains the processor-processor connection table (globally synchronized on all processors). More...
Public Member Functions | |
processorTopology ()=default | |
Default construct (empty) More... | |
processorTopology (const processorTopology &)=default | |
Copy construct. More... | |
processorTopology (processorTopology &&)=default | |
Move construct. More... | |
processorTopology & | operator= (const processorTopology &)=default |
Copy assignment. More... | |
processorTopology & | operator= (processorTopology &&)=default |
Move assignment. More... | |
label | nProcs () const noexcept |
The number of processors used by the topology. More... | |
const labelListList & | procNeighbours () const noexcept |
const lduSchedule & | patchSchedule () const noexcept |
label | procPatchLookup (const label proci) const |
Which local boundary is attached to specified processor. More... | |
template<class ProcPatch , class PatchListType > | |
Foam::processorTopology | New (const PatchListType &patches, const label comm) |
Static Public Member Functions | |
template<class ProcPatch , class PatchListType > | |
static processorTopology | New (const PatchListType &patches, const label comm) |
Factory method to create topology, schedule and proc/patch maps. More... | |
Determines/represents processor-processor connection. After instantiation contains the processor-processor connection table (globally synchronized on all processors).
New
factory method, which has been wrapped into a separate header to minimize dependencies.Definition at line 63 of file processorTopology.H.
|
default |
Default construct (empty)
|
default |
Copy construct.
|
default |
Move construct.
|
default |
Copy assignment.
|
default |
Move assignment.
|
static |
Factory method to create topology, schedule and proc/patch maps.
Scans the list of patches for processor connections corresponding to the ProcPatch type.
|
inlinenoexcept |
The number of processors used by the topology.
Definition at line 138 of file processorTopology.H.
References UList< T >::size().
Referenced by processorTopology::New().
|
inlinenoexcept |
The processor to processor connection topology (like an adjacency list). Globally synchronized information
Definition at line 145 of file processorTopology.H.
Referenced by Cloud< ParticleType >::move().
|
inlinenoexcept |
Order in which the patches should be initialised/evaluated corresponding to the schedule
Definition at line 152 of file processorTopology.H.
Referenced by faGlobalMeshData::patchSchedule(), and globalMeshData::patchSchedule().
|
inline |
Which local boundary is attached to specified processor.
Local information (so not same over all processors)
Definition at line 160 of file processorTopology.H.
Referenced by addPatchCellLayer::calcExtrudeInfo().
Foam::processorTopology New | ( | const PatchListType & | patches, |
const label | comm | ||
) |
Definition at line 55 of file processorTopologyNew.H.
References Pstream::allGatherList(), DynamicList< T, SizeMin >::append(), UPstream::defaultCommsType, UList< T >::empty(), forAll, UPstream::msgType(), processorFaPatch::myProcNo(), PstreamBuffers::nProcs(), processorTopology::nProcs(), UPstream::parRun(), patches, List< T >::resize(), UPstream::scheduled, bitSet::set(), UPtrList< T >::size(), and bitSet::sortedToc().