24小时热门版块排行榜    

查看: 2600  |  回复: 12
本帖产生 1 个 QC强帖 ,点击这里进行查看

ghcacj

荣誉版主 (著名写手)

阿超

优秀版主

[交流] 【ghcacj个人文集】单机环境下安装openmpi使用Orca并行运算的方法介绍已有7人参与

Orca是个很不错的量化软件,这个不用多说,跟高斯很像、上手很快、输入输出软件一目了然、计算速度快,这些都是它的优点,但是它也有个Linux软件的通病,就是,如果你不安装mpi类的程序,Orca就没法进行并行计算,不管你的任务是多么的大,不管你的电脑CPU有多少个核、有多少个CPU,一样是只选择一个CPU的一个核,一直这么算下去,效率非常得低。所以如果你想使用Orca好好做一些东西,安装mpi是必须的。
       好在Orca是免费提供mpi版本的,并且支持mpi的模块逐渐增多,在没有mpi的环境下,他们仍然是单核运行,当你的系统处于mpi环境下,有mpi版本的模块会自动按照你分配的CPU资源进行并行运算,下面我就简单介绍下在单机环境下安装openmpi,并调试运行Orca并行运算的步骤。
       因为我本身不是做量化计算的,主要利用Orca计算些电荷,所以不是很专业,还望大家见谅。采用的单机系统是Ubuntu 10.04 LTS,因为是Ubuntu,所以安装openmpi过程变的简单了许多,之前网上很多安装调试openmpi的方法看的让人头疼也无法学会如何安装,而采用Ubuntu软件源自动安装openmpi,就轻松许多,很容易就安装成功,而如果使用源码包进行编译安装,目前我还没琢磨清楚,不过有一点必须知道,就是openmpi所需要的lib文件必须齐全,不然会出现计算运行到一半时会暂停报错的情况。
       采用新立得软件管理器,搜索mpi,会找到一些和openmpi相关的文件,注意,安装以下几个即可:
mpi-default-dev      openmpi-checkpoint
mpi-default-bin       openmpi-doc
libopenmpi1.3         openmpi-bin
openmpi-common   libopenmpi-dev
       安装完毕后,系统默认的会安装在/usr路径下,我们需要配置环境变量,在用户目录下,我们打开.bashrc文件,输入以下三行内容:
export MPI_HOME=/usr
export PATH=$PATH:$MPI_HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$MPI_HOME/lib
这样,在单机环境下,就完成了配置(关于很多人提到的machinefile,这个只有在集群时才用的到。)
然后我们找个例子进行测试,分别用一个核,两个核,三个核和四个核来完成同一个计算,计算文件如下:
# Test a simple DFT calculation
! RKS B3LYP/G 6-311G** Opt Grid4
! PAL2
* xyz 0 1
C  -0.56591643   -0.41685185    0.00007236
C   0.83548351   -0.41692196    0.00050137
C   1.53624443    0.79669073   -0.00006381
C   0.83560543    2.01037354   -0.00105877
C  -0.56579451    2.01044365   -0.00148574
C  -1.26655543    0.79683096   -0.00092082
H  -1.10096295   -1.34347207    0.00050287
H   1.37043694   -1.34359572    0.00125995
H   2.60624438    0.79663719    0.00026331
H   1.37065195    2.93699376   -0.00149182
H  -1.10074794    2.93711741   -0.00224291
H  -2.33655538    0.79688450   -0.00124699
*  
注意:文件中第3行,这里如果没有这行,就是单核计算,如果是PAL2、PAL3直到PAL8,就是采用对应的CPU进行并行计算,详情请参见Orca用户手册第23页。文件中采用的是闭壳层,B3LYP泛函,6-311G(d,p)基组,对一个苯环进行的DFT优化计算,计算的mulliken电荷结果四种计算方式结果一致,并且和采用高斯计算的结果基本一致:
Gaussian计算结果和Orca各计算方式结果对比
元素
    Gaussian     NonPAL       PAL2        PAL3       PAL4
C  -0.0944      -0.0945      -0.0945    -0.0945    -0.0945
C  -0.0944      -0.0945      -0.0945    -0.0945    -0.0945
C  -0.0945      -0.0946      -0.0946    -0.0946    -0.0946
C  -0.0944      -0.0945      -0.0945    -0.0945    -0.0945
C  -0.0944      -0.0945      -0.0945    -0.0945    -0.0945
C  -0.0945      -0.0946      -0.0946    -0.0946    -0.0946
H   0.0944       0.0945        0.0945     0.0945     0.0945
H   0.0944       0.0945        0.0945     0.0945     0.0945
H   0.0944       0.0945        0.0945     0.0945     0.0945
H   0.0944       0.0945        0.0945     0.0945     0.0945
H   0.0944       0.0945        0.0945     0.0945     0.0945
H   0.0944       0.0945        0.0945     0.0945     0.0945
H   0.0944       0.0945        0.0945     0.0945     0.0945
       同时这里将列出几种运算方式所消耗的时间。
表2 计算时间与CPU个数的关系
CPU核数    计算时间
   1              9分5秒
   2              4分39秒
   3              3分15秒
   4              2分48秒
      可以看出来,采用并行计算,节省的时间还是比较明显的,但是超过两个核后,效果不明显了,这是因为计算的量本身较小,硬盘的读写时间严重拖了后腿,我后来测试一个自身做的计算,单核需要8小时20分钟的任务,采用4核并行,大约只要1小时46分钟,感觉节省的时间比较多了。
      最后需要提示一下,采用并行的Orca,好像不论你路径怎么设置,软链接的Orca执行文件就不能用了,会出错,最安全的方法就是用绝对路径的方式调用Orca的执行文件对输入文件进行运算。
      关于计算机集群的安装使用方法,等待高手来完成了。

[ Last edited by yjcmwgk on 2010-9-9 at 16:30 ]
回复此楼

» 收录本帖的淘贴专辑推荐

模拟计算 Gadget

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pwzhou

铁杆木虫 (正式写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
其实,orca的并行就是安装一个openmpi而已,因为orca本身已经编译好了。
openmpi从源代码编译也比较简单,下载源代码,比如openmpi-1.4.1.tar.bz2
解压:tar xjvf openmpi-1.4.1.tar.bz2 (如果下载的是tar.gz的,则命令改为tar zxvf)
cd openmpi-1.4.1
./configure --prefix=安装目录
make all install
安装完成。

设置环境变量,在PATH和LD_LIBRARY_PATH中分别加入openmpi的bin和lib目录即可。

有一点需要注意,编译openmpi时不要使用intel或者pgi编译器,采用默认的gcc和gfortran就行了,用intel编译器编译的openmpi无法正确使用orca。还有就是看orca网站上的说明,最好选取orca网站指定的版本。

并行时使用orca必须用绝对路径,这是orca说明书里说的。
引用回帖:
Originally posted by ghcacj at 2010-09-09 14:21:08:
Orca是个很不错的量化软件,这个不用多说,跟高斯很像、上手很快、输入输出软件一目了然、计算速度快,这些都是它的优点,但是它也有个Linux软件的通病,就是,如果你不安装mpi类的程序,Orca就没法进行并行计算, ...

2楼2010-09-09 17:54:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ghcacj

荣誉版主 (著名写手)

阿超

优秀版主

引用回帖:
Originally posted by pwzhou at 2010-09-09 17:54:49:
其实,orca的并行就是安装一个openmpi而已,因为orca本身已经编译好了。
openmpi从源代码编译也比较简单,下载源代码,比如openmpi-1.4.1.tar.bz2
解压:tar xjvf openmpi-1.4.1.tar.bz2 (如果下载的是tar.gz的 ...

你说的很对,我当初就是用icc来编译的,所以发现用不起来。
3楼2010-09-09 18:19:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ifmc1234

木虫 (著名写手)

引用回帖:
Originally posted by pwzhou at 2010-09-09 17:54:49:
其实,orca的并行就是安装一个openmpi而已,因为orca本身已经编译好了。
openmpi从源代码编译也比较简单,下载源代码,比如openmpi-1.4.1.tar.bz2
解压:tar xjvf openmpi-1.4.1.tar.bz2 (如果下载的是tar.gz的 ...

这个得顶。
4楼2010-09-12 19:59:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yqzhang6518

金虫 (正式写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
只能分布式并行(使用本地硬盘), 很多集群上的账号都是共享硬盘的, 是没法并行算的! 这个问题折腾了我很长时间, 现在解决了!
5楼2010-09-14 09:21:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ghcacj

荣誉版主 (著名写手)

阿超

优秀版主

引用回帖:
Originally posted by yqzhang6518 at 2010-09-14 09:21:49:
只能分布式并行(使用本地硬盘), 很多集群上的账号都是共享硬盘的, 是没法并行算的! 这个问题折腾了我很长时间, 现在解决了!

请问你是如何解决了?总之Linux上,单机用很容易,并行就麻烦很多。
6楼2010-09-14 09:28:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yqzhang6518

金虫 (正式写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
把每个节点的硬盘挂到你的帐户目录下(需要管理员权限), 在本地硬盘计算! 有的集群不需要挂,只要到其本地硬盘算就行了!
7楼2010-09-14 10:08:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ghcacj

荣誉版主 (著名写手)

阿超

优秀版主

引用回帖:
Originally posted by yqzhang6518 at 2010-09-14 10:08:55:
把每个节点的硬盘挂到你的帐户目录下(需要管理员权限), 在本地硬盘计算! 有的集群不需要挂,只要到其本地硬盘算就行了!

非常感谢,看来你对Orca也比较熟悉了,关于Orca的赝势计算,你做过吗?
8楼2010-09-14 10:13:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qzhaosdu

金虫 (著名写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
留名,感谢!以后备用
Anewday,anewhour,anewminute,anewpeople.
9楼2010-09-14 11:00:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ghcacj

荣誉版主 (著名写手)

阿超

优秀版主

最新的Orca 2.8发布了,抓紧时间研究里面如何计算赝势,这个是我比较关心的。
10楼2010-09-15 09:34:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ghcacj 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[找工作] 药学硕士找不到工作,打算去做科研助理了 +3 pom戴墨镜 2024-06-14 4/200 2024-06-17 10:35 by wangtaotall
[博后之家] 山东大学(青岛)“天然药物生物智造”课题组 招聘“博士后”(年薪20.4-55.6万元) +5 第二种态度 2024-06-11 11/550 2024-06-17 10:08 by 小懂事k
[考博] 34岁读博士晚吗 +28 emitdne 2024-06-13 28/1400 2024-06-17 09:51 by shl2112501
[论文投稿] 审稿人含糊拒稿,还需要回复吗?如何回复? 20+3 BruceChum 2024-06-15 18/900 2024-06-17 07:39 by ou0551
[基金申请] F口信息学部拿面上,大概需要什么样的成果 +5 _奋黎_ 2024-06-16 7/350 2024-06-17 07:22 by yp_nupt
[找工作] 应届大龄土博教职选择,石河子大学和广西大学 10+4 茅山老道士 2024-06-10 34/1700 2024-06-16 22:05 by yugege2009
[基金申请] BO4的YQ答辩通知发布了吗? +6 博学笃行 2024-06-11 6/300 2024-06-15 16:04 by 悲催科研狗
[论文投稿] 投稿时忘记修改一作 +7 gll123456 2024-06-13 11/550 2024-06-15 11:49 by gll123456
[基金申请] 博后基金,以往的结果点不开,怎么回事呢?最后一次机会了,两次都没中前面。 +7 kyukitu 2024-06-14 13/650 2024-06-15 06:46 by 我是王小帅
[食品] 食品博士导师 +6 小李醒yy 2024-06-11 9/450 2024-06-14 23:37 by 小李醒yy
[论文投稿] 审稿问题:为什么荧光激发波长和紫外吸收波长差的大? 10+4 sdawege 2024-06-14 8/400 2024-06-14 22:39 by 东北读书人
[基金申请] 工材E口JQ有消息了吗 +4 babyduck 2024-06-11 4/200 2024-06-14 17:23 by firepick
[硕博家园] 关于硕博连读的一些疑问? +4 Lwenter 2024-06-14 4/200 2024-06-14 14:32 by ou0551
[基金申请] 国自然基金公布的时候基金号有吗 +8 潇洒怡惜 2024-06-13 11/550 2024-06-14 11:24 by JRfei
[论文投稿] 投稿kbs被拒后,系统提供的推荐的其他期刊有用吗? +3 chenrui2015 2024-06-10 3/150 2024-06-14 10:30 by Tr.sjx1997
[硕博家园] 科研求助 +5 杲www 2024-06-12 6/300 2024-06-13 16:16 by 姓李名明
[考博] 博导选择 +3 bing85977 2024-06-12 3/150 2024-06-13 15:34 by 我是邱尧
[硕博家园] 考博应该从哪里开始准备 +6 亮姐2019 2024-06-11 8/400 2024-06-13 12:53 by 帕秋莉GO
[论文投稿] 摩擦磨损论文投稿 +3 jmysan 2024-06-12 3/150 2024-06-13 08:36 by 莱茵润色
[硕博家园] 申博 +3 悦悦小小鱼 2024-06-12 3/150 2024-06-12 15:11 by chen5805
信息提示
请填处理意见