首页/文章/ 详情

基于MPI并行的非线性有限元求解器Hanfem

1月前浏览577

在之前的文章HANFEM-高性能非线性有限元程序中提到Hanfem是本公 众号自研的用于结构求解的高性能非线性有限元求解器,并在文章中表明Hanfem可以求解百万级别自由度的模型。实际上,Hanfem在开发之初就准备采用MPI并行实现。最近,基于MPI并行求解的部分工作已经完成,在采用MPI并行之后,和之前版本相比,求解效率大幅提高。

以之前的12.5W单元模型为例:
采用MPI并行后,具体总求解时间如下:
采用12个进程求解,总求解时间为17.57s,相比无MPI版本的61s,效率提高了3.47倍。在MPI的程序中,12.5w单元被分到12个进程中,每个进程约1w单元,每个进程仅需要对进程内的单元求解刚度矩阵,最后结合进程间的通信,组装成整体刚度矩阵,由于每个进程的单元数相对非MPI程序大幅减少,因此形成和组装刚度矩阵的时间由之前的16.6s减少到5.53s。线程方程组的求解,由于改进了求解方法,求解时间从21.7s减少到7.3s。
下是分别采用2进程,4进程,8进程,10进程和12进程计算12.5w单元的计算时长对比:

在这台CPU为AMD3900x,12核的机器上,进程数为10的时候计算时间最短,为17.08s。
同样,对于百万单元的求解,效率也有大幅提高:
此时单元已经多到几乎看不清,采用MPI版本的HanFem计算时间如下:
组装刚度矩阵43s,线性方程组求解时间118s,总求解时间306s。这相对于之前的无MPI的版本组装刚度矩阵236s,线性方程组求解412s,总求解时间1889s有了显著性地提高。总体求解效率提高了6倍!
当然,自然还是无法比得上abaqus的总求解时间2min,但这已经在靠近了。
计算结果:
HanFem输出的位移:
Abaqus输出的位移:
二者结果基本一致。

来源:有限元术
Abaqus非线性通信
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-05-11
最近编辑:1月前
寒江雪_123
硕士 | cae工程师 签名征集中
获赞 48粉丝 98文章 45课程 9
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈