A masked dimension minimum value schedule is a communication schedule for finding, under the control of mask, the smallest elements of a distributed array along one of its dimensions, yielding a reduced array with rank one less than the source.
A masked dimension minimum value schedule is described by a collective object with local components of class MinvalDimMsk. The public interface of the MinvalDimMsk class is
class DAD ; template<class T> class MinvalDimMsk { public : MinvalDimMsk(const DAD* res, const DAD* src, const int dim, const DAD* msk) ; void execute(T* resDat, T* srcDat, int* mskDat) ; private : ... } ;