• 中国计算机学会会刊
  • 中国科技核心期刊
  • 中文核心期刊

计算机工程与科学 ›› 2022, Vol. 44 ›› Issue (03): 381-389.

• 高性能计算 • 上一篇    下一篇

谱方法求解水声传播问题的优化与并行

马现,王勇献,朱小谦,屠厚旺,李朋,颜恺壮   

  1. (国防科技大学气象海洋学院,湖南 长沙 410073)
  • 收稿日期:2021-01-20 修回日期:2021-07-17 接受日期:2022-03-25 出版日期:2022-03-25 发布日期:2022-03-24
  • 基金资助:
    国家重点研发计划(2016YFC1401800);国家自然科学基金(61379056,61972406)

Optimization and parallelization of spectral method for solving underwater acoustic propagation

MA Xian,WANG Yong-xian,ZHU Xiao-qian,TU Hou-wang,LI Peng,YAN Kai-zhuang   

  1. (College of Meteorology and Oceanography,National University of Defense Technology,Changsha 410073,China)
  • Received:2021-01-20 Revised:2021-07-17 Accepted:2022-03-25 Online:2022-03-25 Published:2022-03-24

摘要: 水声传播数值计算的效率是各类水声学应用关心的核心因素之一,谱方法作为求解微分方程的一种数值方法,具有精度高、收敛速度快等优点,因此,近年来利用简正波-谱方法求解水声传播方程引起了许多学者的关注;然而,谱方法计算量更大,计算时间更长,在求解大范围海域声传播问题时,难以满足实时性的需求。因此,需要借助现代高性能计算机系统,利用并行计算和性能优化的技术,提高计算速度。首先分析程序的计算流程和热点函数,研究编译器选项优化和调用高性能数学库MKL、访存优化和精简计算等程序性能调优方法,面向众核高性能计算平台开展多线程并行加速处理。最后在天河二号众核平台上进行测试与评估,结果表明,计算深海波导算例最终改进后的程序相较于原始的程序运行时间从584 s减少到24 s,加速23.98倍,大大缩短了计算时间,验证了所用方法的有效性,对大海域水声场计算有重要意义。进一步的分析表明,这些优化与并行方法对同类型同平台的其它科学和工程数值计算问题也具有参考与借鉴意义。

关键词: 谱方法, 串行优化, 多线程, 并行优化, 加速比

Abstract: The efficiency of numerical calculation of underwater acoustic propagation is one of the key factors in various applications of underwater acoustic science. As a numerical method for solving diffe- rential equations, spectral method has the advantages of high accuracy and fast convergence. Therefore, using normal wave-spectrum method to solve underwater acoustic propagation equations has attracted the attentions of many scholars in recent years. However, the spectral method requires more computation, and the computational efficiency is still difficult to meet the real-time requirements when solving large-scale underwater acoustic propagation problems. Therefore, it is necessary to use a high- performance computing system to carry out performance optimization and program parallelization research on the typical spectral method to calculate the underwater sound propagation program to improve the computing performance. Firstly, the calculation flow and hotspot functions of the program are analyzed. Then, the optimization methods of compiler options, calling high-performance math library MKL, memory access optimization, and reduced computation are studied. Finally, multi-thread parallel acceleration processing is carried out on the many-core high-performance computing platform. Through testing and evaluation on the Tianhe-2 many-core platform, the results show that the running time of the final parallel optimized version of the deep-sea waveguide calculation example is reduced from 584 seconds to 24 seconds compared with the original serial version, which is 23.98 times faster. The calculation time verifies the validity of the used method , and is of great significance to the calculation of the water sound field in the ocean. Further analysis shows that these optimization and parallelization methods also have reference and reference significance for other scientific and engineering numerical calculation problems of the same type on the same platform.

Key words: spectral method, serial optimization, multi-threaded, parallel optimization, speedup