(j3.2006) (SC22WG5.3611) Preparing for the Tokyo meeting

Bill Long longb
Mon Nov 3 12:10:36 EST 2008

Jim Xia wrote:
>   There will always be a few who will never give up
> > their argument that coarrays should not be in the standard.  They need
> > to accept that they have lost and discontinue their rants.
> >
> You're not along with this feeling :-).  One question I have here: is 
> there concrete evidence that coarray can coexist with MPI?  My concern 
> is if there is a conflict between coarray and MPI, then I doubt 
> coarray can ever have a chance to be adopted regardless whether 
> coarray is in F08 core language.  So it may also be helpful to present 
> some evidence that coarray can coexist with MPI.  At least that 
> evidence can further re-enforce my belief in coarray.

I can offer our actual experience of 10 years.  In our implementation, 
coarrays, MPI, and shmem can all coexist in a single program.  All three 
have a common SPMD model.   At the data transport level, all three use 
the same infrastructure.  Since MPI is the dominant parallel programming 
model for legacy codes, mixed codes will probably continue to be common 
for some time.

There are two primary modes in which MPI and coarrays coexist in a 
program.  One involves the incorporation of coarrays into a subprogram 
of an existing MPI program.  Coarrays connect to data in the rest of the 
program by associating pointer components of local coarrays with dummy 
arguments or module data, or by copying data into local coarrays.  The 
second mode involves so-called multi-binary-launch codes, such as some 
of the large weather codes.   In these codes, there are multiple 
separate programs that cooperate.  You can use coarrays within a 
program, and then employ MPI for communication between the programs.  
Both of these modes allow for incremental introduction of coarrays into 
an existing program, which is important for widespread acceptance.


Bill Long                                   longb at cray.com
Fortran Technical Support    &              voice: 651-605-9024
Bioinformatics Software Development         fax:   651-605-9142
Cray Inc., 1340 Mendota Heights Rd., Mendota Heights, MN, 55120


More information about the J3 mailing list