X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/61427a88a76a2c2ef25d0d5b8132995c6f550e5c..fe304706848f0a64477d4687b3ea97d5b9a0c35c:/src/smpi/colls/barrier/barrier-ompi.cpp diff --git a/src/smpi/colls/barrier/barrier-ompi.cpp b/src/smpi/colls/barrier/barrier-ompi.cpp index 12c3af3a2c..500d37ad70 100644 --- a/src/smpi/colls/barrier/barrier-ompi.cpp +++ b/src/smpi/colls/barrier/barrier-ompi.cpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2017. The SimGrid Team. +/* Copyright (c) 2013-2019. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -20,9 +20,8 @@ * Additional copyrights may follow */ -#include "../colls_private.h" -#include "../coll_tuned_topo.h" - +#include "../coll_tuned_topo.hpp" +#include "../colls_private.hpp" /* * Barrier is ment to be a synchronous operation, as some BTLs can mark @@ -266,11 +265,9 @@ int Coll_barrier_ompi_basic_linear::barrier(MPI_Comm comm) else { MPI_Request* requests; - requests = (MPI_Request*)malloc( size * sizeof(MPI_Request) ); + requests = new MPI_Request[size]; for (i = 1; i < size; ++i) { - requests[i] = Request::irecv(NULL, 0, MPI_BYTE, MPI_ANY_SOURCE, - COLL_TAG_BARRIER, comm - ); + requests[i] = Request::irecv(NULL, 0, MPI_BYTE, i, COLL_TAG_BARRIER, comm); } Request::waitall( size-1, requests+1, MPI_STATUSES_IGNORE ); @@ -281,7 +278,7 @@ int Coll_barrier_ompi_basic_linear::barrier(MPI_Comm comm) ); } Request::waitall( size-1, requests+1, MPI_STATUSES_IGNORE ); - free( requests ); + delete[] requests; } /* All done */