DASH: A C++ PGAS Library for Distributed Data Structures and Parallel Algorithms

Karl Fürlinger,Tobias Fuchs,Roger Kowalewski
DOI: https://doi.org/10.48550/arXiv.1610.01482
2016-10-05
Abstract:We present DASH, a C++ template library that offers distributed data structures and parallel algorithms and implements a compiler-free PGAS (partitioned global address space) approach. DASH offers many productivity and performance features such as global-view data structures, efficient support for the owner-computes model, flexible multidimensional data distribution schemes and inter-operability with STL (standard template library) algorithms. DASH also features a flexible representation of the parallel target machine and allows the exploitation of several hierarchically organized levels of locality through a concept of Teams. We evaluate DASH on a number of benchmark applications and we port a scientific proxy application using the MPI two-sided model to DASH. We find that DASH offers excellent productivity and performance and demonstrate scalability up to 9800 cores.
Distributed, Parallel, and Cluster Computing
What problem does this paper attempt to address?