资源描述:
《有限元并行计算的 mpi 程序设计new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第38卷 第8期西 安 交 通 大 学 学 报Vol.38 №82004年8月JOURNALOFXI′ANJIAOTONGUNIVERSITYAug.2004有限元并行计算的MPI程序设计雒战平,刘之行(西安交通大学理学院,710049,西安)摘要:以Poisson方程边值问题的求解为背景,实现了有限元并行计算的MPI程序设计.通过生成一种特殊结构的刚度矩阵,并在此基础上,设计了一套有效的并行计算策略,使计算的并行性得到很好的开拓,实现了包括刚度矩阵的生成、刚度矩阵的三角分解以及解三角方程组的并行执行.程序在国家高性能计算中心(西安)的曙光3
2、000上进行了数值试验,结果表明,随着开辟进程数目的增多,加速比变得比较理想,当进程数目为30时,表明该进程数目在最优进程值附近.在60台处理器(进程)上计算18万个节点的大规模问题时,共耗时176196415s.关键词:并行计算;分布式存储;数据结构;有限元方法;MPI编程中图分类号:O242121 文献标识码:A文章编号:0253-987X(2004)08-0873-04MPIProgrammingforParallelComputingofFiniteElementMethodLuoZhanping,LiuZhixing(Schoolo
3、fSciences,Xi′anJiaotongUniversity,Xi′an710049,China)Abstract:TakensolvingPoissonboundaryproblemasasample,aMPIprogrammingforparallelcomputingoffiniteele2mentmethodiscompleted.Onthebasisofgeneratingakindofstiffnessmatrixwithspecialstructure,ataskassignmentTisproposedtoimpleme
4、ntparallellyconstructingthestiffnessmatrix,computingtheLDLfactorsandsolvingthetriangu2larsystems.SomenumericalexperimentscarriedoutonthehighperformancecomputerSHUGUANG3000indicatethathigherefficiencycanbeobtainedasthenumberofprocessorincreases,theoptimizednumberapproachesto
5、30.Ittakeslessthan3minuteswhentheproblemiswith180000nodes.Keywords:parallelcomputing;distributedstorage;datastructure;finiteelementmethod;MPIprogramming 并行计算对于大规模科学与工程计算具有十分分配给进程,程序员必须解决所有的交互问题,包重要的意义.目前,并行计算机的基本存储方式主要括数据映射、通信、同步和聚集.负载分配通常用拥[1]有共享存储与分布式存储两种.在共享存储的并有者计算法则来完
6、成,即由拥有数据块的进程来完行机上,编程相对简单,却限制了并行计算的扩展成相应计算.在MPI的编程模型中,计算是由一个性,而分布式存储的并行机避免了共享内存带来的或多个进程通过调用库函数进行消息收发来实现通这一瓶颈,具有很好的扩展性,能极大提高并行计算信的.的性能.MPI消息传递编程模型为分布式存储的并本文对Poisson方程第一边值问题的有限元解行计算提供了强有力的编程环境.消息传递(即各个给出了完整的并行计算模型,并设计了相应的MPI并行执行的进程之间通过消息传递来交换信息、协程序.程序的基本框架对于一大类问题(刚度矩阵对调步伐、控制执行
7、)需要程序员显式地将负载和数据称正定)的有限元法并行求解都是适用的.收稿日期:2004-01-12. 作者简介:雒战平(1975~),男,硕士生;刘之行(联系人),男,教授. 基金项目:国家自然科学基金资助项目(10371095).©1995-2005TsinghuaTongfangOpticalDiscCo.,Ltd.Allrightsreserved.874西 安 交 通 大 学 学 报 第38卷 么A中非零块矩阵Aij的生成以及分解A得到对应1 有限元并行计算方法位置的Lij都可视为一个任务.并行计算是
8、最大限度本文研究二维Poisson方程第一边值问题的有地开拓任务并行执行的机会,尽量减少通讯次数,同[2][5]限元法并行求解,问题模型如下时要考虑到数据的分布式存