Quantum ESPRESSO

Introduction and Licensing

Quantum ESPRESSO (short QE) is an integrated suite of computer codes for electronic-structure calculations and materials modeling at the nano-scale. It is based on density-functional theory, plane waves, and pseudopotentials (both norm-conserving and ultrasoft).

It is freely available to researchers under the terms of the GNU General Public License.

Quantum-ESPRESSO

Usage

Installed Versions

Please use module to check for the installed versions.

> module av quantum-espresso

Please check also the stacks. Different versions might provide different QE versions.

> module sw stack/24.5.0 arch=icelake    # please go sure to use consistent architectures
> module av quantum-espresso

Remark: On CoolMUC-4 (CM4), login and compute node architectures are different. As a result, we provide different stacks (arch variant). This imposes unfortunately some complexity for QE users, because QE might not be installed in all the stack's variants.

Load a Module

Once you chose a version, load the respective module. For instance,

> module load quantum-espresso

loads the default version.

Execution of QE

QE consists of a list of different tools for different purposes. Please check the QE documentation on details, and usage. After loading a QE module, these tools should be in the PATH search path.

> ls $QUANTUM_ESPRESSO_BASE/bin

Using them on login nodes is usually suppressed. Please, use salloc in order to acquire some compute node to interactively work with the tools, and also for testing.

QE Slurm Job Templates for Linux-Cluster and SuperMUC-NG

The simplest (not necessarily most efficient) usage of QE is probably the MPI-only approach, although QE also provides threading (OpenMP) and hybrid (MPI+OpenMP) parallelism.

Linux-Cluster (CM4)SuperMUC-NG
#!/bin/bash
#SBATCH -J qe_job
#SBATCH -o ./%x.%j.%N.out
#SBATCH -D .
#SBATCH --clusters=cm4 
#SBATCH --partition=cm4_tiny 
#SBATCH --qos=cm4_tiny
#SBATCH --ntasks=10
#SBATCH --time=24:00:00  
#SBATCH --get-user-env
#SBATCH --export=NONE

module load slurm_setup
module sw stack/24.4.0 arch=icelake   # can possibly omitted soon
module load quantum-espresso
mpiexec pw.x scf.in

Remark: Intel MPI module is loaded as dependency of the QE module. Furthermore, mpiexec knows
 about the resources through the SBATCH header.

Please note that CM4 offers shared compute nodes.

In case you require the threaded variant, please check the Slurm documentation, or open a ticket
at our Service Desk.

#!/bin/bash 
#SBATCH -J qe_job
#SBATCH -o ./%x.%j.%N.out 
#SBATCH -D .
#SBATCH --partition=<test, micro, general, large or fat>
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=48
#SBATCH --time=24:00:00
#SBATCH --get-user-env
#SBATCH --export=NONE
#SBATCH --account=<your projectID>

module load slurm_setup

module load quantum-espresso  
mpiexec pw.x scf.in

Please note that SuperMUC-NG offers compute nodes only exclusively (non-shared).

In case you require the threaded or hybrid variant, please open a ticket at our
Service Desk.

Further Information