首页/文章/ 详情

45天缩短到4天,突发性Fluent仿真任务怎么破?

2年前浏览1220
1.jpg

CFD(Computational Fluid Dynamics,计算流体动力学)是一种利用计算机来解决工程流体流动问题的方法,具体方法是数值计算,通过计算机求解流体流动过程中的质量传递、能量传递、动量传递以及化学反应问题,不受物理模型和实验模型的限制,省钱省时,可以模拟真实条件和实验中很难达到的理想条件

Fluent算得上应用最广泛的CFD应用了。2006年5月,正式成为Ansys大家庭中的重要成员,共享先进的Ansys公共CAE技术。

数值计算方法有几个难点:
1、很大程度上依赖于经验与技巧;
2、数值处理方法可能导致计算结果不真实;
3、因为涉及大量数学计算,有很高的计算资源需求。随着应用的物理建模不断精细,数值模拟分辨率越来越高,对计算能力的要求也越来越高。

当求解问题规模越来越大,网格数上升到几千万甚至上亿的时候,如何让Fluent仿真任务在更短的时间迭代收敛呢?
面对永无止境的计算需求,我们主要发挥作用就在第三点上。

今天我们通过一个实证来看看具体怎么实现。

用户需求

某高校实验室使用Ansys Fluent进行基于化学反应模型的CFD流体仿真,因科研项目需要结题,需要在一周内完成10多个case的运算
该实验室有80核本地资源,通常情况都是单机跑,没有集群环境。根据以往经验推断,要完成这组任务需要花费至少45天才能完成。

实验室老师也考虑过使用超算。
但一方面,超算的使用门槛比较高,且应用需要用户配置,无法做到开箱即用,他们更习惯拖拉曳的图形界面操作方式。
另一方面,该实验室迫切需要能够在短时间内使用比较大规模的算力资源,而超算没这么快,需要等。

实证目标

1、Fluent任务能否在云端有效运行?
2、fastone能够短时间内获取大量算力资源,大幅度缩短项目周期?
3、Fluent应用的高效率并行性是否在云端同样适用?
4、针对擅长和不擅长编程的用户,fastone能否提供不同的操作方式?
5、fastone平台能否支持实时查看残差图?

实证参数


平台:

fastone企业版产品

应用:
Ansys Fluent 20.20

操作系统:
CentOS 7.6

适用场景:
油/气能量的产生和环境应用
航天和涡轮机械的应用
汽车工业的应用
热交换应用
电子/HVAC应用
材料处理应用
建筑设计和火灾研究

云端硬件配置:
Ansys Fluent一直宣称自己支持高效率的并行计算功能,在2016年曾联手CRAY和HLRS超算创了一项世界记录,将Fluent扩展到超过172,000个计算机核心。
对于以有限单元法为基础的CFD类计算,尤其是选用隐式格式和耦合算法的时候,并行计算时会将网格分成很多块放在不同的计算节点上,在计算时每个迭代步节点之间需要进行大量的数据交换。因此,节点之间的数据通信就显得尤为重要。
 
Fluent通过内置MPI并行机制来大幅度提高可扩展性,通过放大计算资源规模来最短时间给出高精度的计算结果。
而在本地或超算环境,比较有效的解决方案就是IB-Infiniband。

针对这一特性,我们分别在云端选择了计算优化型实例和网络加强型实例进行验证。

调度器:
Fluent原生支持LSF/SGE/PBS调度器,平台通过Slurm Wrapper的方式都可以支持。
关于这一点,下次再细讲。

技术架构图:
2.png

实证场景一

云端扩展性验证

理想值 VS 云端计算优化型实例

结论:
1、在云端使用计算优化型实例,当所调度资源在480核及以下时,云端扩展性较好。
2、随着核数逐渐增加,由于节点间通信开销指数级上升,性能的提升随着线程数增长逐渐变缓。当核数增加到960核时,计算优化型实例共耗时106.6小时,比理想耗时高16.6小时。
3.jpg

实证过程:
1、云端调度120核计算优化型实例运算一组Fluent任务,耗时721.8小时;
2、云端调度240核计算优化型实例运算一组Fluent任务,耗时362.2小时;
3、云端调度360核计算优化型实例运算一组Fluent任务,耗时242.4小时;
4、云端调度480核计算优化型实例运算一组Fluent任务,耗时183.3小时;
5、云端调度600核计算优化型实例运算一组Fluent任务,耗时152.1小时;
6、云端调度720核计算优化型实例运算一组Fluent任务,耗时130.8小时;
7、云端调度840核计算优化型实例运算一组Fluent任务,耗时117.3小时;
8、云端调度960核计算优化型实例运算一组Fluent任务,耗时106.6小时。

实证场景二

云端扩展性验证

云端计算优化型实例 VS 云端网络加强型实例

结论:
1、在云端使用云端网络加强型实例,调度960核计算资源,最多可将运算一组Fluent任务的耗时从本地单机环境的45天缩短到90.6小时(3.775天),可满足该实验室“一周内完成”的要求;
4.jpg

2、网络加强型实例有效解决了Fluent任务并行计算节点间通信问题,在云上展现出了良好的线性扩展性。在相同的核数下,网络加强型实例的线性十分接近理想值。也就是说,如果核数增加,仿真所需时间会成比例缩短。
5.jpg5.jpg

实证过程:
1、云端调度120核网络加强型实例运算一组Fluent任务,耗时720.1小时;
2、云端调度240核网络加强型实例运算一组Fluent任务,耗时360.3小时;
3、云端调度360核网络加强型实例运算一组Fluent任务,耗时240.2小时;
4、云端调度480核网络加强型实例运算一组Fluent任务,耗时180.2小时;
5、云端调度600核网络加强型实例运算一组Fluent任务,耗时144.4小时;
6、云端调度720核网络加强型实例运算一组Fluent任务,耗时121.1小时;
7、云端调度840核网络加强型实例运算一组Fluent任务,耗时103.3小时;
8、云端调度960核网络加强型实例运算一组Fluent任务,耗时90.6小时。

实证场景三

任务提交方法

journal标准流程化模式 VS Fluent应用图形界面模式


我们为有编程基础的用户提供journal标准流程化模式,用户可在Web浏览器中直接提交已编写好的journal文件,开启云端Fluent任务,方便快捷
而对于无编程基础的用户提供Fluent应用图形界面模式,用户可通过Web浏览器启动集群,跳转到虚拟桌面,并可在该桌面直接操作Fluent应用进行相应设置以开启云端Fluent任务

journal标准流程化模式分为三个步骤
1、通过Web浏览器登录fastone平台;
2、在Web界面新建任务、选择应用、配置资源;
3、在应用中选择journal文件(即Fluent脚本文件),输入所需资源和应用参数(如求解器精度),提交任务。
该种方式要求用户有能力自定义journal文件,即需要用户具有一定的编程基础。由于该高校科研组缺乏相应编程能力,fastone为其提供了Fluent应用图形界面提交方式。
6.jpg

Fluent应用图形界面模式有四个步骤
1、通过Web浏览器登录fastone平台;
2、在Web界面新建集群、配置资源;
3、在已创建的集群点击WebVNC远程桌面图标(同时提供WebSSH远程命令行功能);
4、跳转到虚拟桌面,可在该桌面直接操作Fluent应用进行相应设置以提交任务。
该种方式模拟出了Fluent的原生界面,用户更为熟悉操作环境,使用体验较好。
7.png

平台还支持实时查看残差曲线,监控计算的收敛情况。
8.jpg

实证场景四

用户模式

普通用户模式 VS 高级用户模式


上一个场景里的journal标准流程化模式就是通过Web浏览器选择新建任务、选择应用、上传文件,输入参数,配置资源等一系列向导式路径提交任务。

对于高级用户,比如本身对应用工作流的理解和编程能力超强,可以不用走普通用户通过应用向导式提交的路径,可以直接根据自己写的脚本,通过Web浏览器选择新建集群,然后按需动态地在云端创建HPC集群。
9.jpg



实证小结

1、Fluent任务能够在云端有效运行;
2、fastone能够快速获取大量云端算力,大幅缩短项目周期;
3、针对Fluent应用对节点间数据通信的高要求,选择网络加强型实例可以在云端达到很好的高效率并行性;
4、针对不同的用户,fastone提供多种任务提交方式以供选择,既支持journal标准流程化模式,也支持Fluent应用图形界面模式;
5、fastone平台支持实时查看残差图;
6、高级用户可以根据自定义脚本,直接在云端创建HPC集群。

本次CAE行业Cloud HPC实证系列Vol.5就到这里了。
在下一期的CAE云实证中,我们将利用速石平台使LS-DYNA模拟性能得到极大提升。

未来我们还会带给大家更多领域的用云“真香”实证,请保持关注哦!
Fluent
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2022-05-27
最近编辑:2年前
速石科技
为应用定义的云
获赞 36粉丝 2文章 16课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈