[mpich-discuss] Duplicate reception of messages
Mccall, Kurt E. (MSFC-EV41)
kurt.e.mccall at nasa.gov
Wed Jun 14 16:12:40 CDT 2023
My code seems to be receiving particular messages more than once -- I can tell from the unique variables they contain.
I have verified that each unique variable is being sent exactly once. The sender simply calls MPI_ISend to send a single
message containing an array of variables.
The receiver pseudo-code is as follows. Have I made a mistake in my use of MPI_Iprobe?
MPI_Status status;
int flag;
// loop in case there was more than one message queued up due to asynchrony between
// sender and receiver. Most of the time, there is only one message.
do {
flag = false;
MPI_Iprobe (sender_rank, tag, intercom, &flag, &status);
if (flag)
{
int len;
MPI_Get_count (&status, data_type, &len);
MPI_Recv (buffer, len, data_type, sender_rank, tag, intercom, MPI_STATUS_IGNORE);
// at this point, sometimes I see duplicate variable values in the buffer, in different
// calls to MPI_Recv. That is, s supposedly unique variable appears in two different
// message.
}
} while(flag);
Thanks for your help. Here is my build information:
MPICH Version: 4.0.1
MPICH Release date: Tue Feb 22 16:37:51 CST 2022
MPICH Device: ch3:nemesis
MPICH configure: --prefix=/opt/mpich --with-device=ch3:nemesis --with-slurm --disable-fortran -enable-debuginfo --enable-g=debug
MPICH CC: gcc -g -O2
MPICH CXX: g++ -g -O2
MPICH F77: -g
MPICH FC: -g
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mpich.org/pipermail/discuss/attachments/20230614/036b715f/attachment.html>
More information about the discuss
mailing list