Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Update copyright lines.
[simgrid.git] / src / smpi / colls / bcast / bcast-flattree-pipeline.cpp
index db597a5..1d18349 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2013-2017. The SimGrid Team.
+/* Copyright (c) 2013-2021. The SimGrid Team.
  * All rights reserved.                                                     */
 
 /* This program is free software; you can redistribute it and/or modify it
@@ -7,12 +7,11 @@
 #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 {
+namespace 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;
@@ -26,16 +25,13 @@ Coll_bcast_flattree_pipeline::bcast(void *buff, int count,
   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);
+    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,8 +54,8 @@ Coll_bcast_flattree_pipeline::bcast(void *buff, int count,
 
   }
 
-  free(request_array);
-  free(status_array);
+  delete[] request_array;
+  delete[] status_array;
   return MPI_SUCCESS;
 }