Quantum Espresso at TACC
Last update: May 29, 2018

Quantum Espresso (QE) is an integrated suite of open-source codes for electronic-structure calculations and materials modeling at the nanoscale. Quantum Espresso (opEn-Source Package for Research in Electronic Structure, Simulation, and Optimization) is based on density-functional theory, plane waves, and pseudopotentials.

The latest QE stable release is installed on Stampede2 and Lonestar 5. Use "module" commands to load the latest installed version by default, and to list all installed versions.

$ module load qe
$ module spider qe

You can find extensive documentation for each QE component in the respective Doc directory, for example:

$ cd $TACC_QE_DIR/PW/Doc     # explore PWscf documentation

Running Quantum Espresso

Quantum Espresso executables have many optional command line arguments described in its user manual. QE users may run with their default settings usually with no problem. QE contains many packages and executables and pw.x is the most popular. We strongly recommend you refer to the QE manual to learn how to construct input files, and learn the correct and optimal way to run your codes.

Sample Job Script: Quantum Espresso on Stampede2

The script below submits a Quantum Espresso job to Stampede2's normal queue (KNL compute nodes), requesting 4 nodes and 256 tasks for a maximum of 4 hours. Refer to the Stampede2's Running Jobs section for more Slurm options. To configure this script for Lonestar 5, vary the "-N" and "-n" directives.

#!/bin/bash 
#SBATCH -J qe                               # define the job name
#SBATCH -o qe.%j.out                        # define stdout & stderr output files 
#SBATCH -e qe.%j.err 
#SBATCH -N 4                                # request 4 nodes 
#SBATCH -n 256                              # 256 total tasks = 64 tasks/node
#SBATCH -p normal                           # submit to "normal" queue 
#SBATCH -t 4:00:00                          # run for 4 hours max 
#SBATCH -A projectname

module load qe/6.2.1                        # setup environment
ibrun pw.x -input qeinput > qe_test.out     # launch job