VASP on Perun¶
The Vienna Ab-initio Simulation Package (VASP) is available for users with valid licences. The Perun cluster currently supports only one VASP licence group:
- vasp6: For users with a VASP 6 licence.
Requesting Access¶
If you have a valid VASP licence version 6, please contact the HPC support team via email or
other channels, stating your licence version. You will be added to the appropriate Unix group
(vasp6) based on your licence.
Available Versions¶
The following VASP versions are currently available for use on the Perun system:
- 6.5.1-foss-2024a
Loading VASP¶
Once you have been added to the appropriate group, you can load the VASP module using the following command:
module load VASP/6.5.1-foss-2024a
If you encounter any issues or need further assistance, please reach out to the HPC support team.
Checkpointing¶
Software package VASP (until 6.5.1) does not have good support for checkpointing. If you want to run a long job we suggest the following approach:
- Run VASP for a short time (e.g., 1 hour) and check if the job is running correctly.
- If the job is running correctly, you can submit a new job with the same input files and increase the walltime.
- Run VASP in a background process and, before the end of the job, gracefully terminate it, e.g.:
#!/bin/bash
#SBATCH --job-name=vasp_checkpoint
#SBATCH --account=<project_id>
#SBATCH --partition=cpu_long
#SBATCH --nodes=1
#SBATCH --ntasks=320
#SBATCH --cpus-per-task=1
#SBATCH --time=24:00:00
mpirun vasp_std & # Ampersand puts the process in the background
PID=$! # Get the process ID of the last background command
sleep 23h # Sleep for 23 hours
echo "Terminating VASP job gracefully"
# LSTOP stops the job at the next ionic step;
# LABORT stops it at the next electronic step.
cat > STOPCAR <<EOF
LSTOP = .TRUE.
LABORT = .TRUE.
EOF
# Wait for the VASP process to finish
wait $PID
echo "VASP job terminated gracefully"