Μετάβαση στο περιεχόμενο

Περιγραφή

Quantum Espresso is an integrated suite of Open-Source computer codes for electronic-structure calculations and materials modeling at the nanoscale.

Quantum Espresso 7.2.0

Παράδειγμα χρήσης

Το script υποβολής της εργασίας, έστω QE-7.2.0-case.sh, θα έχει την ακόλουθη μορφή:

SLURM submission script
#!/bin/bash
#SBATCH --job-name=QE-7.2.0-case
#SBATCH --partition=batch
#SBATCH --ntasks=40
#SBATCH --time=20:00

module load intel/2021.5.0-12.2.0 intel-oneapi-mpi/2021.9.0-stjyqgr
module load quantum-espresso/7.2-jnqwg4m

export ESPRESSO_PSEUDO=$PWD

echo "running the geometry relaxation for CO...\c"
echo "Run starts :  `date +'%Y-%m-%d %H:%M:%S:%N '` "
echo "Running Quantum Espresso with" $SLURM_NTASKS "MPI tasks"

time mpiexec pw.x < co.rx.in > output.log

echo "Run ends : `date +'%Y-%m-%d %H:%M:%S:%N '` "

Στο $HOME μας στο login node, δημιουργούμε ένα νέο φάκελο

# mkdir QE-7.2.0-case
# cd QE-7.2.0-case

όπου τοποθετούμε τα παρακάτω αρχεία εισόδου:

Η υποβολή της εργασίας γίνεται με την εντολή sbatch <filename.sh> ως εξής:

# sbatch QE-7.2.0-case.sh

Παρακολουθούμε με την εντολή squeue την εξέλιξη της εργασίας.

Eφόσον η εργασία έχει εκκινήσει μπορούμε να ελέγχουμε την πρόοδο της επίλυσης μέσω των αρχείων εξόδου. Π.χ.:

# tail -f output.log

Πληροφορίες εγκατάστασης

Για την εγκατάσταση έχουν χρησιμοποιηθεί τα εξής λογισμικά:

  • intel/2021.5.0-12.2.0
  • intel-oneapi-mpi/2021.9.0-stjyqgr

Χρήση με THERMO_PW 1.8.1

THERMO PW 1.8.1

Thermo_pw reads the same input as the pw.x code of QE and produces postscript figures of some material properties.

Τα example scripts του thermo_pw μπορούν να χρησιμοποιηθούν στην συστοιχία ακολουθώντας την παρακάτω διαδικασία.

Δημιουργούμε ένα νέο φάκελο, όπου αντιγράφουμε τα examples του thermo_pw τα οποία περιλαμβάνουν τα αρχεία environment_variables και thermo_pw.sh:

# mkdir thermo_pw
# module load intel/2021.5.0-12.2.0 intel-oneapi-mpi/2021.9.0-stjyqgr
# module load quantum-espresso/7.2-jnqwg4m
# cp -r $QUANTUM_ESPRESSO_ROOT/examples thermo_pw_examples

Για να προχωρήσουμε στην υποβολή μίας εργασίας που τρέχει το run_example script του example01 εκτελούμε τις παρακάτω εντολές:

# cd thermo_pw_examples/example01
# sbatch thermo_pw.sh

Eφόσον η εργασία έχει εκκινήσει μπορούμε να ελέγχουμε την πρόοδο της επίλυσης μέσω των αρχείων εξόδου. Π.χ.:

# tail -f output.log

Παλαιότερες εκδόσεις QE + ThermoPW

Εκτός από την έκδοση Quantum Espresso 7.2 και ThermoPW 1.8.1, διατίθενται και οι εξής παλαιότερες εκδόσεις:

Quantum Espresso 7.1.0 και ThermoPW 1.7.1
  • Module files:
    # module load gcc/9.4.0 openmpi/4.1.2-nfk6aky 
    # module load quantum-espresso/7.1-jzwixr3
    
  • Για την εγκατάσταση έχουν χρησιμοποιηθεί τα εξής λογισμικά:
    • gcc/9.4.0
    • openmpi/4.1.2

Παράδειγμα submission script: QE-7.1.0-case.sh:

QE-7.1.0-case.sh
#!/bin/bash

#SBATCH --job-name=QE-7.1.0-case
#SBATCH --partition=batch
#SBATCH --ntasks=40
#SBATCH --time=20:00

module load gcc/9.4.0 openmpi/4.1.2-nfk6aky quantum-espresso/7.1-jzwixr3

export ESPRESSO_PSEUDO=$PWD

echo "running the geometry relaxation for CO...\c"
echo "Run starts :  `date +'%Y-%m-%d %H:%M:%S:%N '` "
echo "Running Quantum Espresso with" $SLURM_NTASKS "MPI tasks"

time srun pw.x < co.rx.in > output.log

echo "Run ends : `date +'%Y-%m-%d %H:%M:%S:%N '` "

Quantum Espresso 6.7.0 και ThermoPW 1.4.1
  • Module files:
    # module load gcc/10.2.0 mvapich2/2.3.4
    # module load quantum-espresso/6.7.0
    
  • Για την εγκατάσταση έχουν χρησιμοποιηθεί οι εξής μεταγλωττιστές:
    • gcc/10.2.0
    • mvapich2/2.3.4
    • openblas/0.3.12
    • netlib-scalapack/2.1.0
    • fftw/3.3.8
  • Για την γραμμική άλγεβρα και τον διακριτό μετασχηματισμό Fourier χρησιμοποιήθηκε η βιβλιοθήκη: intel-mkl-2020.3.279

Παράδειγμα submission script: QE-6.7.0-case.sh

#!/bin/bash
#SBATCH --job-name=QE-6.7.0-case
#SBATCH --partition=batch
#SBATCH --ntasks-per-node=20
#SBATCH --nodes=2
#SBATCH --time=20:00

module load gcc/10.2.0 mvapich2/2.3.4
module load quantum-espresso/6.7.0

export ESPRESSO_PSEUDO=$PWD

echo "running the geometry relaxation for CO...\c"
echo "Run starts :  `date +'%Y-%m-%d %H:%M:%S:%N '` "
echo "Running Quantum Espresso with" $SLURM_NTASKS "MPI tasks"

time srun pw.x < co.rx.in > output.log

echo "Run ends : `date +'%Y-%m-%d %H:%M:%S:%N '` "

Quantum Espresso 7.3.0 (GPU Accelerated)

Παράδειγμα χρήσης

Το script υποβολής της εργασίας, έστω QE-7.3.0-GPU-case.sh, θα έχει την ακόλουθη μορφή:

SLURM submission script
#!/bin/bash

#SBATCH --job-name=QE-7.3.0-GPU-case
#SBATCH --partition=ampere
#SBATCH --time=10:00
#SBATCH --gres=gpu:1        # Select N=1,2,...,8 GPUS
#SBATCH --ntasks=1          # Allocate 1 task per GPU
                            # for optimal performance


module load centos8 nvhpc/23.11 openmpi/4.1.6
module load quantum-espresso/7.3


export ESPRESSO_PSEUDO="${PWD}"

echo "running the geometry relaxation for CO...\c"
echo "Run starts :  `date +'%Y-%m-%d %H:%M:%S:%N '` "
echo "Running Quantum Espresso with" $SLURM_NTASKS "MPI tasks"

# Optional: Disable NVFORTRAN warning
# https://docs.nvidia.com/hpc-sdk/compilers/hpc-compilers-user-guide/index.html#env-vars-nv-no-stop-msg
export NO_STOP_MESSAGE=yes

time srun pw.x < co.rx.in > output.log

echo "Run ends : `date +'%Y-%m-%d %H:%M:%S:%N '` "

Στο $HOME μας στο login node, δημιουργούμε ένα νέο φάκελο

# mkdir QE-7.3.0-GPU
# cd QE-7.3.0-GPU

όπου τοποθετούμε τα παρακάτω αρχεία εισόδου:

Η υποβολή της εργασίας γίνεται με την εντολή sbatch <filename.sh> ως εξής:

# sbatch QE-7.3.0-GPU-case.sh

Παρακολουθούμε με την εντολή squeue την εξέλιξη της εργασίας.

Eφόσον η εργασία έχει εκκινήσει μπορούμε να ελέγχουμε την πρόοδο της επίλυσης μέσω των αρχείων εξόδου. Π.χ.:

# tail -f output.log

Πληροφορίες εγκατάστασης

Για την εγκατάσταση έχουν χρησιμοποιηθεί τα εξής λογισμικά:

  • NVIDIA SDK 23.11 (nvhpc/23.11)
  • CUDA Toolkit 11.8.0 (cuda/11.8.0)
  • OpenMPI 4.1.6 with CUDA support (openmpi/4.1.6)
  • FFTW3 (fftw/3.3.10)

Χρήσιμες πληροφορίες

Το αρχείο εισόδου για αυτό το test case έχει δημιουργηθεί με βάση το παράδειγμα example02 του Quantum Espresso.

Περισσότερα παραδείγματα μπορείτε να βρείτε εδώ.

Αρχεία pseudopotentials μπορείτε να αναζητήσετε εδώ.