Commit c117925
committed
Parallel-Split MPI_Alltoall algorithm as part of acoll collective.
-A new parallel-split algorithm for MPI_Alltoall is introduced as part
of acoll collective component, primarily targeting smaller message sizes
(<= 4KB). The algorithm, at a high level, operates by diving the ranks
into n groups, performing alltoall (using a base alltoall routine)
within the n groups in parallel, following which data is exchanged
between groups of n adjacent ranks (starting from rank 0). For example
if n=2, this algorithm splits the ranks into 2 groups, one containing
all even ranked processes and another containing all odd ranked
processes. Alltoall is performed within these 2 groups in parallel,
followed by which each adjacent even-odd pairs (pairs being [0,1],
[2,3],..) exchanges data to complete Alltoall operation. If n =4 or n=8,
alltoall is performed within 4 or 8 groups in parallel. Following this
step, groups of adjacent 4 or 8 ranks(starting from 0) exchanges data
among themselves to complete the alltoall operation.
-Additionally for intra node cases, an xpmem based linear algorithm for
MPI_Alltoall is added as part of acoll. When sbuf and rbuf can be
exposed via xpmem, the alltoall algorithm can be implemented as linear
direct copy from sbuf of all the other ranks to rbuf of a given rank.
Signed-off-by: Mithun Mohan <[email protected]>1 parent c71d630 commit c117925
File tree
6 files changed
+807
-0
lines changed- ompi/mca/coll/acoll
6 files changed
+807
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| 18 | + | |
18 | 19 | | |
19 | 20 | | |
20 | 21 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
69 | 76 | | |
70 | 77 | | |
71 | 78 | | |
| |||
80 | 87 | | |
81 | 88 | | |
82 | 89 | | |
| 90 | + | |
83 | 91 | | |
84 | 92 | | |
85 | 93 | | |
| |||
142 | 150 | | |
143 | 151 | | |
144 | 152 | | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
145 | 165 | | |
146 | 166 | | |
147 | 167 | | |
| |||
152 | 172 | | |
153 | 173 | | |
154 | 174 | | |
| 175 | + | |
155 | 176 | | |
156 | 177 | | |
157 | 178 | | |
| |||
170 | 191 | | |
171 | 192 | | |
172 | 193 | | |
| 194 | + | |
173 | 195 | | |
174 | 196 | | |
175 | 197 | | |
| |||
0 commit comments