How to compile Quantum ESPRESSO on the University of Washington’s Hyak Klone Supercomputer

Following are simple instructions, derived from notes by Kaichen Xie. These notes are not meant to replace the detailed instructions given in the official Quantum ESPRESSO (QE) User Guide! The official website and mailing list are great resources for troubleshooting!

In the code below, please change variables such as your_username, your_group_name and file names appropriately!

  • Log into Klone:
ssh your_username@klone.hyak.uw.edu
  • Request a compute node (make sure you get enough memory):
srun -A your_group_name -p compute -N 1 --mem=100G --time=1:00:00 --pty bash
  • From the official GitHub page, download the version of QE that you wish to compile (replace the link below accordingly):
wget https://github.com/QEF/q-e/archive/qe-6.6.tar.gz
  • Extract the downloaded archive (replace file name accordingly):
tar -xvf qe-6.6.tar.gz
  • We will use the Intel compiler in this example. Use module avail intel to find the compiler, and then load it:
module load intel/oneAPI/2021.1.1
  • If you wish to compile QE with extra modules (such as HDF5), now is the time to load them.
  • Then, navigate into the extracted folder and run the configuration script, making sure to apply any flags (like --with-scalapack below):
./configure  --enable-parallel  --with-scalapack  --with-hdf5=yes
  • Note that above, ./configure is the only command really necessary. Please see the official User Guide for more information on flags.
  • Once configured, run:
make all
  • If the above step fails, try re-running ./configure with proper settings, and resetting the make stage by running make clean, before running make all again.
  • You have now compiled QE! In subsequent scripts/calculations, please ensure you load the modules you loaded above, and that you call routines (such as pw.x) from the installation path (e.g. /gscratch/your_group_name/your_username/some_folder/q-e-qe-6.7.0/bin/pw.x).
  • Congratulations!

Leave a Comment