34template <
class InputIterator,
class OutputIterator,
class ReduceOp>
36 const ReduceOp&,
bool *IncludeVal = 0);
39template <
class InputIterator,
class OutputIterator,
class ReduceOp>
40bool reduce(InputIterator, InputIterator, OutputIterator,
41 const ReduceOp&,
bool *IncludeVal = 0);
45template <
class T,
class ReduceOp>
49template <
class T,
class ReduceOp>
50bool reduce(
T& input,
T& output,
const ReduceOp& op);
58template <
class T,
class ReduceOp>
63template <
class T,
class ReduceOp>
70template <
class T,
class ReduceOp>
77template <
class T,
class ReduceOp>
78bool reduce(
T& input,
T& output,
const ReduceOp& op)
93template <
class InputIterator,
class RandomIterator,
class ScatterOp>
95 int *,
int *,
const ScatterOp&);
98template <
class InputIterator,
class RandomIterator,
class ScatterOp>
99bool scatter(InputIterator, InputIterator, RandomIterator,
100 int *,
int *,
const ScatterOp&);
108void gather(
const T* input,
T* output,
int count,
int root = 0);
115void scatter(
const T* input,
T* output,
int count,
int root = 0);
121template <
typename T,
class Op>
122void reduce(
const T* input,
T* output,
int count, Op op,
int root = 0);
124template <
typename T,
class Op>
125void new_reduce(
const T* input,
T* output,
int count, Op op,
int root = 0);
127template <
typename T,
class Op>
128void new_reduce(
T* inout,
int count, Op op,
int root = 0);
130template <
typename T,
class Op>
131void reduce(
const T& input,
T& output,
int count, Op op,
int root = 0);
133template <
typename T,
class Op>
134void allreduce(
const T* input,
T* output,
int count, Op op);
136template <
typename T,
class Op>
137void allreduce(
const T& input,
T& output,
int count, Op op);
139template <
typename T,
class Op>
142template <
typename T,
class Op>
void allreduce(const T *input, T *output, int count, Op op)
bool reduce_masked(Communicate &comm, T &input, T &output, const ReduceOp &op, bool IncludeVal)
bool reduce(Communicate &, InputIterator, InputIterator, OutputIterator, const ReduceOp &, bool *IncludeVal=0)
bool scatter(Communicate &, InputIterator, InputIterator, RandomIterator, int *, int *, const ScatterOp &)
void new_reduce(const T *input, T *output, int count, Op op, int root=0)
void gather(const T *input, T *output, int count, int root=0)