X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/8293a833f9c68986f8bd174d5bf3d04eb62918d7..54f3e8ef2b6a97e765f395cfdead327fb0989c5f:/src/smpi/colls/smpi_mpich_selector.c diff --git a/src/smpi/colls/smpi_mpich_selector.c b/src/smpi/colls/smpi_mpich_selector.c index c95613598f..2c6ab2dc40 100644 --- a/src/smpi/colls/smpi_mpich_selector.c +++ b/src/smpi/colls/smpi_mpich_selector.c @@ -176,7 +176,7 @@ int smpi_coll_tuned_alltoall_mpich( void *sbuf, int scount, comm); } - return smpi_coll_tuned_alltoall_pair (sbuf, scount, sdtype, + return smpi_coll_tuned_alltoall_ompi_pairwise (sbuf, scount, sdtype, rbuf, rcount, rdtype, comm); } @@ -424,20 +424,15 @@ int smpi_coll_tuned_reduce_scatter_mpich( void *sbuf, void *rbuf, ) { int comm_size, i; - size_t total_message_size, dsize; - int zerocounts = 0; + size_t total_message_size; XBT_DEBUG("smpi_coll_tuned_reduce_scatter_mpich"); comm_size = smpi_comm_size(comm); // We need data size for decision function - dsize=smpi_datatype_size(dtype); total_message_size = 0; for (i = 0; i < comm_size; i++) { total_message_size += rcounts[i]; - if (0 == rcounts[i]) { - zerocounts = 1; - } } if( smpi_op_is_commute(op) && total_message_size > 524288) { @@ -600,7 +595,7 @@ int smpi_coll_tuned_allgatherv_mpich(void *sbuf, int scount, MPI_Comm comm ) { - int communicator_size, pow2_size; + int communicator_size, pow2_size,i; size_t dsize, total_dsize; communicator_size = smpi_comm_size(comm); @@ -608,7 +603,12 @@ int smpi_coll_tuned_allgatherv_mpich(void *sbuf, int scount, /* Determine complete data size */ dsize=smpi_datatype_size(sdtype); total_dsize = dsize * scount * communicator_size; - + + total_dsize = 0; + for (i=0; i