Performance Portability of the Chapel Language on Heterogeneous Architectures
Date
Authors
Milthorpe, Josh
Wang, Xianghao
Azizi, Ahmad
Journal Title
Journal ISSN
Volume Title
Publisher
Institute of Electrical and Electronics Engineers Inc.
Access Statement
Abstract
A performance-portable application can run on a variety of different hardware platforms, achieving an acceptable level of performance without requiring significant rewriting for each platform. Several performance-portable programming models are now suitable for high-performance scientific application development, including OpenMP and Kokkos. Chapel is a parallel programming language that supports the productive development of high-performance scientific applications and has recently added support for GPU architectures through native code generation. Using three mini-apps - BabelStream, miniBUDE, and TeaLeaf - we evaluate the Chapel language's performance portability across various CPU and GPU platforms. In our evaluation, we replicate and build on previous studies of performance portability using mini-apps, comparing Chapel against OpenMP, Kokkos, and the vendor programming models CUDA and HIP. We find that Chapel achieves comparable performance portability to OpenMP and Kokkos and identify several implementation issues that limit Chapel's performance portability on certain platforms.
Description
Citation
Collections
Source
Type
Book Title
2024 IEEE International Parallel and Distributed Processing Symposium Workshops, IPDPSW 2024
Entity type
Publication