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

Computer Engineering & Science ›› 2025, Vol. 47 ›› Issue (12): 2119-2128.

• High Performance Computing • Previous Articles     Next Articles

Incompressible fluid simulation algorithm optimization of  OpenFOAM on Tianhe supercomputing

LIU Zhongmin,ZHANG Xiang,MA Di,SUN Yang,ZHOU Lei,QIU Qi,GONG Chunye   

  1. (1.School of Computer Science and Technology,Changsha University of Technology,Changsha 410073;
    2.College of Computer Science and Technology,National University of Defense Technology,Changsha 410073;
    3.32286 troops,Changsha 410073; 
    4.National Supercomputer Center in Tianjin,Tianjin 300457,China)
  • Received:2024-04-29 Revised:2024-09-24 Online:2025-12-25 Published:2026-01-06

Abstract: The incompressible fluid simulation solvers in the open-source fluid dynamics software OpenFOAM exhibit cross-platform applicability. However, their performance optimizations are predominantly tailored to supercomputing systems with existing architectures such as Intel, rendering their algorithmic optimizations unable to fully leverage the vectorized parallel advantages of the ARM architecture on the Tianhe supercomputing system. To address this, this paper focuses on incompressible fluid simulation solvers as the research subject and employs ARM vectorization techniques to optimize their symmetric Gauss-Seidel (SGS) method and diagonal incomplete Cholesky preconditioned conjugate gradient (DIC-PCG) method, thereby enhancing the solver’s operational efficiency. To achieve vectori- zation goals, this paper analyzes the relationships between neighboring grid cells during a single iteration of the two types of solving algorithms, revealing that the maximum number of neighboring cells is two and that there are no dependencies between them. Leveraging this prior knowledge, the original algorithm code is modified with minimal cost—specifically, by adding just four lines of if-else conditional statements—to vectorize the neighboring cells and accelerate the algorithms. Experimental results under various configurations demonstrate that the improved algorithm achieves a maximum single-core speedup of 1.75 and a maximum multi-core speedup of 149.16, with a parallel efficiency still reaching 29.13%.


Key words: OpenFOAM, incompressible fluid simulation solver, performance optimization, single instruction multiple data(SIMD), loop unrolling, inline assembly, speedup rate