X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/863aeead864a309c494893a1b06ec33ed2b7daf1..HEAD:/src/smpi/colls/bcast/bcast-flattree-pipeline.cpp diff --git a/src/smpi/colls/bcast/bcast-flattree-pipeline.cpp b/src/smpi/colls/bcast/bcast-flattree-pipeline.cpp index f03eb3aaae..e2282bfbf9 100644 --- a/src/smpi/colls/bcast/bcast-flattree-pipeline.cpp +++ b/src/smpi/colls/bcast/bcast-flattree-pipeline.cpp @@ -1,18 +1,16 @@ -/* 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 * under the terms of the license (GNU LGPL) which comes with this package. */ -#include "../colls_private.h" +#include "../colls_private.hpp" int flattree_segment_in_byte = 8192; -namespace simgrid{ -namespace smpi{ -int -Coll_bcast_flattree_pipeline::bcast(void *buff, int count, - MPI_Datatype data_type, int root, - MPI_Comm comm) +namespace simgrid::smpi { +int bcast__flattree_pipeline(void *buff, int count, + MPI_Datatype data_type, int root, + MPI_Comm comm) { int i, j, rank, num_procs; int tag = COLL_TAG_BCAST; @@ -25,17 +23,14 @@ Coll_bcast_flattree_pipeline::bcast(void *buff, int count, int pipe_length = count / segment; int increment = segment * extent; if (pipe_length==0) { - XBT_WARN("MPI_bcast_flattree_pipeline use default MPI_bcast_flattree."); - return Coll_bcast_flattree::bcast(buff, count, data_type, root, comm); + XBT_INFO("MPI_bcast_flattree_pipeline: pipe_length=0, use default MPI_bcast_flattree."); + return bcast__flattree(buff, count, data_type, root, comm); } rank = comm->rank(); num_procs = comm->size(); - MPI_Request *request_array; - MPI_Status *status_array; - - request_array = (MPI_Request *) xbt_malloc(pipe_length * sizeof(MPI_Request)); - status_array = (MPI_Status *) xbt_malloc(pipe_length * sizeof(MPI_Status)); + auto* request_array = new MPI_Request[pipe_length]; + auto* status_array = new MPI_Status[pipe_length]; if (rank != root) { for (i = 0; i < pipe_length; i++) { @@ -58,10 +53,9 @@ Coll_bcast_flattree_pipeline::bcast(void *buff, int count, } - free(request_array); - free(status_array); + delete[] request_array; + delete[] status_array; return MPI_SUCCESS; } -} -} +} // namespace simgrid::smpi