ENH: provide MPI native minOp, maxOp reduce multiple values

- consistent with sumOp

ENH: globalIndex with gatherNonLocal tag, and use leading dispatch tags

- useful for gather/write where the master data can be written
 separately.  Leading vs trailing dispatch tags for more similarity to
 other C++ conventions.
This commit is contained in:
Mark Olesen
2022-11-11 18:19:22 +01:00
parent beea22b2f0
commit 25e874a4f0
19 changed files with 363 additions and 144 deletions

View File

@ -93,8 +93,8 @@ void Foam::ensightOutput::Detail::writeFieldContent
const globalIndex procAddr
(
parallel
? globalIndex(fld.size(), globalIndex::gatherOnly{})
: globalIndex(fld.size(), globalIndex::gatherNone{})
? globalIndex(globalIndex::gatherOnly{}, fld.size())
: globalIndex(globalIndex::gatherNone{}, fld.size())
);

View File

@ -567,8 +567,8 @@ bool Foam::vtk::fileWriter::writeProcIDs(const label nValues)
const globalIndex procAddr
(
parallel_
? globalIndex(nValues, globalIndex::gatherOnly{})
: globalIndex(nValues, globalIndex::gatherNone{})
? globalIndex(globalIndex::gatherOnly{}, nValues)
: globalIndex(globalIndex::gatherNone{}, nValues)
);
const label totalCount = procAddr.totalSize();