Logo Logo
Switch Language to German
Moessbauer, Felix; Kowalewski, Roger; Fuchs, Tobias; Fürlinger, Karl (2018): A Portable Multidimensional Coarray for C plus. In: 2018 26Th Euromicro International Conference on Parallel, Distributed, and Network-Based Processing (Pdp 2018): pp. 18-25
Full text not available from 'Open Access LMU'.


Fortran Coarrays are a well known data structure in High Performance Computing (HPC) applications. There have been various attempts to port the concept to other programming languages that have a wider user base outside of scientific computing. While a popular implementation of the partitioned global address space (PGAS) model is Unified Parallel C (UPC), there is currently no portable implementation of Coarrays for C++. In this paper a portable version is presented, which is closely based on the Coarray C++ implementation of the Cray Compiling Environment. In this work we focus on a common subset of all proposed features by Cray. Our implementation utilizes the distributed data structures provided by the DASH library, demonstrating their universal applicability. Finally, a performance evaluation shows that our proposed Coarray abstraction adds negligible overhead and even outperforms native Coarray Fortran.