Αρχική σελίδα » Τεχνική Υποστήριξη » Εκτέλεση προγραμμάτων » Σύστημα ουρών SLURM στο geocluster

Σύστημα ουρών SLURM- Geo cluster

Για να εκτελέσουμε τα προγράμματά μας στο geocluster προχωρούμε στα εξής βήματα:

Κάνουμε login στην μηχανή 195.134.68.21 μέσω κάποιου τοπικού προγράμματος SSH. Tέτοια προγράμματα είναι το putty, το ΜobaXterm κλπ.  Στο μηχάνημά μας είναι SSH port=65322.

Ο χρήστης αναπτύσσει στην login (front-end) μηχανή τα προγράμματά του και χρησιμοποιεί τους διαθέσιμους μεταφραστές gcc/c++,  gfortran, intel fortran και mpicc (MPI για παράλληλη επεξεργασία). 

Αφού δημιουργηθεί το εκτελέσιμο πρόγραμμα, αυτό υποβάλεται για εκτέλεση σε ένα απο τα μηχανήματα node01, node02 (που είναι οι υπολογιστικοί κόμβοι του cluster), μέσω του συστήματος ουρών  SLURM

Ομοίως αυτό ισχύει και τα για έτοιμα λογισμικά Matlab, R ,.. που είναι ήδη εγκατεστημένα

Παρακάτω παρουσιάζονται παραδείγματα για τις εντολές srun, sbatch

To srun τρέχει κατευθείαν την εντολή, Interactively  π.χ

srun -N 1 -l "/users/giannis/myprog"

παράδειγμα με παραλληλία - τρέχουμε σε 2 μηχανήματα 10 εκτελέσεις με 2 cores για καθε εκτέλεση

srun   --nodes=2 --ntasks 10 --cpus-per-task 2 --pty --export=ALL --mem=1G --time=01:00:00  "/bin/hostname"


Το sbatch υποβάλει ένα script, το αποτέλεσμα το παίρνουμε σε αρχείο

sbatch  myscript.script

παραδειγμα script :

#!/bin/bash
#SBATCH --nodes=1
#SBATCH --time=4:00:00
#SBATCH --job-name=MyJobName
#SBATCH --partition=geoall
/users/giannis/myprog    

παραδειγμα script για παράλληλους υπολογισμούς :

#!/bin/bash
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=8
#SBATCH --cpus-per-task=1
#SBATCH --time=4:00:00
#SBATCH --job-name=MyJobName
#SBATCH --partition=geoall
/users/giannis/myprog

Mε την εντολή squeue βλέπετε τις δουλειές / jobs που εκτελούνται ή περιμένουν στις ουρές. Με την εντολή scancel <jobid> διακόπτεται μια εργασία

Μια συνοπτική λιστα για slurm commands μπορείτε να βρείτε :

https://bioinformaticsworkbook.org/Appendix/HPC/SLURM/slurm-cheatsheat.html#gsc.tab=0