基于SYCL的多相流LBM模拟跨平台异构并行计算研究
异构并行体系结构是当前高性能计算的重要技术趋势.由于各种异构平台通常支持不同的编程模型,跨平台性能可移植异构并行应用开发非常困难.SYCL是一个基于C++语言的单源跨平台并行编程开放标准.目前针对SYCL的研究主要集中于与其他并行编程模型的性能比较,对SYCL中提供的不同并行内核实现及其性能优化研究得较少.针对这一现状,基于SYCL编程模型对开源多相流数值模拟软件openLBMmflow实现跨平台异构并行模拟,通过对比基础并行版本、细粒度调优的ND-range并行版本以及计算到工作项多对一映射方法,系统总结了SYCL并行应用的性能优化方法.测试结果表明,在Intel Xeon Platinum 9242 CPU以及NVIDIA Tesla V100 GPU上,相比优化后的OpenMP并行实现,在不需要额外调优的情况下,基础并行版本在CPU上获得了2.91的加速比,表明了SYCL的开箱即用性能具备一定优势.以基础并行版本为基准,ND-range并行版本通过改变工作组大小及形状,在CPU与GPU上分别取得了最高1.45以及2.23的加速比.通过优化计算到工作项的多对一映射改变每个工作项处理的格子数量以及形状,与基础并行版本相比,在CPU与GPU上分别取得了最高1.57以及1.34的加速比.结果表明,SYCL并行应用在CPU上更适合采用计算到工作项多对一映射的优化方法,在GPU上更适合采用ND-range并行内核,以提高性能.
SYCL、格子玻尔兹曼方法、多相流模拟、异构并行计算、跨平台并行编程模型
50
TP391(计算技术、计算机技术)
2023-11-17(万方平台首次上网日期,不代表论文的发表时间)
共9页
32-40