CPP_OPTIONS = -DHOST=\"LinuxNVHPC\" -DMPI -Duse_collective -DMPI_BLOCK=8000 \ -DscaLAPACK -DCACHE_SIZE=4000 -Duse_bse_te -Dtbdyn \ -D_OPENACC -DUSENCCL -DUSENCCLP2P FC = mpif90 FCL = mpif90 CC = mpicc CXX = mpicxx
sudo apt install libopenblas-dev libfftw3-dev libscalapack-openmpi-dev Then set makefile.include : vasp 5.4.4 installation
module load intelmpi # or openmpi export I_MPI_F90=ifort Or add -I${MPI_HOME}/include to FFLAGS. Cause: MKL linking order incorrect. Solution: Link sequential MKL libraries in the right order: -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread -lm Error 4: Error: Size of symbol 'some_array' changed (precompiled objects) Cause: Mixed compiler versions or leftover objects. Solution: make veryclean and re-extract from tarball. Error 5: OpenACC not supported (GPU build) Cause: Compiler lacks OpenACC support. NVHPC or GCC with -fopenacc required. Solution: Use NVIDIA HPC SDK exclusively for GPU VASP. Part 6: Post-Installation – Testing and Validation Compilation is only half the battle. You must verify that VASP produces correct results. 6.1 Basic Run Test Create a simple test directory with example inputs (e.g., a silicon bulk calculation). Run with 2-4 MPI processes: Solution: make veryclean and re-extract from tarball
FFLAGS = -O2 -ffree-line-length-none -fopenmp -fallow-argument-mismatch OFLAG = -O2 DEBUG = -O0 -g -fbounds-check Solution: Use NVIDIA HPC SDK exclusively for GPU VASP
LLIBS = -lopenblas -lfftw3 -lscalapack -lmpi LLIBS = -L/usr/lib/x86_64-linux-gnu -lfftw3 -lopenblas -lscalapack
LLIBS = -acc -gpu=cc70 -cudalib=cublas,cusolver,cufft,nccl -lblas -llapack CUDA_ROOT = /opt/cuda