DOE OSTI · 2587617
Parallel Runtime Interface for Fortran (PRIF) Specification (Rev. 0.6)
Abstract
This document specifies an interface to support the multi-image parallelism features of Fortran, named the Parallel Runtime Interface for Fortran (PRIF). PRIF is a solution in which a runtime library is primarily responsible for implementing coarray allocation, deallocation and accesses, image synchronization, atomic operations, events, teams and collective subroutines. The Fortran compiler is responsible for transforming the invocation of Fortran-level multi-image parallelism features into procedure calls to the necessary PRIF subroutines. The interface is designed for portability across shared- and distributed-memory machines, different operating systems, and multiple architectures. Implementations of this interface are intended as an augmentation for the compiler's own runtime library. With an implementation-agnostic interface, alternative parallel runtime libraries may be developed that support the same interface. One benefit of this approach is the ability to vary the communication substrate. A central aim of this document is to define a parallel runtime interface in standard Fortran syntax, which enables us to leverage Fortran to succinctly express various properties of the procedure interfaces, including argument attributes.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Bonachea, Dan [Lawrence Berkeley National Laboratory (LBNL), Berkeley, CA (United States)], Rasmussen, Katherine [Lawrence Berkeley National Laboratory (LBNL), Berkeley, CA (United States)], Rouson, Damian [Lawrence Berkeley National Laboratory (LBNL), Berkeley, CA (United States)], Richardson, Bradley [National Aeronautics and Space Administration (NASA), Washington, DC (United States)], Pailleux, Jean-Didier [SiPearl, Maisons-Laffitte (France)], Renault, Etienne [SiPearl, Maisons-Laffitte (France)]. 2025-09-16. Parallel Runtime Interface for Fortran (PRIF) Specification (Rev. 0.6). https://doi.org/10.25344/s4m01x
Cite the original work for its findings. Save a collection to share your selection of sources.