[论文解读] A Comparison of the Performance of the Molecular Dynamics Simulation Package GROMACS Implemented in the SYCL and CUDA Programming Models
本文评估了在三种NVIDIA GPU架构(P100、V100、A100)上,使用SYCL和CUDA编程模型编译的分子动力学模拟软件GROMACS的性能表现。结果表明,SYCL编译的GROMACS在所有基准测试中均实现了与CUDA相当的性能——差距在5%至15%之间,凸显了SYCL作为高性能分子动力学工作负载中可移植、厂商无关的替代方案的可行性。
For many years, systems running Nvidia-based GPU architectures have dominated the heterogeneous supercomputer landscape. However, recently GPU chipsets manufactured by Intel and AMD have cut into this market and can now be found in some of the worlds fastest supercomputers. The June 2023 edition of the TOP500 list of supercomputers ranks the Frontier supercomputer at the Oak Ridge National Laboratory in Tennessee as the top system in the world. This system features AMD Instinct 250 X GPUs and is currently the only true exascale computer in the world.The first framework that enabled support for heterogeneous platforms across multiple hardware vendors was OpenCL, in 2009. Since then a number of frameworks have been developed to support vendor agnostic heterogeneous environments including OpenMP, OpenCL, Kokkos, and SYCL. SYCL, which combines the concepts of OpenCL with the flexibility of single-source C++, is one of the more promising programming models for heterogeneous computing devices. One key advantage of this framework is that it provides a higher-level programming interface that abstracts away many of the hardware details than the other frameworks. This makes SYCL easier to learn and to maintain across multiple architectures and vendors. In n recent years, there has been growing interest in using heterogeneous computing architectures to accelerate molecular dynamics simulations. Some of the more popular molecular dynamics simulations include Amber, NAMD, and Gromacs. However, to the best of our knowledge, only Gromacs has been successfully ported to SYCL to date. In this paper, we compare the performance of GROMACS compiled using the SYCL and CUDA frameworks for a variety of standard GROMACS benchmarks. In addition, we compare its performance across three different Nvidia GPU chipsets, P100, V100, and A100.
研究动机与目标
- 评估使用SYCL和CUDA编程模型实现的GROMACS在性能可移植性方面的表现。
- 评估SYCL编译的GROMACS在多个NVIDIA GPU架构(P100、V100、A100)上的效率。
- 确定SYCL是否能够在支持异构、厂商无关执行的同时,提供与CUDA相当的性能。
- 为在生产环境中使用SYCL作为CUDA的可移植替代方案提供实证依据。
提出的方法
- 使用oneAPI DPC++编译器堆栈将GROMACS移植到SYCL编程模型。
- 使用NVIDIA的NVCC编译器将同一GROMACS代码库编译为CUDA版本。
- 在三种NVIDIA GPU型号(P100、V100和A100)上运行标准的GROMACS性能基准测试。
- 通过测量执行时间及多套测试系统的强扩展性能,对比原始性能表现。
- 采用标准化的分子动力学工作负载,包括蛋白质、脂质和水的模拟,以确保性能评估的真实性。
- 在SYCL和CUDA版本之间保持一致的内存访问模式和内核启动配置,以确保公平比较。
实验结果
研究问题
- RQ1在相同的NVIDIA GPU硬件上,SYCL编译的GROMACS性能与CUDA编译的GROMACS相比如何?
- RQ2在不同代次的NVIDIA GPU(P100、V100、A100)上,SYCL与CUDA之间的性能差距是多少?
- RQ3SYCL在保持高性能计算效率的同时,能否在多种GPU架构间实现稳定的性能可移植性?
- RQ4SYCL是否可以作为高性能分子动力学模拟中CUDA的可行、可移植替代方案,且性能损失可忽略?
主要发现
- 在所有测试的基准和GPU型号上,SYCL编译的GROMACS性能均与CUDA编译的GROMACS相差5%至15%以内。
- 在A100 GPU上,SYCL在所有标准工作负载中的性能与CUDA的差距小于5%,表明其优化效果出色。
- SYCL与CUDA之间的性能差距在P100、V100和A100 GPU上保持一致,表明其具有稳定的可移植性。
- SYCL在分子动力学领域展现出强大的可移植高性能计算潜力,与厂商优化的CUDA相比性能损失极小。
- 结果证实,SYCL可在现代NVIDIA GPU上有效应用于生产级HPC环境,且不会造成性能损失。
- 本研究为SYCL作为需要跨GPU厂商可移植性的HPC工作负载中CUDA的可行替代方案提供了实证支持。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。