Well, well, well ... There is really no way to make everybody happy ...
When I did the previous commit (where I added the check), Tim Prins pointed out the following 2 paragraphs from the MPI standard.
MPI-1.1 s4.9.1 (p113, line 28) says the recvbuf is "significant only at root".MPI-1.1 s2.2 (p7, line 7-9) and MPI-2 s2.3 (p7 line 1-3) have the identical text: "Another frequent situation arises when an argument value is needed only by a subset of the processes. When an argument is not significant at a process then an arbitrary value can be passed as argument."
As you can see on the second paragraph, the standard claims that an arbitrary value can be passed.
george. On Feb 4, 2008, at 8:17 AM, Edgar Gabriel wrote:
George,I hate to say this, but I don't think that this is correct. Page 114 inMPI 1 says (in the section about MPI_Reduce) "Thus, all processes provide input buffers and output buffers of the same length, with elements of the same time". The content is only significant at the root, but all processes have to provide the buffer according to my understanding... Thanks Edgar bosi...@osl.iu.edu wrote:Author: bosilca Date: 2008-02-03 20:44:41 EST (Sun, 03 Feb 2008) New Revision: 17366 URL: https://svn.open-mpi.org/trac/ompi/changeset/17366 Log: As the receive buffer is only significant at root, limit the check only where it makes sense. Text files modified: trunk/ompi/mpi/c/reduce.c | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) Modified: trunk/ompi/mpi/c/reduce.c= = = = = = = = = =====================================================================--- trunk/ompi/mpi/c/reduce.c (original)+++ trunk/ompi/mpi/c/reduce.c 2008-02-03 20:44:41 EST (Sun, 03 Feb 2008)@@ -59,9 +59,7 @@ free(msg); return ret;} else if ((ompi_comm_rank(comm) != root && MPI_IN_PLACE == sendbuf) || - (ompi_comm_rank(comm) == root && MPI_IN_PLACE == recvbuf)) {- err = MPI_ERR_ARG; - } else if( sendbuf == recvbuf ) {+ (ompi_comm_rank(comm) == root && ((MPI_IN_PLACE == recvbuf) || (sendbuf == recvbuf)))) {err = MPI_ERR_ARG; } else { OMPI_CHECK_DATATYPE_FOR_SEND(err, datatype, count); _______________________________________________ svn mailing list s...@open-mpi.org http://www.open-mpi.org/mailman/listinfo.cgi/svn-- Edgar Gabriel Assistant Professor Parallel Software Technologies Lab http://pstl.cs.uh.edu Department of Computer Science University of Houston Philip G. Hoffman Hall, Room 524 Houston, TX-77204, USA Tel: +1 (713) 743-3857 Fax: +1 (713) 743-3335 _______________________________________________ devel mailing list de...@open-mpi.org http://www.open-mpi.org/mailman/listinfo.cgi/devel
smime.p7s
Description: S/MIME cryptographic signature