You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[OpenCoarrays] is an open-source software project that supports the coarray Fortran (CAF) parallel programming features of the Fortran 2008 standard and several features proposed for Fortran 2015 in the draft Technical Specification [TS 18508]_Additional Parallel Features in Fortran_.
17
17
18
-
OpenCoarrays provides a compiler wrapper (named "caf"), a runtime library (named "libcaf_mpi.a" by default), and an executable file launcher (named "cafrun"). With OpenCoarrays-aware compilers, the compiler wrapper passes the provided source code to the chosen compiler ("mpif90" by default). For non-OpenCoarrays-aware compilers, the wrapper transforms CAF syntax into OpenCoarrys procedure calls before invoking the chosen compiler on the transformed code. The runtime library supports compiler communication and synchronization requests by invoking a lower-level communication library -- the Message Passing Interface ([MPI]) by default. The launcher passes execution to the chosen communication library's parallel program launcher ("mpirun" by default).
18
+
OpenCoarrays provides a compiler wrapper (named "caf"), a runtime library (named "libcaf_mpi.a" by default), and an executable file launcher (named "cafrun"). With OpenCoarrays-aware compilers, the compiler wrapper passes the provided source code to the chosen compiler ("mpif90" by default). For non-OpenCoarrays-aware compilers, the wrapper transforms CAF syntax into OpenCoarrys procedure calls before invoking the chosen compiler on the transformed code. The runtime library supports compiler communication and synchronization requests by invoking a lower-level communication library -- the Message Passing Interface ([MPI]) by default. The launcher passes execution to the chosen communication library's parallel program launcher ("mpirun" by default).
19
19
20
20
OpenCoarrays defines an application binary interface ([ABI]) that translates high-level communication and synchronization requests into low-level calls to a user-specified communication library. This design decision liberates compiler teams from hardwiring communication-library choice into their compilers and it frees Fortran programmers to express parallel algorithms once and reuse identical CAF source with whichever communication library is most efficient for a given hardware platform. The communication substrate for OpenCoarrays built with the preferred build system, CMake, is the Message Passing Interface ([MPI]).
21
21
@@ -46,7 +46,7 @@ To start using OpenCoarrays, please see the [GETTING_STARTED.md] file.
46
46
<aname="contributing">
47
47
## Contributing</a> ##
48
48
49
-
Please see the [CONTRIBUTING] file.
49
+
Please see the [CONTRIBUTING.md] file.
50
50
51
51
<aname="status">
52
52
## Status</a> ##
@@ -95,7 +95,7 @@ We gratefully acknowledge support from the following institutions:
95
95
[CINECA]: http://www.cineca.it/en
96
96
[NERSC]: http://www.nersc.gov
97
97
[NCAR]: http://ncar.ucar.edu
98
-
[INSTALL.md]: ./INSTALL.md
98
+
[INSTALL.md]: ./INSTALL.md
99
99
[GASNet]: http://gasnet.lbl.gov
100
100
[menu of services]: http://opencoarrays.org/services
101
101
[CONTRIBUTING.md]: ./CONTRIBUTING.md
@@ -105,6 +105,6 @@ We gratefully acknowledge support from the following institutions:
0 commit comments