Skip to content

Commit 2199bda

Browse files
authored
Merge pull request #9606 from jjhursey/fix-libnbc-di
libnbc wrong answer (DI) fix for reduce_scatter
2 parents ed35599 + 944a360 commit 2199bda

File tree

2 files changed

+8
-5
lines changed

2 files changed

+8
-5
lines changed

ompi/mca/coll/libnbc/nbc_ireduce_scatter.c

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
* Copyright (c) 2015 The University of Tennessee and The University
1313
* of Tennessee Research Foundation. All rights
1414
* reserved.
15-
* Copyright (c) 2017 IBM Corporation. All rights reserved.
15+
* Copyright (c) 2017-2021 IBM Corporation. All rights reserved.
1616
* Copyright (c) 2018 FUJITSU LIMITED. All rights reserved.
1717
* $COPYRIGHT$
1818
*
@@ -161,7 +161,8 @@ static int nbc_reduce_scatter_init(const void* sendbuf, void* recvbuf, const int
161161

162162
/* rank 0 is root and sends - all others receive */
163163
if (rank == 0) {
164-
for (long int r = 1, offset = 0 ; r < p ; ++r) {
164+
size_t offset = 0;
165+
for (long int r = 1 ; r < p ; ++r) {
165166
offset += recvcounts[r-1];
166167
sbuf = lbuf + (offset*ext);
167168
/* root sends the right buffer to the right receiver */
@@ -313,7 +314,8 @@ static int nbc_reduce_scatter_inter_init (const void* sendbuf, void* recvbuf, co
313314
free(tmpbuf);
314315
return res;
315316
}
316-
for (int peer = 1, offset = recvcounts[0] * ext; peer < lsize ; ++peer) {
317+
size_t offset = recvcounts[0] * ext;
318+
for (int peer = 1; peer < lsize ; ++peer) {
317319
res = NBC_Sched_local_send (lbuf + offset, true, recvcounts[peer], datatype, peer, schedule,
318320
false);
319321
if (OPAL_UNLIKELY(OMPI_SUCCESS != res)) {

ompi/mca/coll/libnbc/nbc_ireduce_scatter_block.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* reserved.
1111
* Copyright (c) 2014-2018 Research Organization for Information Science
1212
* and Technology (RIST). All rights reserved.
13-
* Copyright (c) 2017 IBM Corporation. All rights reserved.
13+
* Copyright (c) 2017-2021 IBM Corporation. All rights reserved.
1414
* Copyright (c) 2018 FUJITSU LIMITED. All rights reserved.
1515
* $COPYRIGHT$
1616
*
@@ -166,7 +166,8 @@ static int nbc_reduce_scatter_block_init(const void* sendbuf, void* recvbuf, int
166166
return res;
167167
}
168168
} else {
169-
for (int r = 1, offset = 0 ; r < p ; ++r) {
169+
size_t offset = 0;
170+
for (int r = 1 ; r < p ; ++r) {
170171
offset += recvcount;
171172
sbuf = lbuf + (offset*ext);
172173
/* root sends the right buffer to the right receiver */

0 commit comments

Comments
 (0)