Das SLURM-Shell-Skript
Auf dem Hochleistungsrechner CHEOPS des RRZK wird die Verteilung der Aufträge über die Simple Linux Utility for Resource Management (SLURM) verwaltet.
Das SLURM wird über ein Shell-Skript (gegebenfalls mit dem Suffix .sh) addressiert, welches in zwei Bereiche unterteilt ist: den Header mit dem Prefix # und den Body ohne Prefix.
Ein Beispiel für ein Shell-Skript für eine Gaussian 09-Rechnung:
#!/bin/bash -l
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=2
#SBATCH --mem=2gb
#SBATCH --time=02:00:00
#SBATCH --account=UniKoeln
source ~/bashrc
module load gaussian09/g09.E01
/usr/bin/time -p g09 < input.com >& output.log
Im Header stehen die für das SLURM wichtige Informationen.
Eintrag | Bedeutung |
---|---|
#SBATCH --nodes=2 | Bestimmt die Anzahl der Knoten (nodes). |
#SBATCH --ntasks-per-node=2 | Bestimmt die Anzahl der Prozessoren (tasks) pro Knoten (ppn). |
#SBATCH --mem=2gb | Gibt den Arbeitsspeicher an. Dieser sollte immer 10% und mindestens 50 MB höher sein als der in der Gaussian 09-Inputdatei angegebene Speicher. |
#SBATCH --time=02:00:00 | Gibt die Zeit in Stunde:Minute:Sekunde an, die das PBS der Rechnung zur Verfügung stellt. |
#SBATCH --account=UniKoeln | Legt den Benutzenden fest. Sollte für Sie kein Projektname festgelegt sein ist dieser UniKoeln. |
Weitere Befehle für das SLURM-Skript finden Sie im Handbuch.
Im Body stehen für die Befehle, die für das Ausführen von Gaussian 09 nötig sind.
Eintrag | Bedeutung |
---|---|
module load gaussian09 | Lädt alle für benötigten Gaussian 09 Pfadabhängigkeiten. |
/usr/bin/time -p g09 < input.com >& output.log | Führt eine Gaussian-Rechnung mit der Datei input.com durch und gibt die Ergebnisdatei output.log aus. /usr/bin/time ist dabei nicht notwendig, bietet aber Informationen über die Laufzeit. |
Weitere Befehle für Gaussian 09 finden Sie im Handbuch zum Programm.
Aktuell:
Informationen zu Tools für kollaboratives Arbeiten im Homeoffice
Kontakt
Bei Fragen und für individuellen Support wenden Sie sich bitte an den
RRZK-Helpdesk