[MPI3 Fortran] Summary of items on the table

Aleksandar Donev donev1 at llnl.gov
Wed Apr 30 00:43:04 CDT 2008


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 llnl.gov
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



More information about the mpiwg-fortran mailing list