Determines the order in which a set of processors should communicate with one another. More...
Public Member Functions | |
ClassName ("commSchedule") | |
commSchedule (const label nProcs, const List< labelPair > &comms) | |
const labelList & | schedule () const |
const labelListList & | procSchedule () const |
Determines the order in which a set of processors should communicate with one another.
The communication order should
Does a very simple scheduling which assumes same time for all operations.
After construction:
Does not care whether 'talking' is first send, second receive or maybe full swap. This is all responsibility of caller. See ProcessorTopology class for use in scheduling processor boundary swaps.
Definition at line 63 of file commSchedule.H.
commSchedule | ( | const label | nProcs, |
const List< labelPair > & | comms | ||
) |
Definition at line 61 of file commSchedule.C.
References Foam::abort(), List::append(), Foam::expressions::patchExpr::debug, Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, SortableList::indices(), Foam::labelMin, UPstream::master(), os(), Foam::Pout, Foam::setw(), and Foam::Zero.
ClassName | ( | "commSchedule" | ) |
|
inline |
Definition at line 99 of file commSchedule.H.
|
inline |
Definition at line 105 of file commSchedule.H.
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.