Minisymposium Presentation
Parallel Runtime Interface for Fortran (PRIF): A Compiler/Runtime-Library Agnostic Interface to Support the Parallel Features of Fortran 2023
Presenter
Damian Rouson is a Senior Scientist and the Computer Languages and Systems Software (CLaSS) Group Lead at Berkeley Lab. He researches parallel programming models for high-performance computing and deep learning. CLaSS develops the Caffeine parallel runtime library, the Inference-Engine deep learning library, and the LLVM Flang Fortran compiler. He teaches tutorials on the UPC++ template library and has researched multiphase, quantum, and magnetohydrodynamic turbulence. He holds a B.S. from Howard University and a M.S. and a Ph.D. from Stanford University, all in mechanical engineering. He received a 2020 Better Scientific Software Fellowship and a 2023 Energy Secretary’s Achievement Award.
Description
Fortran 2023 natively supports single-program, multiple-data parallel programming with a partitioned global address space and collective subroutines, synchronization, atomics, locks, and more. Each of the four actively developed compilers that support Fortran’s parallel features uses its own parallel runtime library. The Parallel Runtime Interface for Fortran (PRIF) proposes to liberate compiler development from reliance on a single runtime and empower runtime developers to support more than one compiler. PRIF also aims to broaden the community of runtime developers to include the Fortran compiler’s users: Fortran programmers. PRIF does so by specifying the interface in Fortran, which makes it attractive to write the parallel runtime library in Fortran. Additionally, PRIF has been designed to be portable across both shared and distributed memory, varying architectures, as well as different operating systems. In this talk, I will describe the motivation behind the development of PRIF, describe the design of the interface itself and the benefits of adopting it. I will also provide a brief status report on the first PRIF implementation: Caffeine.