MPI Forum Meetings logo

MPI Forum: mpi3-fortran Mailing List Archives

all MPI Forum: mpi3-fortran mailing list

Subject: Re: [MPI3 Fortran] Summary of items on the table
From: Aleksandar Donev (donev1_at_[hidden])
Date: 2008-04-30 01:43:04


On Monday 28 April 2008 12:12, Craig wrote:

> However, I believe I can get the same thing with a assumed
> size, rank 1 dummy. At least the compiler I tried allowed me to call
> with a rank 2 actual.
Yes, this is legal, and called sequence association. This program, for
example, is perfectly legal. Copy in/out happens for non-contiguous
arguments. If you add target on both the dummy and the actual, and my
most recent proposal (meeting 184) gets accepted, there will be
guaranteed no copy in/out if the actual is simply-contiguous.

program sequence
    implicit none

    real, dimension(10,10) :: x
    real, pointer, dimension(:,:) :: y

    call sub(x(2,1))
    call sub(x)
    call sub(x(1:3,5:6))
    call sub(y)
    !call sub(y(3,2)) ! Not legal
       ! y may be non-contiguous

contains

    subroutine sub(x)
       real, dimension(*) :: x
    end subroutine

end program

> Aleks has submitted a proposal to the Fortran J3 committee to improve
> on the ASYNCHRONOUS attribute. Hopefully this can make it into the
> F2008 standard and fix problems associated with copyin/copyout
> semantics and with code motion associated with asynchronous MPI
> calls.
Craig, what I submitted is a fix to the inconsistent way of handling the
asynchronous attribute across argument passing that's been there since
Fortran 2003 (I had actually pointed that out during the F2003 CD but
back then I assumed there was a reason the words were written as they
are, which I now know is not the case).

I have not proposed extending the attribute to apply to "user-defined"
asynchronous I/O such as the non-blocking communication calls. That is
beyond the "integration and fixes" mandate of J3. Proposals for new
functionality should be submitted as public comment. I can help you guys
prepare the proposal, but it has to be your initiative.

Thanks,
Aleks

-- 
Aleksandar Donev, Ph.D.
Lawrence Postdoctoral Fellow @ Lawrence Livermore National Laboratory
High Performance Computational Materials Science and Chemistry
E-mail: donev1_at_[hidden]
Phone: (925) 424-6816  Fax: (925) 423-0785
Address: P.O.Box 808, L-367, Livermore, CA 94551-9900
Web: http://cherrypit.princeton.edu/donev