Institutt for informatikk

History of coarrays and SPMD parallelism in Fortran

John Reid presents his paper, followed by discussion.

John Reid
John Reid


The paper "History of coarrays and SPMD parallelism in Fortran" was authored by John Reid, Bill Long and Jon Steidel:

"The coarray programming model is an expression of the Single-Program-Multiple-Data (SPMD) programming model through the simple device of adding a codimension to the Fortran language. A data object declared with a codimension is a coarray object. Codimensions express the idea that some objects are located in local memory while others are located in remote memory. Coarray syntax obeys most of the same rules for normal array syntax. It is familiar to the Fortran programmer so the use of coarray syntax is natural and intuitive. Although the basic idea is quite simple, inserting it into the language definition turned out to be difficult.

In addition, the process was complicated by rapidly changing hardware and heated arguments over whether parallelism should be supported best as an interface to language-independent libraries, as a set of directives superimposed on languages, or as a set of specific extensions to existing languages.

In this paper, we review both the early history of coarrays and also their development into a part of Fortran 2008 and eventually into a larger part of Fortran 2018. Coarrays have been used, for example, in weather forecasting and in neural networks and deep learning."

The presentation starts at 14:15, but the zoom meeting will be open from 14:00.

Join Zoom Meeting

Meeting ID: 649 7425 8534

Password: Wyfq9a?h