Atlas home || Conferences | Abstracts | about Atlas

Computational Techniques and Applications Conference and Workshops - CTAC99
September 20-24, 1999
The Australian National University
Canberra, ACT, Australia

Organizers
Mike Osborne, Bob Gingold, Steve Roberts, David Harrar II, Thanh Tran, Bob Anderssen, Henry Gardner, Markus Hegland, Lutz Grosz

View Abstracts
Conference Homepage

Parallel programming in Co-Array Fortran on the T3E
by
John Reid
JKR Associates, UK
Coauthors: Jan Rasmussen and Per Christian Hansen (DTU, Denmark)

Co-Array Fortran, formerly known as F - -, is a small extension of Fortran 90/95 for parallel processing. It has been designed to be easy both for the compiler-writer to implement and for the programmer to write or understand.

A Co-Array Fortran program is interpreted as if it were replicated a number of times and all copies were executed asynchronously. Each copy has its own set of data objects and is termed an image. The array syntax of Fortran 95 is extended with additional trailing subscripts in square brackets to give a clear and straightforward representation of any access to data that is spread across images.

References without square brackets are to local data, so code that can run independently is uncluttered. Only where there are square brackets, or where there is a procedure call and the procedure contains square brackets, is communication between images involved.

There are intrinsic procedures to synchronize images, return the number of images, and return the index of the current image.

SGI/Cray have made a subset available on CRAY T3E systems, and we have constructed code for block-cyclic LU factorization and solution of a dense unsymmetric matrix, ADI iteration on a regular square grid, and the 3D multigrid solver that is a NAS parallel benchmark. We use these examples to show how clear, powerful, and flexible Co-Array Fortran can be. We include performance comparisons with equivalent code that uses MPI.

For further details of the language, see http://www.co-array.org

http://www.co-array.org

Date received: July 27, 1999


Copyright © 1999 by the author(s). The author(s) of this document and the organizers of the conference have granted their consent to include this abstract in Atlas Conferences Inc. Document # cadk-56.