Fix wrong error marker for Imrecv local concurrency tests
This marks MPI_Imrecv
as error source instead of the MPI_Mprobe
call
for the local concurrency issue.
Before:
if (rank == 0) {
/*MBBERROR_BEGIN*/ MPI_Mprobe(1, 0, MPI_COMM_WORLD, &mpi_message_0, MPI_STATUS_IGNORE); /*MBBERROR_END*/
MPI_Imrecv(buf, 10, MPI_INT, &mpi_message_0,
&mpi_request_0);
/*MBBERROR_BEGIN*/ buf[2] = 1; /*MBBERROR_END*/
MPI_Wait(&mpi_request_0, MPI_STATUS_IGNORE);
}
After:
if (rank == 0) {
MPI_Mprobe(1, 0, MPI_COMM_WORLD, &mpi_message_0, MPI_STATUS_IGNORE);
/*MBBERROR_BEGIN*/ MPI_Imrecv(buf, 10, MPI_INT, &mpi_message_0,
&mpi_request_0); /*MBBERROR_END*/
/*MBBERROR_BEGIN*/ buf[2] = 1; /*MBBERROR_END*/
MPI_Wait(&mpi_request_0, MPI_STATUS_IGNORE);
}
Edited by Simon Schwitanski