GPU accelerated MFiX-DEM simulations of granular and multiphase flows (Open Access)
Liqiang Lu(卢利强)*
Keywords:GPU; MFIX; DEM; Drag; Fluidization
DOI:10.1016/j.partic.2021.08.001
GPU加速科学计算已有十几年的历史。由于其特殊的编程语言和独特的硬件架构,开发高效的GPU计算软件对模拟工程师是一个巨大的挑战!MFiX是采用Fortran开发的开源多相流模拟软件,广泛应用于气固两相流基础研究和煤气化、生物质热解、二氧化碳捕集等能源化工领域。
近日,MFiX开发小组在PARTICUOLOGY发表的论文详细介绍了利用GPU对MFiX-DEM模型进行加速计算的方法及其验证和应用。读者可以通过该论文详细了解GPU加速离散单元法(DEM)和耦合CFD计算的编程方法,并通过开源代码进行GPU加速计算和二次开发。
本文已OA,欢迎感兴趣的读者扫描下方二维码进入Science Direct官网阅读、下载!
研究背景
DEM和CFD-DEM直接计算颗粒的受力(碰撞力、曳力等),并根据牛顿定律追踪颗粒的运动轨迹,由于计算结果真实可靠,被广泛应用于颗粒流和气固两相流的模拟 [1]。然而,巨大的颗粒数目和较小的时间步长使该方法的计算量巨大,其应用范围受到限制。目前有三种方法可以提高其计算速度:(1)粗粒化、(2)机器学习和(3)GPU计算。粗粒化方法将空间相近的多个颗粒的运动用一个粗颗粒替代,通过减少模拟的颗粒数目提高计算速度 [2]。机器学习采用神经网络计算由颗粒的碰撞产生的位移,通过采用较大的时间步长减小计算量/提高计算速度 [3]。但是,这两种方法都会带来精度的损失。GPU计算是对DEM方法的“暴力”加速,在模型上没有任何简化,准确可靠。颗粒学报关于GPU计算的首篇报道发表于2009年,该文章介绍了过程所建立的世界首套千万亿次GPU超级计算系统及其应用 [4]。近年来,GPU计算发展迅速,并推动了人工智能(AI)热潮。
实验和模拟观察到的颗粒在流化床中的复杂运动
研究方法
MFiX是采用Fortran开发的开源多相流模拟软件,包含TFM、DEM、CGDEM、MP-PIC四个模型求解器。作者采用敏捷开发的方法,对DEM求解器进行CUDA C重构,建立了独立的GPU-DEM求解器。该求解器可独立运行模拟颗粒流,也可以通过管道(pipe)与MFiX的流体求解器耦合,模拟气固两相流。
图1. GPU-DEM求解器通过管道与MFiX流体求解器耦合
该GPU-DEM求解器以英伟达简化版颗粒模拟器为基础,加入了颗粒邻居列表以及与碰撞历史相关的累积切向力模型、传热模型、和化学反应模型。对于碰撞的计算,采用了颗粒-线程并行和碰撞对-线程并行两种方法。论文图文并茂,详细介绍了算法逻辑和GPU优化。
验证与测试
论文采用颗粒对撞、单颗粒沉降、颗粒堆积等多个算例对GPU-DEM求解器进行了验证。在颗粒堆积算例中,比较了模拟不同数目颗粒时,GPU和CPU的相对计算速度。如图2所示,当颗粒数目超过40万时,GPU(NVIDIA Tesla P100)计算速度达到饱和,约为CPU(Intel Xeon Gold 6148)单核计算速度的165到178倍。碰撞对并行的计算速度比颗粒并行快6%左右。采用单精度模式,GPU加速可以提高到240倍以上,且对计算结果影响较小。但当颗粒在一个时间步长内在一个方向的移动距离和颗粒在该方向坐标值之比小于百万分之一时,单精度计算误差较大,需要特殊处理。论文通过对鼓泡流化床和生物质干燥的模拟对流体求解器耦合、传热和反应模型进行了验证。
图 2. 不同GPU并行方法相对CPU的计算速度
模拟应用
论文研究了CFD网格粗粒化和计算颗粒粗粒化对流化床模拟结果的影响。由于网格数目较少,颗粒数目较大,CPU并行计算并不适用于网格粗粒化模拟。而GPU单卡计算能力强大,适合此类任务。模拟结果表明流体粗粒化导致床层偏高,颗粒粗粒化进一步加剧了该趋势。采用亚网格曳力模型可以提高粗粒化模拟的精度。
图 3. 流化床模拟中的流体粗粒化和颗粒粗粒化
参考文献
[1] W. Zhao, Computation as a powerful tool for understanding particle systems: an interview with Aibing Yu, National Science Review. 5 (2018) 342–345. https://doi.org/10.1093/nsr/nwy001.
[2] L. Lu, J. Xu, W. Ge, G. Gao, Y. Jiang, M. Zhao, X. Liu, J. Li, Computer virtual experiment on fluidized beds using a coarse-grained discrete particle method—EMMS-DPM, Chemical Engineering Science. 155 (2016) 314–337.
[3] L. Lu, X. Gao, J.-F. Dietiker, M. Shahnam, W.A. Rogers, Machine learning accelerated discrete element modeling of granular flows, Chemical Engineering Science. 245 (2021) 116832. https://doi.org/10.1016/j.ces.2021.116832.
[4] F. Chen, W. Ge, L. Guo, X. He, B. Li, J. Li, X. Li, X. Wang, X. Yuan, Multi-scale HPC system for multi-scale discrete simulation—Development and application of a supercomputer with 1 Petaflops peak performance in single precision, Particuology. 7 (2009) 332–335. https://doi.org/10.1016/j.partic.2009.06.002.
供稿:原文作者
编辑:《颗粒学报》编辑部