[MPI3 Fortran] MPI Data types

N.M. Maclaren nmm1 at cam.ac.uk
Sat May 9 12:56:11 CDT 2009


On May 8 2009, Iain Bason wrote:
>
>I should add that some compilers (including Sun's) do a run time check  
>for contiguity, and only do copy in/out when it is actually needed.  I  
>don't think that makes a difference for Nick's argument, though.

That's interesting.  Something that I raised in J3 is that compilers
may use copy-in/copy-out even when passing to assumed shape dummy
arguments.  Consider calls like:

    REAL :: X(1000,1000,10000)
    LinearSolve(X(1,:,:),X(2,3,:))

That is most cache-unfriendly, and can often be speeded up considerably by
copying the arrays to contiguous storage.  Fortran permits that, in the
absence of various special attributes.  And, yes, it has been done and may
still be done.

Nick.




More information about the mpiwg-fortran mailing list