Trainings Cluster

Translations: en

Im Kurs nutzen wir das Training Cluster, das ähnlich aufgebaut ist wie das Vulcan Cluster des HLRS. Hier haben wir eine kleine Zusammenstellung unserer Arbeitsumgebung gesammelt.

Module

Die Programme sind mit einem MPI Modul kompiliert, das wir auch immer laden, um die passende Umgebung zur Verfügung haben:

module load mpi/openmpi

Zudem brauchen wir für manche Skripte Python, das ebenfalls über eine Modul zur Verfügung steht:

module load python

Dateisystem

Auf Vulcan wird ein Workspace Mechanismus genutzt um Rechendaten in temporären Verzeichnissen zu speichern. Einen solchen Workspace muss entsprechend jeder für seine Rechnungen anlegen:

ws_allocate cfd 7

Dieses Kommando legt beispielsweise einen persönlichen Workspace für 7 Tage an. Die Liste aller eigenen Workspaces kann man sich mit ws_list anzeigen lassen.

Die Dateien für den Kurs finden sich in /shared/akad-cfd-s/. In den Folien verwenden wir für diesen Pfad die Variable $KURS, es ist deshalb sinnvoll diese Variable im eigenen Profil zu definieren:

echo 'export KURS=/shared/akad-cfd-s' >> $HOME/.bash_profile

Für den eigenen, angelegten Workspace verwenden wir die Variable $MYWS, entsprechend ist es hilfreich auch diese Variable im Profil zu definieren. Insgesamt lässt sich das Vorgehen zum Anlegen des Workspaces so beschreiben:

MYWS=`ws_allocate cfd 7`
echo "export MYWS=$MYWS" >> $HOME/.bash_profile

Queueing

Details zum Queueing System auf Vulcan finden sich im HLRS Wiki.

Auf dem Trainingscluster müssen wir uns die Knoten teilen und das Layout entsprechend im Job konfigurieren, sowie über die smp queue submittieren. Dies wird über PBS Zeilen im Job Skript eingestellt:

#PBS -l select=1:node_type=skl:ncpus=8:mpiprocs=8:mem=20gb
#PBS -q smp

Ein Skript (namens job.pbs zum Beispiel) wird dann, beispielsweise mit folgendem Befehl gestartet:

qsub job.pbs

in das Batchsysem ein. Bei Rechnungen die, über Nacht laufen sollen, verwenden die allgemeine Queue, ohne Reservierung.

Interaktive Jobs lassen sich mit Hilfe folgendes Befehls innerhalb der Reservierung erstellen:

qsub -q smp -I -l select=1:node_type=skl:ncpus=8:mpiprocs=8:mem=20gb,walltime=02:00:00

links

social