X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/5516052184904d7c1bdbf64b4674b9f121073d15..228a62c400df7da0b1b48186949e078af7a532ab:/teshsuite/smpi/macro-shared/macro-shared.c diff --git a/teshsuite/smpi/macro-shared/macro-shared.c b/teshsuite/smpi/macro-shared/macro-shared.c index 7ce48e7843..6e739ad2d8 100644 --- a/teshsuite/smpi/macro-shared/macro-shared.c +++ b/teshsuite/smpi/macro-shared/macro-shared.c @@ -54,6 +54,17 @@ int main(int argc, char *argv[]) printf("[%d] After change, the value in the shared buffer is: %" PRIu64"\n", rank, *buf); + //try to send/receive shared data, to check if we skip the copies correctly. + if(rank==0) + MPI_Send(buf, 1, MPI_AINT, 1, 100, MPI_COMM_WORLD); + else if (rank ==1) + MPI_Recv(buf, 1, MPI_AINT, 0, 100, MPI_COMM_WORLD, MPI_STATUS_IGNORE); + + //same thing with an MPI_IN_PLACE collective (no) + if (rank == 0) + MPI_Scatter(buf, 1, MPI_AINT, MPI_IN_PLACE, -1, MPI_DATATYPE_NULL, 0, MPI_COMM_WORLD); + else + MPI_Scatter(NULL, -1, MPI_DATATYPE_NULL, buf, 1, MPI_AINT, 0, MPI_COMM_WORLD); SMPI_SHARED_FREE(buf); MPI_Finalize();