Author Name | Affiliation | Shuhao Guo | State Key Laboratory of Mechanics and Control of Mechanical Structures,Nanjing University of Aeronautics and Astronautics,Nanjing 210016,China Department of Aerodynamics,Nanjing University of Aeronautics and Astronautics,Nanjing 210016,China | Jie Wu | State Key Laboratory of Mechanics and Control of Mechanical Structures,Nanjing University of Aeronautics and Astronautics,Nanjing 210016,China Department of Aerodynamics,Nanjing University of Aeronautics and Astronautics,Nanjing 210016,China |
|
Abstract: |
The parallel acceleration of well-developed serial codes for numerical simulations of fluid dynamic problems is implemented in this paper. To solve the flow field, the lattice Boltzmann method (LBM) is used. The OpenACC (OpenACCelerator) application programming interface, which is a relatively new standard for parallel computation, is adopted to perform the acceleration. By parallelizing the computation intensive loops and decreasing some meaningless data movement, the serial codes based on LBM are obviously accelerated. Several benchmark problems are considered and then simulated through the OpenACC programming model to assess performance and computational efficiency. After optimization, a reasonable speedup is obtained in comparison with the original version. |
Key words: OpenACC lattice Boltzmann simulation parallel computing |
DOI:10.11916/j.issn.1005-9113.18051 |
Clc Number:O368 |
Fund: |
|
Descriptions in Chinese: |
基于OpenACC的格子波尔兹曼加速模拟 郭书豪1, 2,吴杰1, 2 (1. 南京航空航天大学 机械结构力学与控制国家重点实验室,南京 210016;2. 南京航空航天大学 空气动力学系,南京 210016) 创新点说明:本文研究了流体动力学问题数值模拟中串行码的并行加速问题。为求解流场,采用格子波尔兹曼方法(LBM),并用OpenACC(Open Accelerator)应用编程接口执行程序加速。通过并行计算密集的循环、减少一些无意义的数据传输,基于LBM的串行代码得到了明显的加速。针对几个标准的流体动力学问题,通过OpenACC编程模型进行模拟来实现性能和计算效率的评估。优化后,与原代码版本相比,加入OpenACC的代码能得到合理的加速比。 研究目的: 利用OpenACC对串行的LBM代码进行并行加速。 研究方法: 主要利用OpenACC的导语,对现有的LBM串行代码进行注释,随后在GPU环境下运行。 结果: 通过模拟方腔流、静止的圆柱绕流以及圆柱的涡激震荡问题,验证的OpenACC对LBM串行代码并行化的可行性。 结论: OpenACC能简单有效地提高LBM串行代码的计算速度。 关键词:OpenACC;格子波尔兹曼方法;并行计算 |