Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Update copyright headers.
[simgrid.git] / src / smpi / colls / reduce / reduce-binomial.cpp
index 82a5fe2..196e9fa 100644 (file)
@@ -1,10 +1,11 @@
-/* Copyright (c) 2013-2017. The SimGrid Team.
+/* Copyright (c) 2013-2018. 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"
+#include <algorithm>
 
 //#include <star-reduction.c>
 namespace simgrid{
@@ -31,9 +32,9 @@ int Coll_reduce_binomial::reduce(void *sendbuf, void *recvbuf, int count,
   tmp_buf = (void *) smpi_get_tmp_sendbuffer(count * extent);
   int is_commutative =  (op==MPI_OP_NULL || op->is_commutative());
   mask = 1;
-  
+
   int lroot;
-  if (is_commutative) 
+  if (is_commutative)
         lroot   = root;
   else
         lroot   = 0;
@@ -43,11 +44,11 @@ int Coll_reduce_binomial::reduce(void *sendbuf, void *recvbuf, int count,
 
   /* adjust for potential negative lower bound in datatype */
   tmp_buf = (void *)((char*)tmp_buf - true_lb);
-    
+
   /* If I'm not the root, then my recvbuf may not be valid, therefore
      I have to allocate a temporary one */
   if (rank != root) {
-      recvbuf = (void *) smpi_get_tmp_recvbuffer(count*(MAX(extent,true_extent)));
+      recvbuf = (void*)smpi_get_tmp_recvbuffer(count * std::max(extent, true_extent));
       recvbuf = (void *)((char*)recvbuf - true_lb);
   }
    if ((rank != root) || (sendbuf != MPI_IN_PLACE)) {
@@ -61,7 +62,7 @@ int Coll_reduce_binomial::reduce(void *sendbuf, void *recvbuf, int count,
       if (source < comm_size) {
         source = (source + lroot) % comm_size;
         Request::recv(tmp_buf, count, datatype, source, tag, comm, &status);
-        
+
         if (is_commutative) {
           if(op!=MPI_OP_NULL) op->apply( tmp_buf, recvbuf, &count, datatype);
         } else {
@@ -86,7 +87,7 @@ int Coll_reduce_binomial::reduce(void *sendbuf, void *recvbuf, int count,
   }
 
   if (rank != root) {
-         smpi_free_tmp_buffer(recvbuf);
+    smpi_free_tmp_buffer(recvbuf);
   }
   smpi_free_tmp_buffer(tmp_buf);