当前位置: X-MOL 学术Comput. Phys. Commun. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
DLBFoam: An open-source dynamic load balancing model for fast reacting flow simulations in OpenFOAM
Computer Physics Communications ( IF 7.2 ) Pub Date : 2021-06-18 , DOI: 10.1016/j.cpc.2021.108073
Bulut Tekgül , Petteri Peltonen , Heikki Kahila , Ossi Kaario , Ville Vuorinen

Computational load imbalance is a well-known performance issue in multiprocessor reacting flow simulations utilizing directly integrated chemical kinetics. We introduce an open-source dynamic load balancing model named DLBFoam to address this issue within OpenFOAM, an open-source C++ library for Computational Fluid Dynamics (CFD). Due to the commonly applied operator splitting practice in reactive flow solvers, chemistry can be treated as an independent stiff ordinary differential equation (ODE) system within each computational cell. As a result of the highly non-linear characteristics of chemical kinetics, a large variation in the convergence rates of the ODE integrator may occur, leading to a high load imbalance across multiprocessor configurations. However, the independent nature of chemistry ODE systems leads to a problem that can be parallelized easily (called an embarrassingly parallel problem in the literature) during the flow solution. The presented model takes advantage of this feature and balances the chemistry load across available resources. Additionally, a reference mapping model is utilized to further speed-up the simulations. When DLBFoam it utilized with both these features enabled, a speed-up by a factor of 10 is reported for reactive flow benchmark cases. To the best of our knowledge, this model is the first open-source implementation of chemistry load balancing in the literature.

Program summary

Program Title DLBFoam

CPC Library link to program files:: (to be added by Technical Editor)

Developer's repository link: https://github.com/blttkgl/DLBFoam

Code Ocean capsule: (to be added by Technical Editor)

Licensing provisions: GPLv3

Programming language: C++

Supplementary material:

Nature of problem: Solution of chemical kinetics in parallel reacting flow solvers raises a computational imbalance across multiprocessor architectures. DLBFoam balances the load distribution evenly, providing significant speed-up in reacting CFD applications.

Solution method: The dynamic load balancing is implemented by distributing the point-wise chemistry problems from most loaded processes to less loaded ones using MPI communication protocol.

Additional comments including restrictions and unusual features: The present model is designed to work with the standard chemistry model class available in OpenFOAM (versions 7 and 8). For the time being, the model does not support derived combustion models such as “TDAC” and covers gas-phase reaction kinetics only. In addition, the boundary surface chemistry problems are neglected by the model.



中文翻译:

DLBFoam:用于 OpenFOAM 中快速反应流动模拟的开源动态负载平衡模型

计算负载不平衡是使用直接集成化学动力学的多处理器反应流模拟中众所周知的性能问题。我们引入了一个名为DLBFoam的开源动态负载均衡模型在 OpenFOAM 中解决这个问题,OpenFOAM 是一个用于计算流体动力学 (CFD) 的开源 C++ 库。由于反应流求解器中常用的算子拆分实践,化学可以被视为每个计算单元内的独立刚性常微分方程 (ODE) 系统。由于化学动力学的高度非线性特性,ODE 积分器的收敛速度可能会发生很大变化,从而导致多处理器配置之间的高负载不平衡。然而,化学 ODE 系统的独立性导致了一个可以轻松并行化的问题(称为尴尬并行文献中的问题)在流动求解过程中。所呈现的模型利用此功能并在可用资源之间平衡化学负载。此外,参考映射模型用于进一步加速模拟。当DLBFoam在启用这两个功能的情况下使用时,反应流基准案例的速度提高了 10 倍。据我们所知,该模型是文献中化学负载平衡的第一个开源实现。

程序概要

节目名称DLBFoam

CPC 库链接到程序文件: :(由技术编辑添加)

开发者仓库链接: https : //github.com/blttkgl/DLBFoam

代码海洋胶囊:(待技术编辑补充)

许可条款: GPLv3

编程语言: C++

补充材料:

问题的性质:并行反应流求解器中的化学动力学解决方案在多处理器架构之间引起了计算不平衡。DLBFoam 均匀地平衡负载分布,显着加快 CFD 应用程序的反应速度。

解决方法:动态负载平衡是通过使用 MPI 通信协议将逐点化学问题从负载最多的进程分配到负载较小的进程来实现的。

包括限制和不寻常功能在内的其他评论:本模型旨在与 OpenFOAM(版本 7 和 8)中可用的标准化学模型类一起使用。目前,该模型不支持衍生燃烧模型,例如“TDAC”,仅涵盖气相反应动力学。此外,模型忽略了边界表面化学问题。

更新日期:2021-06-24
down
wechat
bug