ALIs
kommt nochVASP - Vienna ab initio simulation package
This document provides an overview to VASP licencees on how to access and use the package on LRZ HPC systems
Introduction
VASP is a package for performing ab-initio 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 and an exact evaluation of the instantaneous electronic ground state at each MD-step using efficient matrix diagonalization schemes and an efficient Pulay mixing.
Please consult the VASP Home page for further details and documentation.
Licensing and Versions
Leibniz Supercomputing Centre has licensed VASP under an installation and maintenance agreement; under this agreement, usage of the software is only allowed for licensed users of VASP. Furthermore, a license of version 4 of VASP does not entitle to use of version 5 - a license upgrade must be procured.
Before using VASP on the LRZ HPC systems, the following steps must be performed:
-
The user applies by contacting LRZ HPC support, providing the following information: name, affiliation (working group), VASP version to be used (4 or 5), license number and the user account(s) under which you access the LRZ systems.
-
LRZ checks back with the VASP team whether the license information is valid.
-
Upon positive feedback, access to the software is given by LRZ.
Installed variants
VTST support is available for some installed versions. The Bader analysis tool is available for all installations.
Version 5.2
The release is available on all SGI Altix systems and the Opteron cluster systems. However, not all combinations of switches for the VASP startup mechanism may be supported; please check with a small example before submitting jobs (unsupported combinations return an error message). This version is presently loaded by default on the cluster systems and SuperMUC.Version 4.6 (legacy)
-
parallel versions of version 4.6 are available for the SGI Altix and ICE systems. Available executables: vasp, vasp_nohalf (the latter built without -DNGZhalf).
-
a parallel version of 4.6 including VTST support (including scripts) is available on HLRB-II and the ICE system. Executable: vasp_vtst.
-
parallel version 4.6 (built without ScaLAPACK) is available on Opteron/EM64T based systems.
This version is loaded by default on HLRB-II.
Usage
Version 5.2
After login to the system or at the beginning of your batch script, please load the appropriate environment module via
module load vasp
To execute vasp, please issue the command
vasp5 [-n <tasks>] [-a] [-s <half|full> ]
The meaning of the command line arguments is:
- -n: The number of MPI tasks for parallel execution. If this is omitted, the serial version is executed.
- -a: If this is specified, the VTST extensions are available.
- -s: If specified with full, no symmetry reduction is performed on the density. By default, the value half is assumed.
Version 4.6
After login to the system, or at the beginning of your batch script, please load the appropriate environment module via
module load vasp/4.6
Subsequently, you can call vasp via
mpirun -np <num_procs> $(which vasp)
or
mpiexec -n <num_procs> $(which vasp)
(the latter form is required on Opteron-based systems or on HLRB-II).
You will need to appropriately modify the batch script examples below by replacing the vasp5 command line by mpirun or mpiexec invocations of the vasp executable.
Example batch scripts
|
Parallel processing (Linux Cluster) |
|
|
SGE jobs |
SLURM jobs |
|---|---|
#!/bin/bash #$-o $HOME/mydir/vasp.out -j y #$-N vasp #$-S /bin/bash #$-l h_rt=24:00:00 #$-pe mpi_8 24 # or uv1 (UV) #$-M wrzlprmft@mydomain . /etc/profile cd mydir # mydir contains input files export OMP_NUM_THREADS=1 module load vasp vasp5 -n $NSLOTS |
#!/bin/bash#SBATCH -o /home/cluster/<group>/<user>/mydir/vasp.%j.out#SBATCH -D /home/cluster/<group>/<user>/mydir#SBATCH -J <job_name>#SBATCH -M mpp1
# or use ice1 for the sgi ICE etc. #SBATCH --ntasks=32
#SBATCH --mail-type=end#SBATCH --mail-user=<email_address>@<domain>#SBATCH --export=NONE#SBATCH --get-user-env#SBATCH --time=24:00:00. /etc/profile.d/modules.sh cd mydir # mydir contains input files
|
|
Parallel processing on SuperMUC with LoadLeveler |
|
#!/bin/bash
#@ wall_clock_limit = 24:00:00
# 24 hours maximum run time #@ job_type = MPICH #@ class = general #@ node = 2 #@ tasks_per_node = 40 #@ initialdir = $(home)/mydir #@ output = job$(jobid).out #@ error = job$(jobid).err #@ notification=always #@ notify_user=erika.mustermann@xyz.de #@ queue . /etc/profile.d/modules.sh
cd $HOME/mydir module load vasp vasp5 -n 80 |
|
Further notes
It is also possible to use an OMP_NUM_THREADS setting of larger than 1 provided that the number of MPI tasks is reduced in proportion. It is however not trivial to set this up correctly, hence we do not recommend doing this; please consult the information available from the MPI document for details on how to handle hybrid execution.
Documentation and Support
A PDF file is available in the subdirectory $VASP_DOC on the systems where VASP is installed.
In case any problems are observed, please contact HPC support via the LRZ Service Desk. Providing test cases with short run times is appreciated.