Located in file: MEL.hpp
MEL::Functor::MAX(T &a, T &b)¶Binary Max Functor.
a - The left argument
b - The right argument
MEL::Functor::MIN(T &a, T &b)¶Binary Min Functor.
a - The left argument
b - The right argument
MEL::Functor::SUM(T &a, T &b)¶Binary Sum Functor.
a - The left argument
b - The right argument
MEL::Functor::PROD(T &a, T &b)¶Binary Product Functor.
a - The left argument
b - The right argument
MEL::Functor::LAND(T &a, T &b)¶Binary Logical And Functor.
a - The left argument
b - The right argument
MEL::Functor::BAND(T &a, T &b)¶Binary bitwise and Functor.
a - The left argument
b - The right argument
MEL::Functor::LOR(T &a, T &b)¶Binary logical or Functor.
a - The left argument
b - The right argument
MEL::Functor::BOR(T &a, T &b)¶Binary bitwise or Functor.
a - The left argument
b - The right argument
MEL::Functor::LXOR(T &a, T &b)¶Binary logical exclusive or Functor.
a - The left argument
b - The right argument
MEL::Functor::BXOR(T &a, T &b)¶Binary bitwise exclusive or Functor.
a - The left argument
b - The right argument
MEL::Functor::ARRAY_OP_FUNC(T *in, T *inout, int *len, MPI_Datatype *dptr)¶Maps the given binary functor to the local array of a reduction / accumulate operation.
in - The left hand array for the reduction
inout - The right hand array for the reduction. This array is modified to reflect the result of the functor on each element
len - Pointer to a single int representing the number of elements to be processed
dptr - Pointer to a single derived datatype representing the data to be processed
MEL::OpCreate(bool commute = true)¶Create a derived operation for reduction type functions.
commute - Is the operation commutative?
MEL::OpFree(Op &op)¶Free a derived operation.
op - The op to free
MEL::OpFree(std::vector<Op> &ops)¶Free a std::vector of derived operations.
ops - A std::vector of ops to be freed
MEL::OpFree(T0 &d0, T1 &d1, Args&&... args)¶Free a varadic set of derived operations.
d0 - The first op to free
d1 - The second op to free
args - The remaining ops to free