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平台能否支持实时查看残差图?
Ansys Fluent一直宣称自己支持高效率的并行计算功能,在2016年曾联手CRAY和HLRS超算创了一项世界记录,将Fluent扩展到超过172,000个计算机核心。对于以有限单元法为基础的CFD类计算,尤其是选用隐式格式和耦合算法的时候,并行计算时会将网格分成很多块放在不同的计算节点上,在计算时每个迭代步节点之间需要进行大量的数据交换。因此,节点之间的数据通信就显得尤为重要。Fluent通过内置MPI并行机制来大幅度提高可扩展性,通过放大计算资源规模来最短时间给出高精度的计算结果。而在本地或超算环境,比较有效的解决方案就是IB-Infiniband。针对这一特性,我们分别在云端选择了计算优化型实例和网络加强型实例进行验证。Fluent原生只支持LSF/SGE/PBS调度器,平台通过Slurm Wrapper的方式都可以支持。1、在云端使用计算优化型实例,当所调度资源在480核及以下时,云端扩展性较好。2、随着核数逐渐增加,由于节点间通信开销指数级上升,性能的提升随着线程数增长逐渐变缓。当核数增加到960核时,计算优化型实例共耗时106.6小时,比理想耗时高16.6小时。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小时。1、在云端使用云端网络加强型实例,调度960核计算资源,最多可将运算一组Fluent任务的耗时从本地单机环境的45天缩短到90.6小时(3.775天),可满足该实验室“一周内完成”的要求;2、网络加强型实例有效解决了Fluent任务并行计算节点间通信问题,在云上展现出了良好的线性扩展性。在相同的核数下,网络加强型实例的线性十分接近理想值。也就是说,如果核数增加,仿真所需时间会成比例缩短。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任务。3、在应用中选择journal文件(即Fluent脚本文件),输入所需资源和应用参数(如求解器精度),提交任务。该种方式要求用户有能力自定义journal文件,即需要用户具有一定的编程基础。由于该高校科研组缺乏相应编程能力,fastone为其提供了Fluent应用图形界面提交方式。3、在已创建的集群点击WebVNC远程桌面图标(同时提供WebSSH远程命令行功能);4、跳转到虚拟桌面,可在该桌面直接操作Fluent应用进行相应设置以提交任务。该种方式模拟出了Fluent的原生界面,用户更为熟悉操作环境,使用体验较好。上一个场景里的journal标准流程化模式就是通过Web浏览器选择新建任务、选择应用、上传文件,输入参数,配置资源等一系列向导式路径提交任务。而对于高级用户,比如本身对应用工作流的理解和编程能力超强,可以不用走普通用户通过应用向导式提交的路径,可以直接根据自己写的脚本,通过Web浏览器选择新建集群,然后按需动态地在云端创建HPC集群。2、fastone能够快速获取大量云端算力,大幅缩短项目周期;3、针对Fluent应用对节点间数据通信的高要求,选择网络加强型实例可以在云端达到很好的高效率并行性;4、针对不同的用户,fastone提供多种任务提交方式以供选择,既支持journal标准流程化模式,也支持Fluent应用图形界面模式;6、高级用户可以根据自定义脚本,直接在云端创建HPC集群。本次CAE行业Cloud HPC实证系列Vol.5就到这里了。在下一期的CAE云实证中,我们将利用速石平台使LS-DYNA模拟性能得到极大提升。未来我们还会带给大家更多领域的用云“真香”实证,请保持关注哦!我们有个【在线体验版】,扫码即可注册,2分钟自动开通。即刻就能获得TOP500这种超级算力,你就不想试一下?你想要的我们可能都有,还送300元体验金,入股不亏~扫码添加小F微信(ID: imfastone)获取