MPI Forum Meetings logo

MPI Forum: mpi3-fortran Mailing List Archives

all MPI Forum: mpi3-fortran mailing list

Subject: Re: [MPI3 Fortran] Proposing changes to Fortran 2008
From: Hubert Ritzdorf (ritzdorf_at_[hidden])
Date: 2008-03-27 16:49:42


Aleksandar Donev wrote:
> Hi,
>
> MPI_ISend has many more issues than MPI_Send. Which one are we discussing?
>
> For MPI_Send, I see no problem with copy in/out, in fact, I see it as
> desirable because the compiler does the work of copying things like columns
> of arrays into contig buffers. Is there a problem with copy in/out and the
> blocking calls?
>
Yes, if derived MPI datatypes are used.
>
>> The C_LOC functionality is not far away from this requirement
>>
> C_LOC exactly satisfies the requirement of no copy in/out and probably should
> be used for MPI_ISend. It requires TARGET, which should in fact be required
> if you are retaining a pointer to an array (even if this pointer is only in C
> and not visible to the Fortran compiler).
>
The requirement of target attribute is not really acceptable from the
MPI standard; for example I would
expect that that MPI_Isend (C_LOC(buf(1000:2000)), ...) would not be
allowed.

Best regards

Hubert