Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Update copyright lines for 2023.
[simgrid.git] / src / smpi / colls / allgather / allgather-pair.cpp
index d515128..7659cce 100644 (file)
@@ -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
@@ -62,18 +62,16 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *   comm: communication
  * Descrp: Function works when P is power of two. In each phase of P - 1
  *         phases, nodes in pair communicate their data.
- * Auther: Ahmad Faraj
+ * Author: Ahmad Faraj
  ****************************************************************************/
 
-namespace simgrid{
-namespace smpi{
-
+namespace simgrid::smpi {
 
 int
-Coll_allgather_pair::allgather(void *send_buff, int send_count,
-                               MPI_Datatype send_type, void *recv_buff,
-                               int recv_count, MPI_Datatype recv_type,
-                               MPI_Comm comm)
+allgather__pair(const void *send_buff, int send_count,
+                MPI_Datatype send_type, void *recv_buff,
+                int recv_count, MPI_Datatype recv_type,
+                MPI_Comm comm)
 {
 
   MPI_Aint extent;
@@ -88,7 +86,7 @@ Coll_allgather_pair::allgather(void *send_buff, int send_count,
   unsigned int num_procs = comm->size();
 
   if((num_procs&(num_procs-1)))
-    THROWF(arg_error,0, "allgather pair algorithm can't be used with non power of two number of processes ! ");
+    throw std::invalid_argument("allgather pair algorithm can't be used with non power of two number of processes!");
 
   extent = send_type->get_extent();
 
@@ -107,6 +105,4 @@ Coll_allgather_pair::allgather(void *send_buff, int send_count,
   return MPI_SUCCESS;
 }
 
-
-}
-}
+} // namespace simgrid::smpi