Published May 18, 2024 | Version v1
Conference paper Open

Four abstract array distribution operators

Description

Programming for distributed-memory systems imposes specific challenges. In these systems, minimizing synchronization and communication overheads is key for performance improvement. A typical approach is to use a message-passing paradigm to exploit static partition policies and to generate coarse-grain computations with aggregated communication phases. However, irregular or data-dependent programs that need dynamic data redistributions become more complicated to develop and debug. In this paper we present four abstract array distribution operators that allow to efficiently implement programs on distributed-memory systems, making the data partition, relocation, and data movement transparent to the programmer. Our experimental results show that our approach does not imply significant overheads, while achieving good scalability for combinations of data-dependent, irregular, or recursive parallel structures on distributed-memory systems.

Files

Four.pdf

Files (5.2 MB)

Name Size Download all
md5:dcb71612b27546dfb08f7551c9823543
5.2 MB Preview Download