注:本文是天河2号BIGDATA1区的vasp安装,其他的基金账户和WORK账户万不可使用本教程(需要修改makefile.include内容)
在天河2号上安装vasp时,主要是makefile.include的设置,系统变量啥的什么都不用管;其中的修改内容主要是两部分,一个是MKLROOT,另一个就是INCS,这两部分的内容。
1、首先使用which ifort命令找出ifort路径,然后将这个路径的一部分作为makefile.include中的MKLROOT路径;例如:
which ifort后,出来的路径如下
/BIGDATA1/app/intelcompiler/14.0.2/composer_xe_2013_sp1.2.144/bin/intel64/ifort
然后makefile.include的MKLROOT路径为
/BIGDATA1/app/intelcompiler/14.0.2/composer_xe_2013_sp1.2.144/mkl
2、然后修改INCS部分的内容,改为如下部分
INCS = -I/BIGDATA1/app/fftw/3.3.4-icc-14-double-avx-sse2/include
3、其他需要修改的部分,参考我后面的makefile.include文件,最好和我的一样。
4、最后就可以make all编译即可(如果只需要vasp_std部分,也可以make vasp_std部分编译也好)。
附录:我的makefile.include内容
CPP_OPTIONS= -DMPI -DHOST=\"LinuxIFC\" -DIFC \
-DCACHE_SIZE=8000 -DPGF90 -Davoidalloc \
-DMPI_BLOCK=8000 -DscaLAPACK -Duse_collective \
-DnoAugXCmeta -Duse_bse_te \
-Duse_shmem -Dtbdyn -DRPROMU_DGEMV -DRACCMU_DGEMV
CPP = fpp -f_com=no -free -w0 $*$(FUFFIX) $*$(SUFFIX) $(CPP_OPTIONS)
FC = mpif90
FCL = mpif90 -mkl
FREE = -free -names lowercase
FFLAGS = -assume byterecl -FR -heap-arrays
OFLAG = -O1 -ip
OFLAG_IN = $(OFLAG)
DEBUG = -O0 -FR
MKLROOT =/BIGDATA1/app/intelcompiler/14.0.2/composer_xe_2013_sp1.2.144/mkl
MKL_PATH = $(MKLROOT)/lib/intel64
BLAS =-L$(MKL_PATH) -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread
LAPACK =-L$(MKL_PATH) -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread
BLACS =-L$(MKL_PATH) -lmkl_blacs_intelmpi_lp64 -lmkl_blacs_openmpi_lp64
SCALAPACK = $(MKL_PATH)/libmkl_scalapack_lp64.a $(MKL_PATH)/libmkl_scalapack_ilp64.a $(BLACS)
OBJECTS = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o
INCS = -I/BIGDATA1/app/fftw/3.3.4-icc-14-double-avx-sse2/include
LLIBS = $(SCALAPACK) $(LAPACK) $(BLAS)
OBJECTS_O1 += fft3dfurth.o fftw3d.o fftmpi.o fftmpiw.o
OBJECTS_O2 += fft3dlib.o
# For what used to be vasp.5.lib
CPP_LIB = $(CPP)
FC_LIB = $(FC)
CC_LIB = icc
CFLAGS_LIB = -O
FFLAGS_LIB = -O1
FREE_LIB = $(FREE)
OBJECTS_LIB= linpack_double.o getshmem.o
# Normally no need to change this
SRCDIR = ../../src
BINDIR = ../../bin