arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2405.00436cs.DC
收藏

利用统一内存与OpenMP将HPC应用移植到AMD Instinct$^\ ext{TM}$ MI300A

Porting HPC Applications to AMD Instinct$^\text{TM}$ MI300A Using Unified Memory and OpenMP

Suyash Tandon, Leopold Grinberg, Gheorghe-Teodor Bercea, Carlo Bertolli, Mark Olesen, Simone Bnà, Nicholas Malaya

AI总结:

本文提出利用统一内存的APU编程模型蓝图,并以OpenFOAM为例展示基于OpenMP指令将生产级HPC应用高效移植到AMD MI300A的方法与优势。

摘要:

AMD Instinct$^\ ext{TM}$ MI300A 是世界上首款数据中心加速处理单元(APU),其AMD “Zen 4” EPYC$^\ ext{TM}$ 核心与第三代CDNA$^\ ext{TM}$ 计算单元之间共享内存。单一内存空间具有多项优势:i)消除了数据复制和昂贵数据传输的需求;ii)大幅简化应用开发,并允许对应用进行增量式加速;iii)易于维护;iv)其潜力可以通过OpenMP 5.2标准中的抽象得到良好实现,在该标准中,主机与设备数据环境能够以更高性能的方式统一起来。本文提供了利用统一内存的APU编程模型蓝图,并重点说明了与使用独立GPU的传统方法相比的关键区别。以OpenFOAM(一个用于计算流体力学的开源C++库)作为案例研究,强调使用基于指令的OpenMP编程将大规模生产就绪应用卸载到MI300 APU上的灵活性和便捷性。

英文摘要:

AMD Instinct$^\text{TM}$ MI300A is the world's first data center accelerated processing unit (APU) with memory shared between the AMD "Zen 4" EPYC$^\text{TM}$ cores and third generation CDNA$^\text{TM}$ compute units. A single memory space offers several advantages: i) it eliminates the need for data replication and costly data transfers, ii) it substantially simplifies application development and allows an incremental acceleration of applications, iii) is easy to maintain, and iv) its potential can be well realized via the abstractions in the OpenMP 5.2 standard, where the host and the device data environments can be unified in a more performant way. In this article, we provide a blueprint of the APU programming model leveraging unified memory and highlight key distinctions compared to the conventional approach with discrete GPUs. OpenFOAM, an open-source C++ library for computational fluid dynamics, is presented as a case study to emphasize the flexibility and ease of offloading a full-scale production-ready application on MI300 APUs using directive-based OpenMP programming.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑