1HPL_reduce(3) HPL Library Functions HPL_reduce(3)
2
3
4
6 HPL_reduce - Reduce operation.
7
9 #include "hpl.h"
10
11 int HPL_reduce( void * BUFFER, const int COUNT, const HPL_T_TYPE DTYPE,
12 const HPL_T_OP OP, const int ROOT, MPI_Comm COMM );
13
15 HPL_reduce performs a global reduce operation across all processes of a
16 group. Note that the input buffer is used as workarray and in all
17 processes but the accumulating process corrupting the original data.
18
20 BUFFER (local input/output) void *
21 On entry, BUFFER points to the buffer to be reduced. On
22 exit, and in process of rank ROOT this array contains the
23 reduced data. This buffer is also used as workspace during
24 the operation in the other processes of the group.
25
26 COUNT (global input) const int
27 On entry, COUNT indicates the number of entries in BUFFER.
28 COUNT must be at least zero.
29
30 DTYPE (global input) const HPL_T_TYPE
31 On entry, DTYPE specifies the type of the buffers operands.
32
33 OP (global input) const HPL_T_OP
34 On entry, OP is a pointer to the local combine function.
35
36 ROOT (global input) const int
37 On entry, ROOT is the coordinate of the accumulating process.
38
39 COMM (global/local input) MPI_Comm
40 The MPI communicator identifying the process collection.
41
43 HPL_broadcast (3), HPL_all_reduce (3), HPL_barrier (3), HPL_min (3),
44 HPL_max (3), HPL_sum (3).
45
46
47
48HPL 2.2 February 24, 2016 HPL_reduce(3)