VASP
VASP is a package for performing quantum-mechanical molecular dynamics (MD) using pseudopotentials and a plane wave basis set. The approach implemented in VASP is based on a finite-temperature local-density approximation (with the free energy as variational quantity) and an exact evaluation of the instantaneous electronic ground state at each MD step using efficient matrix diagonalization schemes and an efficient Pulay mixing.
Access
VASP is available only to HPC Vega users who already have an existing VASP license. In order to gain access to VASP on the HPC Vega cluster it is necessary for every user to send an email to our support team containing your e-mail address to which the license was assigned by VASP Software GmbH and whether it is for VASP version 5 or version 6 (versions are not inherently inclusive). Or in case the license was assigned to you by Material Designs Inc. license provider, inform the support team.
Modules
We provide multiple VASP builds for users. VASP modules add the path to the VASP binaries in your search path and also set a few environment variables. To see what VASP modules are available:
module spider vasp
Output
--------------------
VASP-5:
--------------------
Versions:
VASP-5/VASP-5.4.4-AOCC-AOCL-OMPI
VASP-5/VASP-5.4.4-foss-2020b
VASP-5/VASP-5.4.4-GCC-AOCL-OMPI
VASP-5/VASP-5.4.4-Intel
VASP-5/VASP-5.4.4
--------------------
For detailed information about a specific "VASP-5" package (including how to load the modules) use the module's full name.
Note that names that have a trailing (E) are extensions provided by other modules.
For example:
$ module spider VASP-5/VASP-5.4.4
--------------------
--------------------
VASP-6:
--------------------
Versions:
VASP-6/VASP-6.2.1
VASP-6/VASP-6.3.1-foss2021b
VASP-6/VASP-6.3.1-GCC-AOCL
--------------------
For detailed information about a specific "VASP-6" package (including how to load the modules) use the module's full name.
Note that names that have a trailing (E) are extensions provided by other modules.
For example:
$ module spider VASP-6/VASP-6.3.1-GCC-AOCL
--------------------
After you get access to VASP software on our cluster, you will be able to load VASP modules.
module load VASP-5/VASP-5.4.4
VASP binaries
After the module is loaded, vasp_* commands for calling Vasp binaries will be available in your path.
Each VASP module provides three different binaries:
-
vasp_gam – gamma point only build
-
vasp_ncl – non-collinear spin
-
vasp_std – the standard kpoint binary
You need to choose an appropriate binary to run your job.
Running batch jobs
To run batch jobs, you need to prepare a job script (see examples below) and submit it to the batch system with the sbatch command.
Example 1: Test job
#!/bin/bash
#SBATCH --job-name=vasp-test-1
#SBATCH --nodes=2
#SBATCH --partition=cpu
#SBATCH --ntasks=8
#SBATCH --cpus-per-task=8
#SBATCH --output=foo-out.%j
#SBATCH --error=foo-err.%j
#SBATCH --time=00:10:00
module purge
module load VASP-5
module load numactl #Optional
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK}
mpirun vasp_std
Example 2: Hybrid job
#!/bin/bash
#SBATCH --job-name=vasp-test-2
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=8
#SBATCH --cpus-per-task=2
#SBATCH --partition=cpu
#SBATCH --output=foo-out.%j
#SBATCH --error=foo-err.%j
#SBATCH --time=0:10:00
module load VASP-6/VASP-6.3.1-foss2021b
mpirun vasp_std
Example 3: Single node job
#!/bin/bash
#SBATCH --job-name=vasp-test-3
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=64
#SBATCH --cpus-per-task=1
#SBATCH --hint=nomultithread
#SBATCH --partition=cpu
#SBATCH --output=foo-out.%j
#SBATCH --error=foo-err.%j
#SBATCH --time=0:10:00
module load VASP-6/VASP-6.3.1-foss2021b
export OMP_NUM_THREADS=1
export OMP_PROC_BIND=TRUE
export OMP_PLACES=cores
export I_MPI_PIN_RESPECT_CPUSET=0, I_MPI_PIN_CELL=core, I_MPI_DEBUG=10
mpirun --bind-to core --report-bindings vasp_std