X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/d20f024dba9ff1e9c8822237caaf963b9e913889..3907e83884bae6278656e9cd2cb7ef92a8f707fb:/src/smpi/colls/reduce/reduce-flat-tree.cpp diff --git a/src/smpi/colls/reduce/reduce-flat-tree.cpp b/src/smpi/colls/reduce/reduce-flat-tree.cpp index 225b456d12..af4b4e6406 100644 --- a/src/smpi/colls/reduce/reduce-flat-tree.cpp +++ b/src/smpi/colls/reduce/reduce-flat-tree.cpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2017. 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,19 +6,17 @@ #include "../colls_private.hpp" //#include -namespace simgrid{ -namespace smpi{ -int -Coll_reduce_flat_tree::reduce(void *sbuf, void *rbuf, int count, - MPI_Datatype dtype, MPI_Op op, - int root, MPI_Comm comm) +namespace simgrid::smpi { +int reduce__flat_tree(const void *sbuf, void *rbuf, int count, + MPI_Datatype dtype, MPI_Op op, + int root, MPI_Comm comm) { int i, tag = COLL_TAG_REDUCE; int size; int rank; MPI_Aint extent; - char *origin = 0; - char *inbuf; + unsigned char* origin = nullptr; + const unsigned char* inbuf; MPI_Status status; rank = comm->rank(); @@ -36,8 +34,7 @@ Coll_reduce_flat_tree::reduce(void *sbuf, void *rbuf, int count, messages. */ if (size > 1) - origin = (char *) smpi_get_tmp_recvbuffer(count * extent); - + origin = smpi_get_tmp_recvbuffer(count * extent); /* Initialize the receive buffer. */ if (rank == (size - 1)) @@ -50,7 +47,7 @@ Coll_reduce_flat_tree::reduce(void *sbuf, void *rbuf, int count, for (i = size - 2; i >= 0; --i) { if (rank == i) - inbuf = static_cast(sbuf); + inbuf = static_cast(sbuf); else { Request::recv(origin, count, dtype, i, tag, comm, &status); inbuf = origin; @@ -61,11 +58,9 @@ Coll_reduce_flat_tree::reduce(void *sbuf, void *rbuf, int count, } - if (origin) - smpi_free_tmp_buffer(origin); + smpi_free_tmp_buffer(origin); /* All done */ return 0; } -} -} +} // namespace simgrid::smpi