X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/40616078da72e823931c1fb884949054699ec39d..f734ec7475682eb90323e804cbcfddd7e4523992:/src/smpi/colls/reduce/reduce-rab.cpp diff --git a/src/smpi/colls/reduce/reduce-rab.cpp b/src/smpi/colls/reduce/reduce-rab.cpp index 3a0c2c084f..394544c106 100644 --- a/src/smpi/colls/reduce/reduce-rab.cpp +++ b/src/smpi/colls/reduce/reduce-rab.cpp @@ -9,9 +9,9 @@ * but this header must not be removed. */ -#include "../colls_private.h" -#include -#include +#include "../colls_private.hpp" +#include +#include #define REDUCE_NEW_ALWAYS 1 @@ -65,7 +65,7 @@ Exa.: size=13 ==> n=3, r=5 (i.e. size == 13 == 2**n+r == 2**3 + 5) - The algoritm needs for the execution of one mpi_coll_reduce_fun + The algoritm needs for the execution of one Colls::reduce - for r==0 exec_time = n*(L1+L2) + buf_lng * (1-1/2**n) * (T1 + T2 + O/d) @@ -207,7 +207,7 @@ Step 5.n) 7: { [(a+b)+(c+d)] + [(e+f)+(g+h)] } + { [(i+j)+k] + [l+m] } for H -For mpi_coll_allreduce_fun: +For Colls::allreduce: ------------------ Step 6.1) @@ -249,7 +249,7 @@ Step 7) on all nodes 0..12 -For mpi_coll_reduce_fun: +For Colls::reduce: --------------- Step 6.0) @@ -497,7 +497,8 @@ static void MPI_I_do_op(void* b1, void* b2, void* rslt, int cnt, } REDUCE_LIMITS - +namespace simgrid{ +namespace smpi{ static int MPI_I_anyReduce(void* Sendbuf, void* Recvbuf, int count, MPI_Datatype mpi_datatype, MPI_Op mpi_op, int root, MPI_Comm comm, int is_all) { char *scr1buf, *scr2buf, *scr3buf, *xxx, *sendbuf, *recvbuf; @@ -921,19 +922,21 @@ static int MPI_I_anyReduce(void* Sendbuf, void* Recvbuf, int count, MPI_Datatype } /* new_prot */ /*otherwise:*/ if (is_all) - return( mpi_coll_allreduce_fun(Sendbuf, Recvbuf, count, mpi_datatype, mpi_op, comm) ); + return( Colls::allreduce(Sendbuf, Recvbuf, count, mpi_datatype, mpi_op, comm) ); else - return( mpi_coll_reduce_fun(Sendbuf,Recvbuf, count,mpi_datatype,mpi_op, root, comm) ); + return( Colls::reduce(Sendbuf,Recvbuf, count,mpi_datatype,mpi_op, root, comm) ); } #endif /*REDUCE_LIMITS*/ -int smpi_coll_tuned_reduce_rab(void* Sendbuf, void* Recvbuf, int count, MPI_Datatype datatype, MPI_Op op, int root, MPI_Comm comm) +int Coll_reduce_rab::reduce(void* Sendbuf, void* Recvbuf, int count, MPI_Datatype datatype, MPI_Op op, int root, MPI_Comm comm) { return( MPI_I_anyReduce(Sendbuf, Recvbuf, count, datatype, op, root, comm, 0) ); } -int smpi_coll_tuned_allreduce_rab(void* Sendbuf, void* Recvbuf, int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm) +int Coll_allreduce_rab::allreduce(void* Sendbuf, void* Recvbuf, int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm) { return( MPI_I_anyReduce(Sendbuf, Recvbuf, count, datatype, op, -1, comm, 1) ); } +} +}