X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/dccf1b41e9c7b5a696f01abceaa2779fe65f154f..d302816d682e544d2ec520f5844cfd271137296a:/teshsuite/smpi/coll-allreduce/coll-allreduce.c diff --git a/teshsuite/smpi/coll-allreduce/coll-allreduce.c b/teshsuite/smpi/coll-allreduce/coll-allreduce.c index 37f1594e33..509aec9883 100644 --- a/teshsuite/smpi/coll-allreduce/coll-allreduce.c +++ b/teshsuite/smpi/coll-allreduce/coll-allreduce.c @@ -17,10 +17,9 @@ int main(int argc, char *argv[]) { - int rank, size; + int rank; + int size; int i; - int *sb; - int *rb; int status; int mult=1; @@ -29,10 +28,11 @@ int main(int argc, char *argv[]) MPI_Comm_rank(MPI_COMM_WORLD, &rank); MPI_Comm_size(MPI_COMM_WORLD, &size); - if (maxlen>1)mult=size; - sb = (int *) xbt_malloc(size *maxlen * sizeof(int)); - rb = (int *) xbt_malloc(size *maxlen * sizeof(int)); - + if (maxlen > 1) + mult = maxlen > size ? size : maxlen; + int* sb = (int *) xbt_malloc(size *maxlen * sizeof(int)); + int* rb = (int *) xbt_malloc(size *maxlen * sizeof(int)); + for (i = 0; i < size *maxlen; ++i) { sb[i] = rank*size + i; rb[i] = 0; @@ -56,8 +56,8 @@ int main(int argc, char *argv[]) fflush(stdout); } } - free(sb); - free(rb); + xbt_free(sb); + xbt_free(rb); MPI_Finalize(); return (EXIT_SUCCESS); }