背景
前两天购买了服务器,AMD 7551 32*2 64 cores,512G ,RTX 3090 GPU,配了centos7.4系统。现在开始着手安装VASP计算用的各种配置
anaconda
直接去官网 https://www.anaconda.com/products/individual 页面拉到底,选择安装linux版本的。
然后下载下来的sh文件放在根目录下,一键安装
sh Anaconda3-2020.11-Linux-x86_64.sh
anaconda安装后会自动修改~/.bashrc,如下,可能不同用户的路径不太一样,这个自己去检查吧!
```bash
#>>> conda initialize >>>
#!! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/lixin/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/home/lixin/anaconda3/etc/profile.d/conda.sh" ]; then
. "/home/lixin/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/home/lixin/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
#<<< conda initialize <<<
测试一下能不能用conda,直接type
conda --help
如果出来一堆说明,就说明能用啦
conda不能用的话,就source一下。
source ~/.bashrc
Intel编译器安装
首先官网下载教育免费版的。注意,用到的邮箱一定要是教育邮箱。
下载地址:https://software.intel.com/en-us/qualify-for-free-software
里面有online_customizable和full的版本,online的小,用online就行。
然后我获得了一个用于安装的序列码,S477-HN8BJLFM。
然后下载了一个压缩包,解压
tar -zxvf parallel_studio_xe_2020_update4_cluster_edition.tgz
然后按照提示步骤安装就行了,我所有的都是选择的默认。
安装完之后配置环境
在/etc/profile文件的末尾添加:
source /opt/intel/bin/compilervars.sh intel64
然后注销,重新登录。
这样impi、mkl、ifort等等一应俱全,就不用安装openmpi了。
检查是否安装完成,可以输入,有显示什么版本就表示安装成功了
ifort -v
注意,后续VASP编译的时候,需要一个libfftw3xf_intel.a,这个是安装intel编译器的时候不会自动生成的,需要进去/opt/intel/mkl/interfaces/fftw3xf下面安装一下,用root用户
make libintel64 compiler=intel
然后就可以啦。
GPU驱动安装
首先type:
lspci | grep -i vga
显示我的显卡信息是nvidia的。
然后去/proc/driver路径下,发现没有任何关于nvidia的驱动。
驱动下载:https://www.nvidia.cn/Download/index.aspx?lang=cn
安装驱动,安装教程参考安装教程。
Cuda安装
Cuda官网:https://developer.nvidia.com/zh-cn/cuda-downloads
AMD用网络下载通道和rpm都容易报错,最好用runfile来安装。
其实这个时候已经没有图形界面了,全是命令行模式,所以安装CUDA打以下几行命令就行了。
sh cuda_11.1.0_455.23.05_linux.run
安装成功后,在/etc/profile加上这两行
export PATH=/opt/intel/compilers_and_libraries_2020.4.304/linux/mpi/intel64/bin:/opt/intel/compilers_and_libraries_2020.4.304/linux/bin/intel64:/usr/local/cuda-11.1/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.1/lib64:$LD_LIBRARY_PATH
然后注销,重新登录。
编译VASP
直接修改makefile.inclue文件
其实就是配一些路径,下面贴一下,作为参考。
# Precompiler options
CPP_OPTIONS= -DHOST=\"LinuxIFC\"\
-DMPI -DMPI_BLOCK=64000 \
-Duse_collective \
-DscaLAPACK \
-DCACHE_SIZE=32000 \
-Davoidalloc \
-Duse_bse_te \
-Dtbdyn \
-Duse_shmem
CPP = fpp -f_com=no -free -w0 $*$(FUFFIX) $*$(SUFFIX) $(CPP_OPTIONS)
FC = mpiifort
FCL = mpiifort -mkl=sequential -lstdc++
FREE = -free -names lowercase
FFLAGS = -assume byterecl -w
OFLAG = -O2
OFLAG_IN = $(OFLAG)
DEBUG = -O0
MKLROOT = /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl
MKL_PATH = $(MKLROOT)/lib/intel64
BLAS =
LAPACK =
BLACS = -lmkl_blacs_intelmpi_lp64
SCALAPACK = $(MKL_PATH)/libmkl_scalapack_lp64.a $(BLACS)
OBJECTS = fftmpiw.o fftmpi_map.o fft3dlib.o fftw3d.o \
$(MKLROOT)/interfaces/fftw3xf/libfftw3xf_intel.a
INCS =-I$(MKLROOT)/include/fftw
LLIBS = $(SCALAPACK) $(LAPACK) $(BLAS)
#OBJECTS_O1 += fft3dfurth.o fftw3d.o fftmpi.o fftmpiw.o
OBJECTS_O1 += 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
# For the parser library
CXX_PARS = icpc
LIBS += parser
LLIBS += -Lparser -lparser -lstdc++
# Normally no need to change this
SRCDIR = ../../src
BINDIR = ../../bin
#================================================
# GPU Stuff
CPP_GPU = -DCUDA_GPU -DRPROMU_CPROJ_OVERLAP -DUSE_PINNED_MEMORY -DCUFFT_MIN=28 -UscaLAPACK
OBJECTS_GPU = fftmpiw.o fftmpi_map.o fft3dlib.o fftw3d_gpu.o fftmpiw_gpu.o \
$(MKLROOT)/interfaces/fftw3xf/libfftw3xf_intel.a
CC = icc
CXX = icpc
CFLAGS = -fPIC -DADD_ -Wall -qopenmp -DMAGMA_WITH_MKL -DMAGMA_SETAFFINITY -DGPUSHMEM=300 -DHAVE_CUBLAS
CUDA_ROOT := /usr/local/cuda-11.1
NVCC := $(CUDA_ROOT)/bin/nvcc -ccbin=icc
CUDA_LIB := -L$(CUDA_ROOT)/lib64 -lnvToolsExt -lcudart -lcuda -lcufft -lcublas
GENCODE_ARCH := -gencode=arch=compute_35,code=\"sm_35,compute_35\" \
-gencode=arch=compute_35,code=\"sm_35,compute_35\" \
# -gencode=arch=compute_60,code=\"sm_60,compute_60\"
MPI_INC=/opt/intel/compilers_and_libraries_2020.4.304/linux/mpi/intel64/include
先安装到这里,反正 VASP已经能用了,后续还有一些其他的的配置,明天再弄。
服务器也init 5切换成图形界面模式了。