Eine textbasierte Benutzeroberfläche (TUI) für den Slurm Workload Manager, der eine bequeme Möglichkeit bietet, Ihre Cluster-Jobs zu verwalten.

turm akzeptiert die gleichen Optionen wie squeue (siehe Man Squeue). Verwenden Sie turm --help um eine Liste aller verfügbaren Optionen zu erhalten.
turm ist auf pypi und crate.io erhältlich:
# With pip.
pip install turm
# With pipx.
pipx install turm
# With uv.
uv tool install turm
# With cargo.
cargo install turm
# With wget. Make sure ~/.local/bin is in your $PATH.
wget https://github.com/kabouzeid/turm/releases/latest/download/turm-x86_64-unknown-linux-musl.tar.gz -O - | tar -xz -C ~ /.local/bin/Die Release -Seite enthält auch vorkompilierte Binärdateien für Linux.
Fügen Sie in Ihrem .bashrc die folgende Zeile hinzu:
eval " $( turm completion bash ) " Fügen Sie in Ihrem .zshrc die folgende Zeile hinzu:
eval " $( turm completion zsh ) " Fügen Sie in Ihrer config.fish oder in einer separaten completions/turm.fish -Datei die folgende Zeile hinzu:
turm completion fish | source turm erhält Informationen über Jobs, indem die Ausgabe von squeue analysiert wird. Der Grund dafür ist, dass squeue für alle Slurm -Cluster verfügbar ist und es für den Slurm -Controller regelmäßig nicht allzu teuer ist (insbesondere beim Filtern durch den Benutzer). Im Gegensatz dazu ist die C -API von Slurm instabil, und die REST -API von Slurm ist nicht immer verfügbar und kann für den Slurm -Controller kostspielig sein. Ein weiterer Vorteil besteht darin, dass wir genau die gleichen CLI -Flags wie squeue , mit denen die Benutzer bereits vertraut sind, für das Filtern und Sortieren der Jobs kostenlos erhalten.
TL; DR: turm ≈ watch -n2 squeue + tail -f slurm-log.out
Es wurde besondere Vorsicht genommen, um sicherzustellen, dass turm in Bezug auf die Auswirkungen auf den Slurm -Controller und seine I/A -Operationen der Datei so leicht wie möglich ist. Die Jobwarteschlange wird alle zwei Sekunden durch Ausführen squeue aktualisiert. Wenn es in der Warteschlange viele Jobs gibt, ist es ratsam, einen einzelnen Benutzer anzugeben, um die Last des Slurm -Controllers zu reduzieren (siehe Squeue -Benutzer). turm aktualisiert die aktuell angezeigte Protokolldatei in jeder Inotify -Änderungsbenachrichtigung und liest nur die neu angehängten Zeilen nach der ersten Lektüre. Da jedoch keine Benachrichtigungen für Remotedateisysteme wie NFS unterstützt werden, stellt turm die Datei auch alle zwei Sekunden für neu angehängte Bytes ab.