TY - JOUR
T1 - Efficient dual-level parallelism solutions for OpenFOAM-based discrete unified gas kinetic scheme
AU - Zhang, Feifei
AU - Wang, Yunlan
AU - Zhang, Rui
AU - Guo, Jie
AU - Zhao, Tianhai
AU - Liu, Sha
AU - Zhuo, Congshan
AU - Zhong, Chengwen
N1 - Publisher Copyright:
© 2024 Elsevier Ltd
PY - 2025/3
Y1 - 2025/3
N2 - The Discrete Unified Gas Kinetic Scheme (DUGKS) is an efficient framework for solving gas kinetic equations, crucial in areas such as aerospace, microfluidics, and vacuum technologies. However, the existing dugksFoam solver (Zhu et al., 2017), developed on OpenFOAM, suffers from low parallel efficiency and high computational costs. This paper focuses on enhancing the efficiency of the dugksFoam solver through optimisations specific for memory access, communication, and computation. Two innovative process-thread hybrid parallel algorithms are proposed, combining dual-level parallelism tailored to the characteristics of the DUGKS algorithm and modern HPC cluster architectures. Algorithm 1 utilises process-level parallelism for physical space partitioning and thread-level parallelism for velocity-space partitioning, while Algorithm 2 swaps these parallel levels. Multiple validation cases were conducted to verify the accuracy of the algorithms. Both algorithms demonstrate significant performance improvements over the existing dugksFoam solver. Algorithm 1 is suitable for small-scale parallelism, and Algorithm 2 achieves linear speedup on 1024 cores, excelling in large-scale parallel scenarios.
AB - The Discrete Unified Gas Kinetic Scheme (DUGKS) is an efficient framework for solving gas kinetic equations, crucial in areas such as aerospace, microfluidics, and vacuum technologies. However, the existing dugksFoam solver (Zhu et al., 2017), developed on OpenFOAM, suffers from low parallel efficiency and high computational costs. This paper focuses on enhancing the efficiency of the dugksFoam solver through optimisations specific for memory access, communication, and computation. Two innovative process-thread hybrid parallel algorithms are proposed, combining dual-level parallelism tailored to the characteristics of the DUGKS algorithm and modern HPC cluster architectures. Algorithm 1 utilises process-level parallelism for physical space partitioning and thread-level parallelism for velocity-space partitioning, while Algorithm 2 swaps these parallel levels. Multiple validation cases were conducted to verify the accuracy of the algorithms. Both algorithms demonstrate significant performance improvements over the existing dugksFoam solver. Algorithm 1 is suitable for small-scale parallelism, and Algorithm 2 achieves linear speedup on 1024 cores, excelling in large-scale parallel scenarios.
KW - DUGKS
KW - Dual-level parallel
KW - OpenFOAM solver
KW - Performance optimisation
UR - http://www.scopus.com/inward/record.url?scp=85211979866&partnerID=8YFLogxK
U2 - 10.1016/j.advengsoft.2024.103840
DO - 10.1016/j.advengsoft.2024.103840
M3 - 文章
AN - SCOPUS:85211979866
SN - 0965-9978
VL - 201
JO - Advances in Engineering Software
JF - Advances in Engineering Software
M1 - 103840
ER -