Compute-Infrastruktur
GPU-Cluster
Wir betreiben ein GPU-Cluster mit mehreren verschiedenen Compute-Knoten. Studierende sowie Hiwis haben nur Zugriff auf begrenzte Knoten. Mitarbeitende aus den Arbeitsgruppen, welche sich finanziell an dem Cluster beteiligt haben, stehen all Knoten zum Rechnen zur Verfügung. Eine Dokumentation sowie Anleitungen für typische Installationen sind auf der Seite der Dokumentation zu finden.
Compute
Wir betreiben ein paar Rechner, die mit einigen CPU-Kernen und Speicher ausgestattet sind. Diese Rechner laufen unter Netboot und sind für längere Berechnungen ausgelegt.
Über SSH erreicht man einer dieser Rechner aus unserem Netz mit dem Befehl ssh compute.techfak.de
. Von außerhalb kann shell.techfak.de
verwendet werden, um sich dann weiter auf compute
zu verbinden.
Mehrere Maschinen - ein Name
Die Rechner selber haben unterschiedliche Namen, da es mehrere Maschinen sind, die unter dem Namen compute
erreichbar sind. So soll die Last gleichmäßig verteilt werden. Deshalb sollte sich immer nur nach compute
verbunden werden, solange nicht nach bereits laufenden Prozessen geschaut werden muss. Des Weiteren kann es sein, dass manche Maschinen gewartet werden müssen und deshalb nicht erreichbar sind.
Prozesse starten
Du kannst Prozesse einfach starten und dich dann wieder abmelden (z.B. für sehr lange laufende Programme), indem Du mit Tmux arbeitest. (Alternativ mit Screen
).
Beispiel
juser@foobar:$ ssh compute
juser@april:$ tmux #starte tmux zum ersten Mal. Eine normale Shell wird sich öffnen.
juser@april:$
Um mit tmux
zu kommunizieren gibt es einen Escape-Character, normalerweise Strg+B. Damit lassen sich Befehle an tmux
selbst und nicht an das Terminal senden, z.B. Strg+B und dann 'c' um eine weitere Shell zu öffnen, oder Strg+B und dann 's' für eine übersicht der offenen Fenster.
Nun kann das gewünschte Programm gestartet werden.
juser@april: nice mylongrunningscript.sh
Um sich nun abmelden zu können, musst Du Strg+B und dann 'd' drücken. Eine Nachricht wie
[detached (from session 0)]`
wird erscheinen. Nun kannst Du dich ganz normal abmelden und später wiederkommen.
Sich wieder anmelden
Um die Shell, in der Du das Programm laufen hast, wieder zu bekommen verbindest Du dich wieder auf den ursprünglichen Rechner und führst den Befehl tmux a
aus.
juser@foobar:$ ssh april #nur(!) in diesem Fall direkt auf eine der Compute-Maschinen verbinden
juser@april:$ tmux a
juser@april:$ nice mylongrunningscript.sh #Du bekommst die shell in dem Zustand zurück, wie Du sie verlassen hast
Beispielausgabe des Skriptes.
30e23e024rd32
juser@april:$ #Das Programm scheint beendet zu sein
juser@april:$ echo $? #Nachsehen, ob der Exit-Code 0 ist
0
juser@april:$
Alles scheint funktioniert zu haben. Um tmux zu verlassen tippe exit
.
[exited]