X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/252d554dc64ab6e538e22bf03a1d89f982aaef01..8c79683e65ca6a0182de49a00615ca4372b58c47:/src/smpi/smpi_topo.cpp diff --git a/src/smpi/smpi_topo.cpp b/src/smpi/smpi_topo.cpp index 2f22566b87..5d5417e065 100644 --- a/src/smpi/smpi_topo.cpp +++ b/src/smpi/smpi_topo.cpp @@ -45,7 +45,7 @@ typedef struct s_smpi_mpi_topology { } s_smpi_mpi_topology_t; void smpi_topo_destroy(MPI_Topology topo) { - if(topo == NULL) { + if(topo == nullptr) { return; } switch (topo->kind) { @@ -64,6 +64,7 @@ void smpi_topo_destroy(MPI_Topology topo) { return; break; } + xbt_free(topo); } MPI_Topology smpi_topo_create(MPIR_Topo_type kind) { @@ -79,15 +80,15 @@ MPI_Topology smpi_topo_create(MPIR_Topo_type kind) { void smpi_cart_topo_destroy(MPIR_Cart_Topology cart) { if (cart) { if(cart->dims) { - free(cart->dims); + xbt_free(cart->dims); } if(cart->periodic) { - free(cart->periodic); + xbt_free(cart->periodic); } if(cart->position) { - free(cart->position); + xbt_free(cart->position); } - free(cart); + xbt_free(cart); } } @@ -132,9 +133,6 @@ int smpi_mpi_cart_create(MPI_Comm comm_old, int ndims, int dims[], int periods[] newCart->topo.cart->nnodes = newSize; - /* memcpy(newCart->topo.cart->dims, dims, ndims * sizeof(*newCart->topo.cart->dims)); */ - /* memcpy(newCart->topo.cart->periodic, periods, ndims * sizeof(*newCart->topo.cart->periodic)); */ - // FIXME : code duplication... See smpi_mpi_cart_coords nranks = newSize; for (i=0; itopo.cart->ndims; - int i, j = 0, newNDims, *newDims = NULL, *newPeriodic = NULL; + int i, j = 0, newNDims, *newDims = nullptr, *newPeriodic = nullptr; - if (remain_dims == NULL && oldNDims != 0) { + if (remain_dims == nullptr && oldNDims != 0) { return MPI_ERR_ARG; } newNDims = 0; for (i = 0 ; i < oldNDims ; i++) { - if (remain_dims[i]) newNDims++; + if (remain_dims[i]) + newNDims++; } if (newNDims > 0) { @@ -236,7 +235,8 @@ int smpi_mpi_cart_rank(MPI_Comm comm, int* coords, int* rank) { } else if (coord < 0) { if(topo->topo.cart->periodic[i]) { coord = coord % topo->topo.cart->dims[i]; - if (coord) coord = topo->topo.cart->dims[i] + coord; + if (coord) + coord = topo->topo.cart->dims[i] + coord; } else { *rank = -1; return MPI_ERR_ARG; @@ -424,7 +424,7 @@ assignnodes(int ndim, int nfactor, int *pfacts, int **pdims) /* Allocate and initialize the bins */ bins = (int *) malloc((unsigned) ndim * sizeof(int)); - if (NULL == bins) { + if (nullptr == bins) { return MPI_ERR_NO_MEM; } *pdims = bins; @@ -477,7 +477,7 @@ static int getfactors(int num, int *nfactors, int **factors) { if(num < 2) { (*nfactors) = 0; - (*factors) = NULL; + (*factors) = nullptr; return MPI_SUCCESS; } /* Allocate the array of prime factors which cannot exceed log_2(num) entries */