X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/40616078da72e823931c1fb884949054699ec39d..b8df87e176f27b25534f27d7e240defa32ca35bc:/src/smpi/colls/reduce/reduce-NTSL.cpp diff --git a/src/smpi/colls/reduce/reduce-NTSL.cpp b/src/smpi/colls/reduce/reduce-NTSL.cpp index 22823123eb..6d3dfa6ebb 100644 --- a/src/smpi/colls/reduce/reduce-NTSL.cpp +++ b/src/smpi/colls/reduce/reduce-NTSL.cpp @@ -1,18 +1,20 @@ -/* Copyright (c) 2013-2014. The SimGrid Team. +/* Copyright (c) 2013-2019. 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 int reduce_NTSL_segment_size_in_byte = 8192; -/* Non-topology-specific pipelined linear-bcast function +/* Non-topology-specific pipelined linear-bcast function 0->1, 1->2 ,2->3, ....., ->last node : in a pipeline fashion */ -int smpi_coll_tuned_reduce_NTSL(void *buf, void *rbuf, int count, +namespace simgrid{ +namespace smpi{ +int Coll_reduce_NTSL::reduce(void *buf, void *rbuf, int count, MPI_Datatype datatype, MPI_Op op, int root, MPI_Comm comm) { @@ -43,7 +45,7 @@ int smpi_coll_tuned_reduce_NTSL(void *buf, void *rbuf, int count, /* use for buffer offset for sending and receiving data = segment size in byte */ int increment = segment * extent; - /* if the input size is not divisible by segment size => + /* if the input size is not divisible by segment size => the small remainder will be done with native implementation */ int remainder = count % segment; @@ -57,7 +59,7 @@ int smpi_coll_tuned_reduce_NTSL(void *buf, void *rbuf, int count, Request::send(buf,count,datatype,0,tag,comm); } else if (rank == 0) { - Request::recv(buf,count,datatype,root,tag,comm,&status); + Request::recv(buf,count,datatype,root,tag,comm,&status); } } */ @@ -141,8 +143,8 @@ int smpi_coll_tuned_reduce_NTSL(void *buf, void *rbuf, int count, /* when count is not divisible by block size, use default BCAST for the remainder */ if ((remainder != 0) && (count > segment)) { - XBT_WARN("MPI_reduce_NTSL use default MPI_reduce."); - smpi_mpi_reduce((char *)buf + (pipe_length * increment), + XBT_WARN("MPI_reduce_NTSL use default MPI_reduce."); + Coll_reduce_default::reduce((char *)buf + (pipe_length * increment), (char *)rbuf + (pipe_length * increment), remainder, datatype, op, root, comm); } @@ -150,3 +152,5 @@ int smpi_coll_tuned_reduce_NTSL(void *buf, void *rbuf, int count, free(tmp_buf); return MPI_SUCCESS; } +} +}