X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/670b0fffff17a5dc52cc41ee347aa54922d2138a..8b9696f20b03e9968251c7d4eb34061ef0ede759:/src/smpi/smpi_pmpi.c?ds=sidebyside diff --git a/src/smpi/smpi_pmpi.c b/src/smpi/smpi_pmpi.c index 349bb58e02..ac393b2e62 100644 --- a/src/smpi/smpi_pmpi.c +++ b/src/smpi/smpi_pmpi.c @@ -131,7 +131,7 @@ int PMPI_Abort(MPI_Comm comm, int errorcode) double PMPI_Wtime(void) { double time; - if (smpi_process_initialized() && !smpi_process_finalized() && !smpi_sample_is_running) { + if (smpi_process_initialized() && !smpi_process_finalized() && !smpi_process_get_sampling()) { smpi_bench_end(); time = SIMIX_get_clock(); smpi_bench_begin(); @@ -1230,9 +1230,11 @@ int PMPI_Recv(void *buf, int count, MPI_Datatype datatype, int src, int tag, #ifdef HAVE_TRACING //the src may not have been known at the beginning of the recv (MPI_ANY_SOURCE) - if(status!=MPI_STATUS_IGNORE)src_traced = smpi_group_index(smpi_comm_group(comm), status->MPI_SOURCE); + if(status!=MPI_STATUS_IGNORE){ + src_traced = smpi_group_index(smpi_comm_group(comm), status->MPI_SOURCE); + TRACE_smpi_recv(rank, src_traced, rank); + } TRACE_smpi_ptp_out(rank, src_traced, rank, __FUNCTION__); - TRACE_smpi_recv(rank, src_traced, rank); #endif } @@ -1568,7 +1570,8 @@ int PMPI_Wait(MPI_Request * request, MPI_Status * status) int PMPI_Waitany(int count, MPI_Request requests[], int *index, MPI_Status * status) { - int retval = 0; + if (index == NULL) + return MPI_ERR_ARG; smpi_bench_end(); #ifdef HAVE_TRACING @@ -1595,12 +1598,7 @@ int PMPI_Waitany(int count, MPI_Request requests[], int *index, MPI_Status * sta TRACE_smpi_ptp_in(rank_traced, -1, -1, __FUNCTION__,extra); #endif - if (index == NULL) { - retval = MPI_ERR_ARG; - } else { - *index = smpi_mpi_waitany(count, requests, status); - retval = MPI_SUCCESS; - } + *index = smpi_mpi_waitany(count, requests, status); #ifdef HAVE_TRACING if(*index!=MPI_UNDEFINED){ int src_traced = srcs[*index]; @@ -1623,7 +1621,7 @@ int PMPI_Waitany(int count, MPI_Request requests[], int *index, MPI_Status * sta } #endif smpi_bench_begin(); - return retval; + return MPI_SUCCESS; } int PMPI_Waitall(int count, MPI_Request requests[], MPI_Status status[])