Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Rename SIMGRID_HAVE_MC into SIMGRID_HAVE_STATEFUL_MC (so that MC can be optional...
[simgrid.git] / src / smpi / colls / smpi_mpich_selector.cpp
index e877a88..d01a1a8 100644 (file)
@@ -1,6 +1,6 @@
 /* selector for collective algorithms based on mpich decision logic */
 
-/* Copyright (c) 2009-2020. The SimGrid Team.
+/* Copyright (c) 2009-2023. The SimGrid Team.
  * All rights reserved.                                                     */
 
 /* This program is free software; you can redistribute it and/or modify it
@@ -8,6 +8,8 @@
 
 #include "colls_private.hpp"
 
+#include <memory>
+
 /* This is the default implementation of allreduce. The algorithm is:
 
    Algorithm: MPI_Allreduce
@@ -56,8 +58,7 @@
 
    End Algorithm: MPI_Allreduce
 */
-namespace simgrid{
-namespace smpi{
+namespace simgrid::smpi {
 int allreduce__mpich(const void *sbuf, void *rbuf, int count,
                         MPI_Datatype dtype, MPI_Op op, MPI_Comm comm)
 {
@@ -695,13 +696,11 @@ int scatter__mpich(const void *sbuf, int scount,
 {
   std::unique_ptr<unsigned char[]> tmp_buf;
   if(comm->rank()!=root){
-    tmp_buf.reset(new unsigned char[rcount * rdtype->get_extent()]);
+    tmp_buf = std::make_unique<unsigned char[]>(rcount * rdtype->get_extent());
     sbuf   = tmp_buf.get();
     scount = rcount;
     sdtype = rdtype;
   }
   return scatter__ompi_binomial(sbuf, scount, sdtype, rbuf, rcount, rdtype, root, comm);
 }
-}
-}
-
+} // namespace simgrid::smpi