Περιγραφή¶
CP2K is a quantum chemistry and solid state physics software package that can perform atomistic simulations of solid state, liquid, molecular, periodic, material, crystal, and biological systems.
CP2K 7.1¶
Διαθέσιμες εκδοχές της εφαρμογής στη συστοιχία
Υπάρχουν διαθέσιμες 2 εκδοχές της εφαρμογής CP2K στην έκδοση 7.1:
- μία εκδοχή κατάλληλη για χρήση αποκλειστικά σε CPU (CPU only variant) και
- μία για χρήση σε CPU και GPU (GPU enabled variant).
Παρακάτω δίνονται οδηγίες και παραδείγματα χρήσης για την κάθε εκδοχή ξεχωριστά.
Παράδειγμα χρήσης¶
CPU only variant¶
Δημιουργούμε ένα νέο φάκελο και μεταβαίνουμε εντός αυτού.
# mkdir CP2K-7.1-case
# cd CP2K-7.1-case
Μέσα στο φάκελο τοποθετούμε:
Το script υποβολής της εργασίας έχει τα εξής περιεχόμενα:
CP2K SLURM submission script
#!/bin/bash
#SBATCH --job-name=cp2k
#SBATCH --time=01:00:00
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=20
module load gcc/9.2.0
module load openmpi/3.1.4
module load libint/2.6.0
module load libxsmm/1.14
module load libxc/4.3.2
module load fftw/3.3.8
module load plumed/2.5.0
module load netlib-scalapack/2.0.2
module load openblas/0.3.7
module load cp2k/7.1
srun cp2k.popt H2O-64.inp
Η υποβολή της εργασίας γίνεται με την εντολή sbatch CP2K-7.1-case.sh
ως εξής:
# sbatch CP2K-7.1-case.sh
Παρακολουθούμε με την εντολή squeue
την εξέλιξη της εργασίας.
Eφόσον η εργασία έχει εκκινήσει μπορούμε να ελέγχουμε την πρόοδο της επίλυσης μέσω των αρχείων εξόδου. Π.χ.:
# tail -f slurm-*.out
GPU enabled variant¶
Δημιουργούμε ένα νέο φάκελο και μεταβαίνουμε εντός αυτού.
# mkdir CP2K+CUDA-7.1-case
# cd CP2K+CUDA-7.1-case
Μέσα στο φάκελο τοποθετούμε:
Το script υποβολής της εργασίας έχει τα εξής περιεχόμενα:
CP2K SLURM submission script
#!/bin/bash
#SBATCH --job-name=cp2k+cuda
#SBATCH --time=01:00:00
#SBATCH --nodes=1
#SBATCH --partition=gpu
#SBATCH --gres=gpu:1
module load gcc/8.2.0
module load openmpi/3.1.6
module load libxc/4.3.2
module load libint/2.6.0
module load libxsmm/1.16.1
module load fftw/3.3.8
module load netlib-scalapack/2.1.0
module load cuda/10.1.243
module load zlib/1.2.11
module load gsl/2.5
module load openblas/0.3.10
module load plumed/2.5.4
module load cp2k/7.1
srun cp2k.popt H2O-64.inp
Η υποβολή της εργασίας γίνεται με την εντολή sbatch
ως εξής:
# sbatch CP2K+CUDA-7.1-case.sh
Παρακολουθούμε με την εντολή squeue
την εξέλιξη της εργασίας.
Eφόσον η εργασία έχει εκκινήσει μπορούμε να ελέγχουμε την πρόοδο της επίλυσης μέσω των αρχείων εξόδου. Π.χ.:
# tail -f slurm-*.out
Πληροφορίες εγκατάστασης¶
CPU only variant¶
Για την εγκατάσταση της CPU only εκδοχής εχουν χρησιμοποιηθεί οι εξής μεταγλωττιστές:
gcc/9.2.0
openmpi/3.1.4
Επιπλέον έχουν χρησιμοποιηθεί οι εξής βιβλιοθήκες:
libint/2.6.0
libxsmm/1.14
libxc/4.3.2
fftw/3.3.8
plumed/2.5.0
netlib-scalapack/2.0.2
openblas/0.3.7
GPU enabled variant¶
Για την εγκατάσταση της GPU εκδοχής εχουν χρησιμοποιηθεί οι εξής μεταγλωττιστές:
gcc/8.2.0
openmpi/3.1.6
Επιπλέον βιβλιοθήκες που χρησιμοποιήθηκαν είναι οι εξής:
cuda/10.1.243
libint/2.6.0
libxsmm/1.16.1
libxc/4.3.2
fftw/3.3.8
plumed/2.5.4
netlib-scalapack/2.1.0
openblas/0.3.10
gsl/2.5
Τα παραγόμενα εκτελέσιμα έχουν βελτιστοποιηθεί για εκτέλεση σε κάρτες GPU με
CUDA Compute Capability 6.0
(σειρά Pascal P100).