面向云与HPC的GPU加速分子对接应用的可移植性:可移植编译器指令能否跨所有平台提供性能?
分布式、并行与集群计算
2022-03-07 v1 生物大分子
摘要
基于结构的高通量类药物分子筛选已成为生物医学研究中的常用工具。近年来,图形处理单元(GPU)加速为分子对接程序带来了巨大的性能提升。云和高性能计算(HPC)资源均已用于分子对接程序的大规模筛选;虽然NVIDIA GPU在云和HPC资源中占据主导,但AMD和Intel等新厂商正进入该领域,由此产生了跨不同GPU的软件可移植性问题。理想情况下,可利用能在不同架构上保持高性能的可移植编程模型来最大化软件生产力。尽管在许多情况下编译器指令已被用作将基于CPU程序的并行区域卸载到GPU加速器的简便方法,它们也可能成为跨不同GPU厂商提供可移植性的有吸引力的编程模型,此时移植过程可能反向进行:从底层、特定架构的代码到基于指令的更高层抽象。MiniMDock是一个新的迷你应用程序(miniapp),旨在捕获分子对接计算(如药物发现工作中所用)中的核心计算内核,以测试跨GPU架构移植的不同方案。在此,我们将MiniMDock扩展为使用OpenMP指令进行GPU卸载,并与在NVIDIA和AMD GPU上使用CUDA和HIP的内核性能以及不同编译器下的性能进行比较,探索性能瓶颈。我们记录了这一从高度优化的设备代码到使用指令的更高层版本的反向移植过程,比较了代码结构,并描述了在此过程中克服的障碍。
引用
@article{arxiv.2203.02096,
title = {Portability for GPU-accelerated molecular docking applications for cloud and HPC: can portable compiler directives provide performance across all platforms?},
author = {Mathialakan Thavappiragasam and Wael Elwasif and Ada Sedova},
journal= {arXiv preprint arXiv:2203.02096},
year = {2022}
}