A Scalable Actor-based Programming System for PGAS Runtimes
Sri Raj Paul, Akihiro Hayashi, Kun Chen, Vivek Sarkar

TL;DR
This paper introduces a scalable actor-based programming system for PGAS runtimes that improves performance and productivity by enabling fine-grained asynchronous communication, achieving significant speedups on irregular applications.
Contribution
The paper presents a novel actor-based PGAS programming system that simplifies asynchronous communication and enhances scalability, outperforming traditional PGAS models in both speed and ease of use.
Findings
Achieves >=20x performance improvement on irregular mini-apps
Maintains comparable productivity to traditional PGAS models
Scales efficiently on 2048 cores in the NERSC Cori system
Abstract
The PGAS model is well suited for executing irregular applications on cluster-based systems, due to its efficient support for short, one-sided messages. However, there are currently two major limitations faced by PGAS applications. The first relates to scalability: despite the availability of APIs that support non-blocking operations in special cases, many PGAS operations on remote locations are synchronous by default, which can lead to long-latency stalls and poor scalability. The second relates to productivity: while it is simpler for the developer to express all communications at a fine-grained granularity that is natural to the application, experiments have shown that such a natural expression results in performance that is 20x slower than more efficient but less productive code that requires manual message aggregation and termination detection. In this paper, we introduce a new…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed and Parallel Computing Systems · Parallel Computing and Optimization Techniques · Cloud Computing and Resource Management
