You are here

Quantum ESPRESSO

Table of Contents

Introduction

Quantum ESPRESSO is a suite of programs for electronic structure and materials modelling. Among other things, it includes PWscf.

A few points about using Quantum ESPRESSO on various WestGrid systems are given below. Please write to support@westgrid.ca if you have questions about running this software on WestGrid machines.

Like other jobs on WestGrid systems, Quantum ESPRESSO jobs are run by submitting an appropriate script for batch scheduling using the qsub command. See documentation on running batch jobs for more information.

Runnning Quantum ESPRESSO on Bugaboo

On Bugaboo, the most recent ESPRESSO executables in the default PATH. Older versions can be used by loading the corresponding module.

Pseudopotentials are in/usr/local/espresso-pseudopotentials - that directory should be specified using the pseudo_dir specification in the input file.

Examples and documentation are in subdirectories of /usr/local/espresso .

Runnning Quantum ESPRESSO on Grex

On Grex are installed  the recent 5.x versions as well as the previous stable release, version 4.3.2. The codes were compiled with Intel compilers, Open MPI and the Intel Math Kernel Library (MKL). Both versions have the GUI (pwgui program) installed. Version 5.x comes with most if not all optional packages (such as NEB, W90, XSpectra, etc.) included.

The executable paths and shared libraries required to run the code are initialized using module commands for an appropriate Espresso version:

module load espresso/5.2.1

or

module load espresso/4.3.2-1

Note that these ESPRESSO modules load compiler and MPI modules, as well as the Tcl software that is requied for the GUI automatically. On Grex there is no ESPRESSO in the default PATH so it is recommended to use the above mentioned module commands in your scripts. Also note that exectables are not prefixed (i.e., PW is just pw.x , CP is cp.x etc.). For more information on using modules on WestGrid systems, click here. An example PWScf batch script (for ausuf.in benchmark; the input, pseudos and job file can be found at /global/software/espresso-5.2.1-intel14-ompi165/examples/torque ) is here:

#!/bin/bash
#PBS -S /bin/bash
#PBS -l procs=16,pmem=1000mb,walltime=8:00:00
#PBS -r n
#PBS -N ausurf-test
#PBS -m bea
##PBS -M my@emalil
# Adjust the mem and ppn above to match the requirements of your job
# remove -M line in case you dont want notification to spam you, or add real one there
#
cd $PBS_O_WORKDIR
echo Nodes I am on:
cat $PBS_NODEFILE
#
echo "Current working directory is `pwd`"
echo "Running on `hostname`"
#
module load espresso/5.2.1
which pw.x
#
echo "Starting run at: `date`"
#
mpiexec pw.x -in ausurf.in > ausurf.${PBS_JOBID}.out
#
echo "Finished run at: `date`"

 

 

Runnning Quantum ESPRESSO on Lattice and Parallel

Version 5.0.3 of the Quantum ESPRESSO suite of programs has been installed on Lattice and Parallel. The code was compiled with Intel 12.1.4 compilers, Open MPI 1.6.5 and the Intel Math Kernel Library (MKL).  FFTW 3.2.2 libraries are also used.

The full code distribution was installed under /global/software/espresso/espresso503. For documentation, pseudopotentials, tests and examples, please look in subdirectories there. The pwgui program was not built.

A basic bash job script for running Quantum ESPRESSO on Lattice or Parallel is shown below.  Note the use of the module load espresso/5.0.3 to initialize the command PATH and library environment before running ESPRESSO commands.  The module also defines the location of psuedopotential files in the directory specified by the ESPRESSO_PSEUDO environment variable.

#!/bin/bash
#PBS -S /bin/bash

module load espresso/5.0.3

# If necessary, define ESPRESSO_PSEUDO to override
# the location of pseudopotentials defined
# in the module. For example,
# ESPRESSO_PSEUDO=$PBS_O_WORKDIR

PW=`which pw.x`

# Change the name of the input file to match your case
INPUT=./input

cd $PBS_O_WORKDIR
echo "Current working directory is `pwd`"

echo "PBS_NODEFILE is:"
cat $PBS_NODEFILE
NCORES=`/bin/awk 'END {print NR}' $PBS_NODEFILE`
echo "Running on $NCORES cores."

echo "Starting $PW at `date`"
mpiexec -n $NCORES $PW -input $INPUT
echo "Finished with exit code $? at `date`"

Runnning Quantum ESPRESSO on Orcinus

Version 4.1.2 of Quantum ESPRESSO has been built with Intel compilers and Open MPI libraries and installed in /global/software/espresso-4.1.2. Psuedopotentials are available in /global/software/espresso-4.1.2/pseudo . A basic bash job script for running Quantum ESPRESSO on Orcinus is:

#!/bin/bash
#PBS -S /bin/bash

module load intel

PW="/global/software/espresso-4.1.2/bin/pw.x"
export ESPRESSO_PSEUDO="/global/software/espresso-4.1.2/pseudo"

cd $PBS_O_WORKDIR
echo "Current working directory is `pwd`"

echo "PBS_NODEFILE is:"
cat $PBS_NODEFILE
NCORES=`/bin/awk 'END {print NR}' $PBS_NODEFILE`
echo "Running on $NCORES cores."

echo "Starting $PW at `date`"
mpiexec -n $NCORES ${PW} -input ./input
echo "Finished with exit code $? at `date`"

Version 4.3.2

Version 4.3.2 of Quantum ESPRESSO has been built with Intel 12.1 compilers, along with MKL 1.3 and Open MPI 1.4.4 libraries and installed in /global/software/espresso-4.3.2. Psuedopotentials are available in /global/software/espresso-4.3.2/pseudo. Please note that you should use

module load intel-2011

in your script instead of the module load intel that was used with version 4.1.2. Also, not that the binaries in /global/software/espresso-4.3.2/bin have a prefix, qe_, so, for example, instead of pw.x, use qe_pw.x . Here is a sample job script incorporating those features.

#!/bin/bash
#PBS -S /bin/bash

module load intel-2011

PW="/global/software/espresso-4.3.2/bin/qe_pw.x"
export ESPRESSO_PSEUDO="/global/software/espresso-4.3.2/pseudo"

cd $PBS_O_WORKDIR
echo "Current working directory is `pwd`"
echo "PBS_NODEFILE is:"
cat $PBS_NODEFILE

NCORES=`/bin/awk 'END {print NR}' $PBS_NODEFILE`
echo "Running on $NCORES cores."
echo "Starting $PW at `date`"

mpiexec -n $NC ${PW} -input ./input

echo "Finished with exit code $? at `date`"

If using the graphical user interface, pwgui, found in /global/software/espresso-4.3.2/PWgui-4.3, you should initialize your environment using:

module load activeTcl

For More Information

2014-05-21 - Added Lattice/Parallel section.