Portable Node-Level Parallelism for the PGAS Model

被引:0
|
作者
Jungblut, Pascal [1 ]
Fuerlinger, Karl [1 ]
机构
[1] Ludwig Maximilians Univ LMU Munchen, Dept Comp Sci, MNM Team, Oettingenstr 67, D-80538 Munich, Germany
关键词
PGAS; Parallel computing; Programming models;
D O I
10.1007/s10766-021-00718-x
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
The Partitioned Global Address Space (PGAS) programming model brings intuitive shared memory semantics to distributed memory systems. Even with an abstract and unifying virtual global address space it is, however, challenging to use the full potential of different systems. Without explicit support by the implementation node-local operations have to be optimized manually for each architecture. A goal of this work is to offer a user-friendly programming model that provides portable performance across systems. In this paper we present an approach to integrate node-level programming abstractions with the PGAS programming model. We describe the hierarchical data distribution with local patterns and our implementation, MEPHISTO, in C++ using two existing projects. The evaluation of MEPHISTO shows that our approach achieves portable performance while requiring only minimal changes to port it from a CPU-based system to a GPU-based one using a CUDA or HIP back-end.
引用
收藏
页码:867 / 885
页数:19
相关论文
共 38 条
  • [1] Portable Node-Level Parallelism for the PGAS Model
    Pascal Jungblut
    Karl Fürlinger
    International Journal of Parallel Programming, 2021, 49 : 867 - 885
  • [2] A Fine-grained Asynchronous Bulk Synchronous parallelism model for PGAS applications
    Paul, Sri Raj
    Hayashi, Akihiro
    Chen, Kun
    Elmougy, Youssef
    Sarkar, Vivek
    JOURNAL OF COMPUTATIONAL SCIENCE, 2023, 69
  • [3] OpenSHMEM as a Portable Communication Layer for PGAS Models: A Case Study with Coarray Fortran
    Namashivayam, Naveen
    Eachempati, Deepak
    Khaldi, Dounia
    Chapman, Barbara
    2015 IEEE INTERNATIONAL CONFERENCE ON CLUSTER COMPUTING - CLUSTER 2015, 2015, : 438 - 447
  • [4] Utilizing Heterogeneous Memory Hierarchies in the PGAS Model
    Kowalewski, Roger
    Fuchs, Tobias
    Fuerlinger, Karl
    Guggemos, Tobias
    2018 26TH EUROMICRO INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED, AND NETWORK-BASED PROCESSING (PDP 2018), 2018, : 353 - 357
  • [5] Low-level PGAS computing on many-core processors with TSHMEM
    Lam, Bryant C.
    George, Alan D.
    Lam, Herman
    Aggarwal, Vikas
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2015, 27 (17) : 5288 - 5310
  • [6] PCJ - Java']Java library for high performance computing in PGAS model
    Nowicki, Marekno
    Gorski, Lukasz
    Grabrczyk, Patryk
    Bala, Piotr
    2014 INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING & SIMULATION (HPCS), 2014, : 202 - 209
  • [7] Evaluation of the partitioned global address space (PGAS) model for an inviscid Euler solver
    Prugger, Martina
    Einkemmer, Luk
    Ostermann, Alexander
    PARALLEL COMPUTING, 2016, 60 : 22 - 40
  • [8] A PGAS Execution Model for Efficient Stencil Computation on Many-Core Processors
    Ikei, Mitsuru
    Sato, Mitsuhisa
    2014 14TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON CLUSTER, CLOUD AND GRID COMPUTING (CCGRID), 2014, : 305 - 314
  • [9] On the Exploitation of Loop-level Parallelism in Embedded Applications
    Kejariwal, Arun
    Veidenbaum, Alexander V.
    Nicolau, Alexandru
    Girkar, Milind
    Tian, Xinmin
    Saito, Hideki
    ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2009, 8 (02)
  • [10] Parallel Differential Evolution in the PGAS Programming Model Implemented with PCJ Java']Java Library
    Gorski, Lukasz
    Rakowski, Franciszek
    Bala, Piotr
    PARALLEL PROCESSING AND APPLIED MATHEMATICS, PPAM 2015, PT I, 2016, 9573 : 448 - 458