PBSPro bietet zur besseren Platzierung der Jobs einige Attribute um auf das Verhalten Einfluss zu nehmen. Jedoch versuchen wir die Anzahl dieser Optionen möglichst gering zu halten, da man sonst schnell durcheinander kommt oder fehlerhafte Anforderungen stellt.

Unterscheidung der Architekturen

Der Scheduler ist so konfiguriert, dass zunächst versucht wird einen Job auf einem der kleinen Knoten (Skylake, 192 GB RAM) laufen zu lassen und nur dann auf die größeren Nodes auszuweichen, wenn ansonsten kein Platz ist (auf Grund von Ressourcenauslastung oder Anforderungen).

Um beim Absenden des Jobs darauf Einfluss zu nehmen, gibt es das Attribut arch, welches folgende Werte kennt:

arch=skylake
arch=icelake

Jobs welche mit arch=skylake abgesendet werden, starten nur auf den entsprechenden Skylake nodes und umgekehrt bei arch=icelake werden nur die Icelakes Nodes verwendet.

Verteilung der Chunks

PBSPro ermöglicht es zu bestimmen, ob die einzelnen Chunks auf demselben Host laufen dürfen oder müssen oder ob ein Knoten exklusiv benötigt wird. Dazu gibt es das Attribut place welches folgende Werte besitzt:

place = free
place = pack
place = scatter
place = vscatter

Wenn der Parameter nicht gesetzt wird, verwendet das Batch-System den Wert free und verteilt die Chunks beliebig über alle Knoten. Bei pack werden alle Chunks auf einen Knoten gelegt. Bei scatter werden alle Chunks auf unterschiedliche Knoten verteilt, was besonders für Netzwerk-Benchmark-Anwendungen interessant ist. Zusätzlich gibt es noch die Option vscatter um die Chunks über vNodes zu verteilen.

Beispiel 1
#PBS -l select=2:ncpus=12:mem=10GB:arch=skylake
#PBS -l place=pack

Konkreten GPU-Typ anfordern

Das Batchsystem erlaubt es einen speziellen GPU-Typ anzufordern. Dazu muss im Select-Statement der Wert accelerator_model gesetzt werden.

Folgende Werte werden derzeit unterstützt:

WertGPU-TypJahrAnzahl
gtx1080tiNvidia GTX 1080 TI2017120
rtx8000Nvidia Quadro RTX 800020204
rtx6000Nvidia Quadro RTX 6000202040
a100Nvidia A100 202056

Max. Walltime für GPU-Jobs

Die maximale Rechenzeit für einen GPU-Job beträgt 47:59:59 !

Beispiel 2: GTX 1080Ti anfordern
#PBS -l select=1:ncpus=2:ngpus=1:accelerator_model=gtx1080ti
Beispiel 3
#PBS -l select=1:ncpus=2:ngpus=4

In Beispiel 3 werden 4 GPUs auf einem Server angefordert

  • Keine Stichwörter