Located in file: MEL.hpp
MEL::CommCreateErrorHandler(ErrorHandlerFunc func)¶Create a Comm error handler by directly passing the function to use.
func - The function to use as an error handler
MEL::CommSetErrorHandler(const Comm &comm, const ErrorHandler &errHndl)¶Set a Comm error handler by passing the a error handler reference.
comm - The comm world to attach the error handler to
errHndl - The reference to a bound error handler
MEL::CommSetErrorHandler(const Comm &comm, ErrorHandlerFunc func)¶Set a Comm error handler by directly passing the function to use.
comm - The comm world to attach the error handler to
func - The function to use as an error handler
MEL::CommGetErrorHandler(const Comm &comm)¶Get the Comm error handler attached to a comm world.
comm - The comm world to get the error handler of
MEL::CommRank(const Comm &comm)¶Get the Comm rank of the process.
comm - The comm world to get the rank in
MEL::CommSize(const Comm &comm)¶Get the Comm world size.
comm - The comm world to get the size of
MEL::CommRemoteSize(const Comm &comm)¶Get the Comm world remote size.
comm - The comm world to get the remote size of
MEL::CommSplit(const Comm &comm, int colour)¶Split a comm world into seperate comms.
Processes with the same colour will end up in the same comm world
comm - The comm world to split
colour - The group that this process will end up in in the new comm world
MEL::CommDuplicate(const Comm &comm)¶Duplicate a comm world so that it can be handled independently.
comm - The comm world to duplicate
MEL::CommGetGroup(const Comm &comm)¶Get the group of a comm world.
comm - The comm world to get the group of
MEL::CommCreateFromGroup(const Comm &comm, const Group &group)¶Create a comm object from an existing comm object and a group object.
comm - The comm world to build off of
group - The group to use to build the new comm object
MEL::CommFree(Comm &comm)¶Free a comm world.
comm - The comm world to free
MEL::CommFree(std::vector<Comm> &comms)¶Free a vector comm world.
comms - A std::vector of comm world
MEL::CommFree(T0 &d0, T1 &d1, Args&&... args)¶Free the varadic set of comm worlds provided.
d0 - The first comm world to free
d1 - The second comm world to free
args - The varadic set of remaining comm worlds to free
MEL::CommIsNULL(const Comm &comm)¶Test if a comm world is the null comm world.
comm - The comm world to test
MEL::GroupUnion(const Group &lhs, const Group &rhs)¶Perform a set union of two comm groups.
lhs - The first operand of the union
rhs - The second operand of the union
MEL::GroupDifference(const Group &lhs, const Group &rhs)¶Perform a set difference of two comm groups.
lhs - The first operand of the difference
rhs - The second operand of the difference
MEL::GroupIntersection(const Group &lhs, const Group &rhs)¶Perform a set intersection of two comm groups.
lhs - The first operand of the intersection
rhs - The second operand of the intersection
MEL::GroupInclude(const Group &group, const int *ranks, const int num)¶Create a comm group including just the ranks from an exisitng group given in an array.
group - The original group to build off of
ranks - Pointer to the array of ranks
num - The length of the array
MEL::GroupInclude(const Group &group, const std::vector<int> &ranks)¶Create a comm group including just the ranks from an exisitng group given in an array.
group - The original group to build off of
ranks - A std::vector of ranks
MEL::GroupExclude(const Group &group, const int *ranks, const int num)¶Create a comm group excluding just the ranks from an exisitng group given in an array.
group - The original group to build off of
ranks - Pointer to the array of ranks
num - The length of the array
MEL::GroupExclude(const Group &group, const std::vector<int> &ranks)¶Create a comm group excluding just the ranks from an exisitng group given in an array.
group - The original group to build off of
ranks - A std::vector of ranks
MEL::GroupCompare(const Group &lhs, const Group &rhs)¶Compare two comm groups.
lhs - The first operand of the compare
rhs - The second operand of the compare
MEL::GroupIsSimilar(const Group &lhs, const Group &rhs)¶Compare if two comm groups are similar.
lhs - The first operand of the compare
rhs - The second operand of the compare
MEL::GroupIsIdentical(const Group &lhs, const Group &rhs)¶Compare if two comm groups are identical.
lhs - The first operand of the compare
rhs - The second operand of the compare
MEL::GroupIsCongruent(const Group &lhs, const Group &rhs)¶Compare if two comm groups are congruent.
lhs - The first operand of the compare
rhs - The second operand of the compare
MEL::GroupIsUnequal(const Group &lhs, const Group &rhs)¶Compare if two comm groups are unequal.
lhs - The first operand of the compare
rhs - The second operand of the compare
MEL::GroupIsNULL(const Group &group)¶Compare if a comm group is the null comm group.
group - The group to test
MEL::GroupRank(const Group &group)¶Gets the rank of the process within the given comm group.
group - The group to use
MEL::GroupSize(const Group &group)¶Gets the size of the given comm group.
group - The group to use
MEL::GroupFree(Group &group)¶Frees a comm group.
group - The group to free
MEL::GroupFree(std::vector<Group> &groups)¶Free a vector comm group.
groups - A std::vector of comm group
MEL::GroupFree(T0 &d0, T1 &d1, Args&&... args)¶Free the varadic set of comm groups provided.
d0 - The first comm groups to free
d1 - The second comm groups to free
args - The varadic set of remaining comm groups to free