Skip to content

Quantum espresso

Quantum ESPRESSO

Warning

qe/7.6 or superior are currently the only supported Quantum ESPRESSO versions on Merlin7. Those versions are provided through Environment Modules.

Spack Central Modules have been decommissioned, and only Environment Modules are supported. Previous instructions for quantum-espresso/7.4.1, quantum-espresso/7.5, and Spack-based module environments are no longer applicable.

Quantum ESPRESSO is an integrated suite of open-source computer codes for electronic-structure calculations and materials modeling at the nanoscale. It is based on density-functional theory, plane waves, and pseudopotentials.

Licensing terms and conditions

Quantum ESPRESSO is an open initiative developed in collaboration with groups worldwide and coordinated by the Quantum ESPRESSO Foundation. Scientific work performed with Quantum ESPRESSO should explicitly acknowledge the software and cite the main papers. See the Quantum ESPRESSO website for details.

Available version on Merlin7

Use module search qe -a to display available Quantum ESPRESSO-related modules in the current environment.

Note

qe-ocean/3.2.1 is a separate spectroscopy tool and is not an alternative Quantum ESPRESSO release. For Quantum ESPRESSO calculations, use qe/$VERSION.

CPU nodes

Bash Session
$ module search qe -a

Module          Rel.stage  Group  Overlay  Requires
-----------------------------------------------------------------
qe-ocean/3.2.1  unstable   Tools  Alps
qe/7.6          unstable   MPI    Alps     gcc/13.4.0 mpich/5.0.1

Load Quantum ESPRESSO with:

Bash
module purge
module load gcc/13.4.0 mpich/5.0.1 qe/7.6

A100 GPU nodes

Bash Session
$ module search qe -a

Module          Rel.stage  Group  Overlay    Requires
----------------------------------------------------------------------------
qe-ocean/3.2.1  unstable   Tools  Alps
qe/7.6          unstable   MPI    Alps_A100  nvhpc/26.5_cuda_multi mpich/5.0.1

Load Quantum ESPRESSO with:

Bash
module purge
module load nvhpc/26.5_cuda_multi mpich/5.0.1 qe/7.6

Grace Hopper nodes

Bash Session
$ module search qe -a

Module  Rel.stage  Group  Overlay  Requires
-------------------------------------------
qe/7.6  unstable   MPI    Alps

Load Quantum ESPRESSO with:

Bash
module purge
module load qe/7.6

The Grace Hopper module search does not list explicit compiler or MPI prerequisites. The module should therefore be loaded directly and allowed to resolve its configured environment.

Running Quantum ESPRESSO with Slurm

The following examples run pw.x. Replace qe.in and qe.out with the required input and output paths. Adjust resources and parallelization parameters for the calculation.

CPU example

Bash
#!/bin/bash
#SBATCH --job-name=qe
#SBATCH --time=01:00:00
#SBATCH --nodes=1
#SBATCH --ntasks=4
#SBATCH --cpus-per-task=16
#SBATCH --partition=hourly
#SBATCH --output=_scheduler-stdout.txt
#SBATCH --error=_scheduler-stderr.txt

module purge
module load gcc/13.4.0 mpich/5.0.1 qe/7.6

export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK
export OMP_PROC_BIND=spread
export OMP_PLACES=cores

srun pw.x -npool 1 -in qe.in > qe.out

A100 GPU example

Bash
#!/bin/bash
#SBATCH --no-requeue
#SBATCH --job-name=qe
#SBATCH --time=06:00:00
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1
#SBATCH --cpus-per-task=64
#SBATCH --partition=a100-daily
#SBATCH --cluster=gmerlin7
#SBATCH --gpus=1
#SBATCH --hint=nomultithread
#SBATCH --output=_scheduler-stdout.txt
#SBATCH --error=_scheduler-stderr.txt

module purge
module load nvhpc/26.5_cuda_multi mpich/5.0.1 qe/7.6

export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK
export OMP_PROC_BIND=spread
export OMP_PLACES=cores

srun pw.x -npool 1 -in qe.in > qe.out

Grace Hopper GPU example

Bash
#!/bin/bash
#SBATCH --no-requeue
#SBATCH --job-name=qe
#SBATCH --time=06:00:00
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1
#SBATCH --cpus-per-task=64
#SBATCH --partition=gh-daily
#SBATCH --cluster=gmerlin7
#SBATCH --gpus=1
#SBATCH --hint=nomultithread
#SBATCH --output=_scheduler-stdout.txt
#SBATCH --error=_scheduler-stderr.txt

module purge
module load qe/7.6

export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK
export OMP_PROC_BIND=spread
export OMP_PLACES=cores

srun pw.x -npool 1 -in qe.in > qe.out

Developing custom Quantum ESPRESSO builds

The previous development examples relied on Spack Central Modules and have been removed because that module tree is no longer supported. Before creating a custom build, inspect the supported Quantum ESPRESSO environment on the target node type:

Bash
module purge
module load qe/7.6
module show qe/7.6

For CPU builds, use the supported GCC 13.4.0 and MPICH 5.0.1 environment. For A100 builds, use the supported NVHPC 26.5 CUDA multi-version and MPICH 5.0.1 environment. Additional development libraries that are not exposed as supported Environment Modules must be built and maintained in a user or project software stack.

Removed legacy environments

The following legacy instructions are intentionally no longer documented:

  • Quantum ESPRESSO 7.4.1 and 7.5
  • Spack Central Modules and hash-suffixed module names
  • User Spack build instructions based on the retired central Spack environment
  • Q-E-SIRIUS modules that are not present in the current module-search results