回顾PCG流程,两次规约操作分别发生在 \alpha 和\beta 的计算之前,并且由于后续计算直接依赖于这两个值,导致每次进程必须等待该规约操作完成后才能继续求解。如果我们要提升并行效率必定需要从这两个变量的计算方式下手,减少独立的规约操作(同时的规约操作可以同时执行)。如下为Preconditioned Chronopoulos/Gear CG计算流程[1]:
并行计算第一步是域分解,即将总计算区域分解为多个子计算区域。域分解算法总体可以分为重叠域分解和非重叠域分解,但对于CFD中的有限体积法我们往往采用是非重叠域分解,常见的工具有串行的METIS和支持并行的parMETIS。METIS是一个进行图分区(graph partition)软件,封面图片就是一个通过METIS分区得到的图,因此我们也需要将...
经今年完成的测试显示,在单核性能上,软件与国外竞品及开源软件相比处于同一水平。此外,在并行计算方面,VirtualFlow展现出优异的线性度,并行计算效率随着计算资源的增加而线性提升。这一特性使得软件在处理大规模流体仿真任务时能够高效运行,满足用户对计算速度和效率的需求。关于典型案例,主要介绍三个具代表性的应用。
针对计算流体力学(Computational Fluid Dynamics,CFD)大规模并行计算的需要,我们设计了适用于任意网格类型的并行计算框架风雷(PHengLEI)软件,同时支持结构网格、非结构网格和重叠网格。为了实现并行通信与网格类型无关且与物理求解器开发者隔离,我们设计了通用的通信模式和一种基于网格块的“三合一”的数据交换模式,即将多块...
通常的压力速度求解,压力方程往往占据百分之五十以上的计算时间,优化压力泊松方程的求解能够有效的降低CFD总体计算时间,在一定程度上,GPU部分加速CFD计算中,压力方程的并行为首选方案。 CFD并行加速的最终目标自然是实现全步骤的并行加速,包括并不仅限于压力、速度方程求解、网格、矩阵处理,以及其中隐含的各种算法,在并行方...
多块结构化网格CFD并行计算和负载平衡研究 基于连续拼接多块结构化网格,通过求解雷诺平均Navier-Stokes方程研究并行计算中的负载平衡问题.利用组合优化中的排序理论设计负载平衡算法,实现了网格数据的自动划分和各处理机上计算任务的自动分配.在工作站集群MPI并行环境下,通过实例考察了负载平衡算法和并行计算的*能,16个处理...
摘要:应用计算流体力学(CFD)方法分析事故原因已被广泛采用,笔者针对事故理论分析和流体计算过程中,运用CFD方法所存在计算量大的问题,分析和讨论了几种古典迭代法及其并行计算方法。 关键词:计算流体力学(CFD);迭代法;并行计算 1引言 在安全科学的众多领域,例如,爆炸压力场的分布计算中,都广泛地使用CFD(ComputationalFlu...
实现CFD并行处理的核心在于任务分配策略。根据反应堆结构特征,通常采用区域分解法将三维模型切割为多个重叠或非重叠区域。每个计算节点负责特定区域内的动量方程、能量方程求解,通过消息传递接口实现边界信息实时交互。对于反应堆压力容器内的复杂流动现象,需特别注意涡流区域与传热壁面处的网格划分精度,避免因分区不当导致...
该方法并没有像前其他CFD方法那样求解流体的Navier–Stokes方程,而是通过计算微观粒子间的streaming和collision两个过程,从而模拟整体流体的运动行为。该算法最大的特点是并行计算效率非常高,主要是因为算法过程相对简单容易并行。 目前,除了在一般的流体力学问题中得到了成功的应用外,格子BoftZmann方法在多相(元)流、化学...
结果表明,METIS的分区结果在CFD通用仿真软件下并行计算性能最优,而性能其次的PT-SCOTCH也可作为METIS的替代软件。 04 研究结论 具备可扩展性、同时功能强大的CFD通用仿真软件,由于在前处理、求解过程和输入/输出(I/O)功能上的优化表现,被PRACE项目认证并入选为用于检验超算能力的CFD软件。