logo资料库

vasp5.3.5并行版安装教程(亲自编写).pdf

第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
第5页 / 共8页
第6页 / 共8页
第7页 / 共8页
第8页 / 共8页
资料共8页,全文预览结束
vasp5.3.5 安装教程 制作者:甄江苏(湘潭大学材料科学与工程学院) 1. 安装 Intel 编译器: 。。。。。。。。 然后添加环境变量,在/etc/profile 文件中最下面插入: source /opt/intel/composer_xe_2015.2.164/bin/ifortvars.sh intel64 source /opt/intel/composer_xe_2015.2.164/mkl/bin/mklvars.sh intel64 然后在终端执行: [root]# source /etc/profile 这里提供的安装包会把其他的 Intel 的组件包括并行编译器也安装上,但是后面 不 用 它 的 mpirun 这 个 命 令 , 而 是 用 mpich 的 mpirun 命 令 , 所 以 进 入 /opt/intel/composer_xe_2015.2.164/文件夹,把文件夹 mpirt 改名,让它的路径失 效,比如改成 mpirt11111。 此外,安装完后后,最好把 licence 文件放到安装目录里,Intel 编译器指定的 license 存放目录之一是/opt/intel/composer_xe_2015.2.164/license/这个文件夹,这个文件 夹要自己新建,然后把 license 文件拷贝进去即可,不然的话,对于共享此软件 的其他节点来说,会找不到 license。 然后进入/opt/intel/composer_xe_2015.2.164/mkl/interfaces/fftw3xf/文件夹,执行: [root]# make libintel64 将会生成一个名为 libfftw3xf_intel.a 的静态库文件,用于后面 vasp 的链接。 2. 安装 openmpi:(openmpi 总是出问题,无法多节点并行,原因不明,所以建 议用后面的 mpich) 进入 openmpi 解压目录,执行: [root]# ./configure --prefix=/opt/openmpi CC=icc CXX=icpc F77=ifort FC=ifort [root]# make all install 然后添加环境变量,在/etc/profile 中添加: export PATH=$PATH:/opt/openmpi/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/openmpi/lib export MANPATH=$MANPATH:/opt/openmpi/share/man
然后在终端执行: [root]# source /etc/profile 3. 安装 mpich3: 将 mpich3 压缩包解压,然后进入,执行: [root]# ./configure --prefix=/opt/mpich3 --enable-fortran=all --enable-cxx F77=ifort FC=ifort FCFLAGS="-O2 -xHost" FFLAGS="-O2 -xHost" \ CC=icc CXX=icpc CFLAGS="-O2 –xHost" CXXFLAGS="-O2 -xHost" \ --enable-threads=multiple --enable-fast=all --enable-mpit-pvars=all [root]# make -j 8 [root]# make install 然后添加环境变量: export PATH=$PATH:/opt/mpich3/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ mpich3/lib 然后在终端执行: [root]# source /etc/profile 注意,安装完并行库(不论是 openmpi 还是 mpich)后,都要设置一下: 在/etc/目录中新建一个名为 mpd.conf 的文本文件,在里面填写上: MPD_SECRETWORD=mr45-j9z 然后保存退出,给这个文件加上权限: [root]# chmod 600 /etc/mpd.conf 4. 安装 vasp(包含 NEB) 将 vasp 的两个压缩包放到一个文件夹中(比如命名为 VASP_Install),并将这两个 压缩包解压,会得到名为 vasp.5.3 和 vasp.5.lib 两个目录,然后进入 vasp.5.lib 文 件夹中,找到名为 makefile.linux_ifc_P4 的文件,打开修改: 将“FC=ifc”改为“FC=ifort”,然后保存退出,并在终端执行: [root]# make -f makefile.linux_ifc_P4 这将会生成一个名为 libdmy.a 的文件 然后编译 vasp 主文件 首先进入网站:http://theory.cm.utexas.edu/vtsttools/download.html
下载两个 VTST 相关的压缩包(下图显示的两个) 然后解压 或者直接在终端执行: svn co http://theory.cm.utexas.edu/svn/vtsttools 这将会直接将这两个文件的解压版本和另外一个 doc 文件夹下载到 linux 本地的 vtsttools 文件夹下 然后将 vtstcode 目录中的所有文件拷贝到 vasp.5.3 目录中,如果有覆盖情况,则 选择覆盖 修改 vasp.5.3 目录中的 main.F 文件,定位到文件中“CHAIN_FORCE”这行,在 “LATT_CUR%A”前面加上“TSIF, ”如图所示:
然后保存退出。 然后将 vasp.5.3 目录中的 makefile.linux_ifc_P4 文件重命名为 makefile,并修改内 容: 这个文件的上半部分是串行的配置,下半部分是并行的配置(但上半部分某些配 置是全局的),我们主要修改下半部分,上半部分有小改动(行号可能和你们的不 一样,但是大概就在那个位置): 将 62, 64, 79 和 98 行用“#”注释掉: 在 108 行后面加上“-heap-arrays 64”,而 123 行的 OFLAG 后面可以修改可以不 修改,就是优化用的。
将 147 行前的“#”去掉,并把这一行最后面的 “-lguide” 改为 “-mkl=sequential”, 然后将 149 行和 182 行用“#”注释掉 将 205 行和 206 行的“#”去掉,并在 206 行后面加上“-mkl=sequential”,然后 将 223, 224, 225 和 226 行的“#”去掉,并在 225 行后面添加一个“\”(注意,斜 杠后面不能有任何字符,要直接换行),然后将 234 和 235 行的“#”去掉,此处 注意,如果采用的是 mpich 版本的并行库,则要把“BLACS=”那行后面改为“- lmkl_blacs_intelmpi_lp64”。最后将 241, 242 和 243 行的“#”去掉(LIB 那部分)。 此外,如果需要计算 spin-orbit coupling (SOC)(自旋-轨道耦合 ),则要把“ - DNGZhalf”这个参数去掉(所以可以编译出两个版本的 vasp)。最后,可以将 CPP 中的-DCACHE_SIZE 的数值改为 12000,貌似会加快计算速度。
将 257 和 258 行的“#”去掉。然后就是修改*.o 文件了,在“chain.o”前面加上 如下图所示的*.o 文件,注意结尾处的“\”字符后面不能有空格,也就是说输入 “\”后就立即回车,到下一行继续输入(但是行的开始处是可以加空格的,为了 美观!)
最后,将下面这里所有的“-lowercase”改成“lowercase”并在前面都加上“-names”, 最后在“(-O3 seems to work)”下面的优化项都改成“-O3”
最后保存退出,然后让终端进入 vasp.5.3 中,执行: [root]# make 如果编译不报错,20 分钟左右就会在此目录中生成一个名叫 vasp 的可执行文件, 我们只需要这个文件,可以把这个文件拷贝到想要拷贝到的地方,如果想要重新 修改 makefile 文件,则修改后要在终端执行: [root]# make clean 以清除先前的文件 测试的话,直接在单个机器上测试就行,可以把编译得到的可执行文件放到某个 目录下,并把三个 CAR 文件和一个 KPOINTS 文件放进来,然后进入非 root 用 户,在此文件夹下执行(8 表示 8 个核): mpirun -n 8 ./vasp 如果顺利运行,则编译成功!!!
分享到:
收藏