X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/8bc85164acb335cf909052b966b2ee4932e06cd7..39e98567c557d81dd5011b8e2ae883d4674b0c9d:/src/smpi/colls/allgather/allgather-NTSLR-NB.cpp diff --git a/src/smpi/colls/allgather/allgather-NTSLR-NB.cpp b/src/smpi/colls/allgather/allgather-NTSLR-NB.cpp index 116e152d83..ff3527877c 100644 --- a/src/smpi/colls/allgather/allgather-NTSLR-NB.cpp +++ b/src/smpi/colls/allgather/allgather-NTSLR-NB.cpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2020. The SimGrid Team. +/* Copyright (c) 2013-2023. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -6,8 +6,7 @@ #include "../colls_private.hpp" -namespace simgrid{ -namespace smpi{ +namespace simgrid::smpi { // Allgather-Non-Topology-Specific-Logical-Ring algorithm int @@ -25,12 +24,9 @@ allgather__NTSLR_NB(const void *sbuf, int scount, MPI_Datatype stype, size = comm->size(); rextent = rtype->get_extent(); sextent = stype->get_extent(); - MPI_Request* rrequest_array = new MPI_Request[size]; - MPI_Request* srequest_array = new MPI_Request[size]; - // irregular case use default MPI functions if (scount * sextent != rcount * rextent) { - XBT_WARN("MPI_allgather_NTSLR_NB use default MPI_allgather."); + XBT_INFO("MPI_allgather_NTSLR_NB: irregular case, use default MPI_allgather."); allgather__default(sbuf, scount, stype, rbuf, rcount, rtype, comm); return MPI_SUCCESS; } @@ -49,6 +45,9 @@ allgather__NTSLR_NB(const void *sbuf, int scount, MPI_Datatype stype, //start sending logical ring message int increment = scount * sextent; + auto* rrequest_array = new MPI_Request[size]; + auto* srequest_array = new MPI_Request[size]; + //post all irecv first for (i = 0; i < size - 1; i++) { recv_offset = ((rank - i - 1 + size) % size) * increment; @@ -69,5 +68,4 @@ allgather__NTSLR_NB(const void *sbuf, int scount, MPI_Datatype stype, return MPI_SUCCESS; } -} -} +} // namespace simgrid::smpi