面向百亿亿次计算的 CRK-HACC 的性能可移植 SYCL 实现
性能
2023-10-26 v1 宇宙学与河外天体物理
分布式、并行与集群计算
摘要
第一代百亿亿次系统将包含多种机器架构,配备来自多个供应商的 GPU。因此,许多开发者有兴趣采用可移植编程模型,以避免维护其代码的多个版本。有必要记录此类编程模型的经验,以帮助开发者理解不同方法的优缺点。为此,本文评估了一个大规模宇宙学应用(CRK-HACC)的 SYCL 实现在来自三个不同供应商(AMD、Intel 和 NVIDIA)的 GPU 上运行的性能可移植性。我们详述了将原始代码从 CUDA 迁移到 SYCL 的过程,并表明针对特定目标专门化内核可以在不显著影响程序员生产力的情况下极大改善性能可移植性。CRK-HACC 的 SYCL 版本实现了 0.96 的性能可移植性,且代码分歧几乎为 0,表明 SYCL 是性能可移植应用的可行编程模型。
引用
@article{arxiv.2310.16122,
title = {A Performance-Portable SYCL Implementation of CRK-HACC for Exascale},
author = {Esteban M. Rangel and S. John Pennycook and Adrian Pope and Nicholas Frontiere and Zhiqiang Ma and Varsha Madananth},
journal= {arXiv preprint arXiv:2310.16122},
year = {2023}
}
备注
12 pages, 13 figures, 2023 International Workshop on Performance, Portability & Productivity in HPC