LAB SERVER

CPU서버 IP

mu

rho

GPU서버 IP

C3PO

C3PO2 (P100)

서버사용 TIP

/mifs/(user_id) 에서 돌리기

본인의 환경 변수 설정 확인

>인텔 컴파일러와 mpi를 사용한다면, 인텔 컴파일러와 mpi 로딩과정에서 모두 자동으로 설정됨.

서버 전체 저장공간 사용량 확인

개별 서버 저장공간 사용량 확인 (반드시 자주 확인할 것)

VASP COMPILATIONS

환경변수 설정

환경변수를 설정하는 경우에는 기존에 설정된 것과 충돌이 일어나지 않도록 반드시 주석처리를 하고, 기존에 사용하던 프로그램들이 무엇으로 컴파일하였는지 반드시 기억해둘 것

Intel compiler 2019 사용할 경우,

1. mu와 rho에서 개인 환경 설정

환경 설정 경로

/mifs/(user_id)/tcshrc/tcshrc.mu.env

/mifs/(user_id)/tcshrc/tcshrc.rho.env

기존에 존재하는 아래 라인들을 주석 처리 (각 라인 맨 앞에 #을 추가하는 것을 주석 처리한다고 함)

source /opt/intel/bin/compilervars.csh intel64

source /opt/intel/mkl/bin/mklvars.csh intel64

source /opt/intel/impi/2017.1.132/bin64/mpivars.csh

2. 이후 아래 라인을 추가

source /opt/intel/parallel_studio_xe_2019_update5/compilers_and_libraries_2019/linux/bin/compilervars.csh intel64

source /opt/intel/parallel_studio_xe_2019_update5/compilers_and_libraries_2019.5.281/linux/mkl/bin/mklvars.csh intel64

source /opt/intel/parallel_studio_xe_2019_update5/compilers_and_libraries_2019.5.281/linux/mpi/intel64/bin/mpivars.csh

setenv MPICH_HOME /opt/intel/parallel_studio_xe_2019_update5/compilers_and_libraries_2019.5.281/linux/mpi (이와 유사한 이전 버전이 있으면 주석 처리할 것!)

VASP 5.3.5 with CPU option
VASP 5.4.4 (includes VASP-sol, BEEF-functional) with CPU options

ASE-VASP SCRIPTS

ase 를 통해 vasp을 실행하는 스크립트로 기존 ase에 존재하는 다양한 기능들을 함께 사용할 수 있다는 장점이 존재함.

연구실외 자료 ase_vasp_scripts-V.2019.12.08 참고 (추가적인 기능들은 ase홈페이지를 참고하여 수정하면 사용 가능)

추가로 pymatgen을 통해서도 vasp input을 설정할 수 있음.

http://kitchingroup.cheme.cmu.edu/dft-book/dft.html#orgheadline42
기본적인 계산 방법들이 잘 정리되어있으므로, 처음 VASP에 익숙해지기 전 또는 계산 방법에 대해 궁금할 때 참고하면 좋음.

PYSCF INSTALLATION

Install Python based version PySCF

pip install pyscf   # base package

Install other useful wrappers

git clone https://github.com/pyscf/mpi4pyscf/  # mpi wrapper

cd mpi4pyscf

pip install .

pip install -U pyberny # geometric optimizer

Testing in Python shell

from pyscf import gto # gaussian basis

from mpi4pyscf import dft # method

from pyscf.geomopt.berny_solver import optimize

# Calculation set up

basis = ‘6-31g*’

xc = ‘b3lyp’

spin = 0  # 0 -> Singlet. 1 -> doublet. 2 -> triplet

charge = 0

# build molecule

mol = gto.M(atom=’H  0  0  0; F  0.9  0  0′, basis=basis,spin=spin,charge=charge)

# set up calculator

mf = dft.RKS(mol)

mf.xc = xc

# optimize

mol_eq = optimize(mf)

print(mol_eq.atom_coords())

Installing mkl optimizing PyScf (based on mu)

The environment set up is:

source /opt/intel/parallel_studio_xe_2019_update5/compilers_and_libraries_2019/linux/bin/compilervars.csh intel64

source /opt/intel/parallel_studio_xe_2019_update5/compilers_and_libraries_2019.5.281/linux/mkl/bin/mklvars.csh intel64

source /opt/intel/parallel_studio_xe_2019_update5/compilers_and_libraries_2019.5.281/linux/mpi/intel64/bin/mpivars.csh

setenv MPICH_HOME /opt/intel/parallel_studio_xe_2019_update5/compilers_and_libraries_2019.5.281/linux/mpi

setenv PATH $MPICH_HOME/intel64/bin:$PATH

setenv LD_LIBRARY_PATH $MPICH_HOME/intel64/lib:/usr/lib64:$MPICH_HOME/intel64/include:$LD_LIBRARY_PATH

setenv LD_PRELOAD libmkl_core.so:libmkl_sequential.so:libmkl_intel_lp64.so:libmkl_avx2.so

Download

git clone https://github.com/sunqm/pyscf

cd pyscf/pyscf/lib

Change integral library to more optimal one. Change following line in CMakeLists.txt

GIT_REPOSITORY https://github.com/sunqm/libcint.git

to

GIT_REPOSITORY https://github.com/sunqm/qcint.git

Complie.

mkdir build

cd build

cmake -DBLA_VENDOR=Intel10_64lp_seq ..

make

Add to Python PATH

setenv PYTHONPATH “/XXXX/pyscf:$PYTHONPATH”

The performance boost for mkl vs non-mkl isn’t too large at least for small system.

But calculation speed of PySCF in mu is comparable to Q-Chem in kdft.