注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

AlexYoung

做好大家都必须要做的事,发展自己感兴趣的事,结束圣人所不齿的事...

 
 
 

日志

 
 

MCNP5的MPI并行实现  

2011-12-22 15:31:12|  分类: 专业mcnp |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

       

需要声明的是,这里讨论的只是并行的实现方法,并不涉及并行版本程序内在的并行算法等方面的研究。

现在,MCNP5Windows平台上的并行主要有mpipvm两种方式,而从硬件配置上来说又主要分为单机多核并行与机群并行。

首先,随着硬件的发展,各实验室都趋向于购买多核计算机用于科学计算,因此这里主要考虑单机多核并行方式。对于想要充分利用老式单核计算机而进行十几台机器并行的可以参考国内发表的多篇文章都有涉及,而且包含了详细步骤的。虽然如此,但相对单机多核并行而言,机群并行在设置上还稍显复杂。因此,这里只进行单机多核并行讲解。

其次,在并行方式上,mpi并行与pvm并行各有优缺点,但是就MCNP5说明书上看来,还是mpi版本的并行程序性能更佳,而且尤其是针对单机多核而言的话,还是推荐使用mpi并行版本程序。

最后才是并行的实现方法。

第一,需要并行版本的mcnp5程序,一般是名为mcnp5mpi.exe的一个可执行文件;

第二,需要一个并行平台;

第三,需要并行程序的执行命令。

详细说来,并行版本的mcnp5程序来说,可以自己编译,也可以安装时自动生成。

并行平台大都选用ANL较早开发的mpich平台,现在是开发到了2.0版本,但是就mcnp5mpi.exe而言,1.2.5版本的就足够了,安装完毕后可以将mpirun.exe拷贝至mcnp5mpi.exe文件所在的文件夹内。

执行命令为:

mpirun –localonly n mcnp5mpi i=xxx o=xxx irxz

说明,第一个是调用mpirun.exe程序,-localonly表示只使用本机上的计算核心,n表示希望使用的计算核的数目为n-1个,因为需要有一个虚拟的核来分配计算量,可以使用全部核进行计算。例如,如果机器是双核的,可以使用如下执行行命令来并行:

mpirun –localonly 3 mcnp5mpi i=xxx o=xxx irxz

就表示使用两个核计算。后面的mcnp5mpi就是调用并行版本的mcnp程序,之后的写法就和单独执行mcnp的相同了,这里不再赘述。


  评论这张
 
阅读(1491)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018