数据与计算发展前沿 ›› 2020, Vol. 2 ›› Issue (1): 105-116.doi: 10.11871/jfdc.issn.2096-742X.2020.01.009

• 专刊:高性能与高通量计算及应用 • 上一篇    下一篇

基于CPU/GPU异构系统架构的高超声速湍流直接数值模拟研究

党冠麟1,4,刘世伟3,4,胡晓东2,张鉴2,李新亮1,4,*()   

  1. 1.中国科学院力学研究所,北京 100190
    2.中国科学院计算机网络信息中心,北京 100190
    3.中国科学院数学与系统科学研究院,北京 100190
    4.中国科学院大学,北京 100049
  • 收稿日期:2019-12-06 出版日期:2020-02-20 发布日期:2020-03-28
  • 通讯作者: 李新亮 E-mail:lixl@imech.ac.cn
  • 作者简介:党冠麟,中国科学院力学研究所,在读博士研究生。主要研究方向为可压缩湍流与转捩、直接数值模拟、高性能计算。
    本文承担工作为:程序实现、优化与应用测试。
    Dang Guanlin is a PhD candidate in Institute of Mechanics, Chinese Academy of Sciences. His research interests include compressible turbulence and transition, direct numerical simulation, and high-performance computing.
    In this paper he undertakes the following tasks: code implementation, optimization, and application testing.
    E-mail:dangguanlin@imech.ac.cn|刘世伟,中国科学院数学与系统科学研究院,计算数学与科学工程计算研究所在读博士研究生,主要研究方向为计算流体力学高精度格式、大涡模拟,以及OpenCFD在GPU上的异构并行程序移植与优化。
    本文承担工作为:框架代码实现、程序优化与测试。
    Liu Shiwei is currently pursuing the PhD degree with the Institute of Computational Mathematics and Scientific/Engineering Computing, Academy of Mathematics and Systems Science, Chinese Academy of Sciences. His research interests include high-order schemes of computational fluid dynamics, large eddy simulation, as well as porting and optimization of heterogeneous parallel programs of OpenCFD on CUDA platform.
    In this paper he undertakes the following tasks: code implementations of the whole framework,program optimization and testing.
    E-mail:liusw@lsec.cc.ac.cn|胡晓东,中国科学院计算机网络信息中心,博士,工程师,主要研究方向为并行计算、计算流体力学。
    本文承担工作为:程序优化、编程指导。
    Hu Xiaodong is an engineer in Supercomputing Center of Computer Network Information Center, Chinese Academy of Sciences. He received master’s degree in fluid dynamics from Northwestern Polytechnical University in 2011, and the PhD degree in computer software and theory form University of Chinese Academy of Sciences in 2019. His current research interests include computational fluid dynamics and high-performance computing.
    In this paper he undertakes the following tasks: program optimization and guidance of programing.
    E-mail:huxd@sccas.cn|张鉴,中国科学院计算机网络信息中心,博士,研究员,主要研究方向为科学计算、高性能计算和计算机可视化。
    本文承担工作为:程序整体结构设计、编程指导。
    Zhang Jian received the BS degree in computational mathematics from Peking University, PR China, in 1995, and the PhD degree in applied mathematics from the University of Minnesota in May 2005. He is a professor in Computer Network Information Center, Chinese Academy of Sciences. From June 2005 to June 2009, he was a postdoc in the Pennsylvania State University working on scientific computing and modeling. His current research interests include scientific computing, high-performance computing, and scientific visualization.
    In this paper he undertakes the following tasks: code design and execution director of programing.
    E-mail:zhangjian@sccas.cn|李新亮,中国科学院力学研究所高温气体动力学国家重点实验室,理学博士,中国科学院力学研究所高温气体动力学国家重点实验室研究员,中国科学院大学岗位教授,博士生导师。任中国空气动力学会物理力学专业委员会副主任委员,计算物理学会常务理事,Computers & Fluids 杂志编委,《空气动力学报》及《计算物理》杂志编委等职。
    目前主要从事计算流体力学及湍流研究。构造了优化保单调、加权群速度控制格式等高精度激波捕捉格式,并在此基础上开发一套开源的高精度计算流体力学软件OpenCFD;进行了一系列典型超声速、高超声速可压缩湍流的直接数值模拟,并在此基础上对湍流机理、模型及控制进行了深入探索。
    本文承担工作为:程序结构设计与开发、DNS研究指导。
    Li Xinliang, is the professor in laboratory of high-temperature gas dynamics, institute of mechanics, Chinese academy of sciences (CAS) and University of Chinese academy of sciences (UCAS). Prof. Li got his PhD in institute of mechanics, CAS in 2000, and then worked as a postdoctoral researcher in Tsinghua University. Dr. Li works in institute of mechanics, CAS since 2002, and his is major in CFD and DNS of turbulent flows.
    In this paper he undertakes the following tasks: code design and research guidance of the DNS.
  • 基金资助:
    中国科学院战略先导科技专项(XDC01040100);国家重点研发项目(2019YFA0405300)

Direct Numerical Simulation of Hypersonic Turbulence Based on CPU/GPU Heterogeneous System Architecture

Dang Guanlin1,4,Liu Shiwei3,4,Hu Xiaodong2,Zhang Jian2,Li Xinliang1,4,*()   

  1. 1.Institute of Mechanics,Chinese Academy of Sciences, Beijing 100190, China
    2.Computer Network Information Center, Chinese Academy of Sciences, Beijing 100190, China
    3.Academy of Mathematics and Systems Science, Chinese Academy of Sciences, Beijing 100190, China
    4.University of Chinese Academy of Sciences, Beijing 100049, China
  • Received:2019-12-06 Online:2020-02-20 Published:2020-03-28
  • Contact: Li Xinliang E-mail:lixl@imech.ac.cn

摘要:

[目的]高超声速湍流直接数值模拟(DNS)对空间及时间分辨率要求高,计算量非常大。过大的计算量及过长的计算时间是导致DNS难以在工程中被大范围应用的重要原因。为加快计算速度,作者设计并开发了一套CPU/GPU异构系统架构(HSA)下的高性能计算流体力学程序OpenCFD-SCU。[方法]该程序以作者前期开发的高精度有限差分求解器OpenCFD-SC为基础,经GPU系统的移植及优化而得。GPU程序的计算部分使用CUDA编程,确保所有算术运算都在GPU上完成。[结果]利用GPU程序OpenCFD-SCU, 进行了来流Mach数6,6°攻角钝锥边界层转捩的直接数值模拟,得到了转捩过程中的时空演化流场。针对这一算例,GPU程序OpenCFD-SCU与CPU程序OpenCFD-SC相比,实现了60倍的加速效果(单GPU卡对单CPU核心),大大加速了DNS计算过程。[结论]未来,相信会有更多高超声速湍流模拟选择在GPU上开展。

关键词: 高超声速湍流, 直接数值模拟, GPU

Abstract:

[Objective] The direct numerical simulation (DNS) of hypersonic turbulence requires great many grids points and time steps. Therefore, the amount of calculation is very large. Excessively long time of calculation is an important reason that DNS cannot be applied in real applications. In order to accelerate the calculation, design of a high-performance computational fluid mechanics program OpenCFD-SCU under the CPU/GPU Heterogeneous System Architecture (HSA) is introduced in this paper. [Method] This program is based on the CPU [fortran] code OpenCFD-SC which is a high-precision finite difference solver developed by the authors. OpenCFD-SCU has the same program framework as OpenCFD-SC, and the computing part of the GPU program is programmed by CUDA to ensure that all arithmetic operations are completed on the GPU. [Results] In a same DNS task, the GPU version of OpenCFD-SCU is 60 times faster than the CPU version of OpenCFD-SC. The computing power of GPU is much higher than that of CPU. Using GPU can effectively accelerate the calculation, which is the future trend of DNS programs for hypersonic turbulence. [Conclusion] In the future, we believe that more and more hypersonic turbulence simulation can be moved to the GPU.

Key words: hypersonic turbulence, DNS, GPU