Skip to content

Conversation

@wenduwan
Copy link
Contributor

Patch series for (i)alltoallv

The previous change c1a98f1 should have
checked for total data size in bytes instead of count. This patch fixes
that.

Signed-off-by: Wenduo Wang <[email protected]>
(cherry picked from commit a7b4d3e)
As per MPI specification the amount of data sent must be equal to the
amount of data received for each communication pair, and therefore
both count and datatype size should be accounted for to determine if
the data is 0-byte and therefore skippable.

Signed-off-by: Wenduo Wang <[email protected]>
(cherry picked from commit a3a4787)
This is a followup to open-mpi#12198. The previous change introduced a
bug that skips send and recv if either datatype is of 0-size.
This is wrong because MPI_Alltoallv allows each process to use
a unique datatype.

The correct solution is to check send and recv datatype size
separately and skip send and recv accordingly. This includes the
pairwise algorithm which should not send/recv 0-count data.

Signed-off-by: Wenduo Wang <[email protected]>
(cherry picked from commit f242d0d)
This is a followup to open-mpi#12198. The previous change introduced a
bug that skips send and recv if either datatype is of 0-size.
This is wrong because MPI_Ialltoallv allows each process to use
a unique datatype.

The correct solution is to check send and recv datatype size
separately and skip send and recv accordingly.

Signed-off-by: Wenduo Wang <[email protected]>
(cherry picked from commit 737eefd)
@wenduwan wenduwan requested a review from janjust February 17, 2024 18:03
@github-actions github-actions bot added this to the v5.0.3 milestone Feb 17, 2024
@janjust janjust merged commit 856136e into open-mpi:v5.0.x Feb 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants