[mpich-discuss] MPICH2 with MPI-1 code

Dorian Krause ddkrause at uni-bonn.de
Wed Apr 14 14:43:59 CDT 2010


Dear Mark,

On 4/14/10 9:19 PM, Mark Williamson wrote:
>
> So, this brings me to my question. My understanding is that 
> MPI_IN_PLACE is a MPI-2 specific argument value. The piece of AMBER 
> code that I refer to in this discussion written within the a MPI-1 
> standard. As stated on the MPICH2 home page, "MPICH2 is a 
> high-performance and widely portable implementation of the Message 
> Passing Interface (MPI) standard (*BOTH* MPI-1 and MPI-2)". If I use 
> MPI_IN_PLACE, the code will not be MPI-1 standard, so how to I 
> specific instruct MPICH2's mpif90 or mpirun that one is using a MPI-1 
> code, hence avoiding this error?
To the best of my knowledge, overlapping send and receive buffers is 
also illegal in the MPI-1 standard. On page 7 of the MPI 1.3 it is said:

"Unless specified otherwise, an argument of type OUT or type INOUT 
cannot be aliased with any other argument passed to an MPI procedure."

I think this applies in your suituation. So, if you don't want to use 
MPI_IN_PLACE you would need to duplicate the buffer.

Regards,
Dorian




-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/mpich-discuss/attachments/20100414/5c3ade91/attachment.htm>


More information about the mpich-discuss mailing list