IFIP WG 2.5 Project 82 Fortran Co-Arrays Vienna 2014: ============ Sato suggested this new project at the 2013 meeting in Shanghai but was unable to attend this years meeting. There was no report on this project. Amsterdam 2023: =============== Update by John Reid received on 25-2-2023 ----------------------------------------- Coarrays are based on the Single-Program-Multiple-Data (SPMD) programming model, where the same executable program is replicated many times and executed independently. Each replication is known as an "image" and usually (but not necessarily) is executed on a separate process. Each image has its own data objects, some of which are declared as coarrays. A coarray may be accessed from another image through an additional set of subscripts in square brackets, for example a(i,j)[k] = b c(:) = c(:)[p,q] The programmer is responsible for ensuring that accesses to coarrays are properly synchronized, for example, the statement sync all provides a barrier. The idea was proposed by Numrich in 1994 and formalized by Numrich and Reid in 1998 (Co-Array Fortran for parallel programming, ACM Fortran Forum, 17, 2). It was included in Fortran 2008 and the idea was extended in Fortran 2018. For a full description, see chapters 17 and 20 of Metcalf, Reid, and Cohen (2018) (Modern Fortran Explained, second edition Oxford University Press). For the history of its inclusion in Fortran, see Reid, Long, and Steidel (2020) History of Coarrays and SPMD Parallelism in Fortran (Proc. ACM Program. Lang. 4, HOPL, Article 72). ----------------------------------------- It was decided to close this project. Any sequel to this project can be found under Project 20.