中文

通过SYCL互操作性实现随机数生成的近原生运行时性能与跨平台性能可移植性

分布式、并行与集群计算 2022-06-28 v2 数学软件 高能物理 - 实验

摘要

高性能计算(HPC)是从量子模拟到药物疗法等科学研究与发现的重要驱动力。尽管HPC资源日益可用在许多情况下对成功科学至关重要,即便最大的合作团队也缺乏充分利用当前硬件能力所需的计算专长。维护多个平台特定代码库进一步使问题复杂化,可能给可使用的机器增加限制。幸运的是,若干编程模型正在开发中,旨在为异构计算提供便利的可移植代码。其中一个是SYCL,一个开放的、基于C++的单源编程范式。SYCL的特性之一是互操作性,一种应用与第三方库协调共享数据并协同执行的机制。在本文中,我们利用SYCL编程模型展示跨异构资源的性能可移植性。我们详述了面向oneMKL开源接口库的NVIDIA与AMD随机数生成器扩展。性能可移植性相对于使用两种支持SYCL的不同编译器在四大硬件平台上执行的平台特定基线应用进行测量。我们的扩展的实用性通过一个高能物理模拟应用在实际场景中得以例证。我们表明,利用SYCL互操作性的实现性能与原生实现相当,证明了基于SYCL的科学代码跨平台性能可移植性。

关键词

引用

@article{arxiv.2109.01329,
  title  = {Achieving near native runtime performance and cross-platform performance portability for random number generation through SYCL interoperability},
  author = {Vincent R. Pascuzzi and Mehdi Goli},
  journal= {arXiv preprint arXiv:2109.01329},
  year   = {2022}
}

备注

24 pages, 5 figures, conference