24小时热门版块排行榜    

Znn3bq.jpeg
查看: 2400  |  回复: 4
本帖产生 1 个 模拟EPI ,点击这里进行查看

ChemiAndy

木虫 (正式写手)


[交流] 安装贴:Ubuntu 12.04(64) 并行编译CPMD3.15.3 已有4人参与

最近帮一个朋友在一台HPZ810工作站上的Ubuntu.12.04_64 下使用gcc/gfortran 4.4 + openmpi + atlas/fftw3并行编译CPMD3.15.3 成功。总结如下。

【摘要】首先把Ubuntu12.04默认的gcc4.6降到gcc4.4; 安装atlas/fftw数学库; 安装openmpi; 用“LINUX-x86_64-FEDORA-MPI” 配置Makefile文件,然后编译即可;可以用dev-test-suite来测试可靠度和效率。

一般来说intel 编译器生成的可执行文件效率要高,为什么不用intel ifort编译呢?一是因为在Ubuntu下安装intel compiler+openmpi比较费劲,容易出错;另外一个原因是官方CPMD maillist已经明确说了,测试表明cpmd的执行效率与编译器关系不大,与数学库的关系最大。而atlas库是最佳选择之一。
来源:http://www.cpmd.org:81/pipermail/cpmd-list/2012-January/005343.html

1. 把Ubuntu12.04默认的gcc4.6降到gcc4.4
为什么要降?请看: http://www.cnblogs.com/tnxk/archive/2012/07/07/2580731.html
CODE:
sudo apt-get install build-essential gfortran  
//install gcc/gfortran, but v4.6 is the default as installed.
// then install v4.4
sudo apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib gcc-4.4-multilib  gfortran-4.4 gfortran-4.4-multilib

//and set v4.4 as default (改优先级)
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.4 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 50
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.4 100
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 50
sudo update-alternatives --install /usr/bin/cpp cpp-bin /usr/bin/cpp-4.4 100
sudo update-alternatives --install /usr/bin/cpp cpp-bin /usr/bin/cpp-4.6 50
sudo update-alternatives --install /usr/bin/gfortran gfortran /usr/bin/gfortran-4.4 100
sudo update-alternatives --install /usr/bin/gfortran gfortran /usr/bin/gfortran-4.6 50

如果gcc -v 和gfortran -v显示4.4.x即可。

2. 安装atlas/fftw数学库
CODE:
sudo apt-get install libatlas-base-dev libatlas3gf-base

看看是不是安装在了/usr/lib/atlas-base/atlas下,ls一下看看。
CODE:
$ ls/usr/lib/atlas-base/atlas
libblas.a   libblas.so.3gf    liblapack.a   liblapack.so.3gf
libblas.so  libblas.so.3gf.0  liblapack.so  liblapack.so.3gf.0

如果是就好;如果不在这里,看看是否在 /usr/lib64/atlas下,或者其它地方。
记住这个库的位置,待会修改Makefile,你懂的。

3. 安装openmpi
CODE:
sudo apt-get install openmpi-common openmpi-bin openmpi-default-dev openmpi-default-bin

4. 开始编译CPMD

首先到src目录下,然后:
CODE:
./mkconfig.sh LINUX-x86_64-FEDORA-MPI > Makefile

然后修改Makefile,把atlas库的位置添加到其中的LFLAGS中。最后的文件配置部分如下:
CODE:
DEST = .
BIN  = .
FFLAGS = -c  -O2 -fcray-pointer
LFLAGS = -L/usr/lib/atlas-base/atlas -llapack -lblas -lfftw
CFLAGS = -c -O2 -Wall
CPP = /lib/cpp -P -C -traditional
CPPFLAGS = -D__Linux -D__PGI -D__GNU -DFFT_FFTW -DPARALLEL -DMYRINET -DPOINTER8
NOOPT_FLAG =
CC = mpicc
FC = mpif77
LD = mpif77
AR = ar

其中CPPFLAGS中,-DPARALLEL说明要并行,-DPOINTER8表64位,-D__GNU表要用gcc/gfortran,-DFFT_FFTW表要用FFTW优化的快速傅立叶变换库。

然后开始make。不同机型测试表明上述过程work perfectly.


5. 测试

去官网下载 dev-test-suite.tar.gz

然后解压到任一目录,会生成
个Test_Suite文件夹,然后你在Test_Suite同级目录新建两个文件夹:
mkdir COMPILE
mkdir SOURCE
然后把编译好的cpmd.x复制到SOURCE文件夹里
然后cd Test_Suite
bash CPMD_Test_Suite.sh -WFO -mpicmd "mpirun -np 8"
做并行测试
WFO是Test_Suite下的一个文件夹
你还可以测试GO, BO, CP, VIB, PI
如果bash CPMD_Test_Suite.sh -ALL -mpicmd "mpirun -np 8"就是全部测试


测试会有3种情况: PASSED, FAILED, CRASHED

FAILED的话看看 Test_Suite/TS.OUT/Errors.log下,是怎么回事,它一般比较Compare the total energy, final electronic gradients and energy componentsfor a wavefunction optimization using ODIIS with vanderbilt PPS for BLYP functional。比如,总能量的偏差:
CODE:
mean difference (stddev)         :   1.1900e-06 (  1.1900e-06)
mean relative difference (stddev):   1.5064e-07 (  1.5064e-07)

因为 1au (Ryd) = 13.6 eV = 313.76 kcal/mol
而1e-6 au ~ 0.0003kcal/mol,所以这种偏差可以忽略不计,这种FAILED也不用太在意。

如果是CRASH的,说明编译的可执行文件不支持某种计算,比如QMMM计算,或者matadynamics,或者编译失败。

ChemiAndy@百度空间:一花一世界 2012 Montreal.

[ Last edited by ChemiAndy on 2012-8-28 at 20:25 ]

CPMD 3.17.1 新版更新与与ubuntu + gcc4.6 + openmpi并行编译
http://muchong.com/bbs/viewthread.php?tid=6321940

CPMD 4.1并行编译(Ubuntu 14.04/GCC4.6/fftw3)
http://bbs.keinsci.com/forum.php?mod=viewthread&tid=2137
回复此楼

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

我学习计算的一些帖子 模拟软件安装精华淘 CP2K

» 本帖已获得的红花(最新10朵)

» 猜你喜欢

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

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

cenwanglai

荣誉版主 (知名作家)

老和山猥琐派九段

优秀版主

送鲜花一朵
?λ??
2楼2012-08-29 12:17:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xufund

至尊木虫 (知名作家)


小木虫: 金币+0.5, 给个红包,谢谢回帖
学习一下。期待更多资料
3楼2012-08-30 06:22:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hyudlut

铁杆木虫 (正式写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
mark下,回头好好仔仔细细研究一下~
4楼2012-09-06 14:50:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qphll

金虫 (正式写手)

送鲜花一朵
很好,送花。
Life, Love, Laugh.
5楼2013-03-28 11:36:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ChemiAndy 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 280求调剂 +13 wzzz王 2026-04-09 13/650 2026-04-12 00:31 by 勇攀高峰0126
[考研] 344 材料专业 求调剂211 无地域要求 +5 hualkop 2026-04-11 5/250 2026-04-11 23:13 by 852137818
[考研] 求调剂 +11 月@163.com 2026-04-07 13/650 2026-04-11 22:55 by BruceLiu320
[硕博家园] 有没有学校材料专业收跨调(一志愿085410) +6 momo(上岸版) 2026-04-06 9/450 2026-04-11 22:38 by wj165256
[考研] 290调剂生物0860 +17 哇哈哈,。 2026-04-11 19/950 2026-04-11 20:20 by dongdian1
[考研] 270求调剂 +14 杨乐369 2026-04-11 14/700 2026-04-11 20:16 by 蓝云思雨
[考研] 266求调剂,一志愿哈工程电子信息,本科获多项国奖和省奖 +8 lumine1 2026-04-06 8/400 2026-04-11 18:35 by 逆水乘风
[考研] 274求调剂求调剂 +11 Jachenbingoo 2026-04-06 14/700 2026-04-11 11:37 by 紫曦紫棋
[考研] 295分求调剂 +9 ?要上岸? 2026-04-10 9/450 2026-04-11 10:48 by qingpingzhu
[考研] 085404 298分求调剂 +10 呼啦呼啦呼呼呼 2026-04-10 11/550 2026-04-10 16:44 by wangy0907
[论文投稿] mdpi小修rvr时间四五天了 20+3 哈哈high 2026-04-08 5/250 2026-04-10 16:02 by 北京莱茵润色
[考研] 调剂申请086000一志愿西北农林科技大学生物与医药320分-本科齐鲁工业大学 +3 美美女士 2026-04-09 3/150 2026-04-10 10:31 by liuhuiying09
[考研] 085600材料与化工专硕329 求调剂 +24 额cc 2026-04-06 25/1250 2026-04-09 16:01 by wp06
[考研] 323求调剂 +3 林zlu 2026-04-07 4/200 2026-04-07 23:21 by lbsjt
[考研] 0854电子信息319求调剂(接受跨专业调剂) +5 星星不眨眼喽 2026-04-05 6/300 2026-04-07 22:16 by hemengdong
[考研] 一志愿南科大生物学297分,求调剂推荐 +8 Y-yyusx 2026-04-06 9/450 2026-04-07 19:38 by biomichael
[考研] 专硕085403,291分,有两篇专利,一国一奖 +3 哈吉咪哈吉咪 2026-04-07 3/150 2026-04-07 18:21 by 蓝云思雨
[考研] 085100建筑学 寻求跨专业调剂 一志愿南大294分 校级省级国家级奖项若干 踏实肯干 +3 1021075758 2026-04-06 4/200 2026-04-07 09:23 by 蓝云思雨
[考研] 377求调剂 +6 by.ovo 2026-04-05 6/300 2026-04-05 22:18 by dongzh2009
[考研] 308求调剂 +3 终不似从前 2026-04-05 3/150 2026-04-05 20:07 by 啵啵啵0119
信息提示
请填处理意见