Una interfaz de usuario basada en texto (TUI) para Slurm Workload Manager, que proporciona una forma conveniente de administrar sus trabajos de clúster.
turm
acepta las mismas opciones que squeue
(ver Squreuee Man). Use turm --help
para obtener una lista de todas las opciones disponibles.
turm
está disponible en pypi y cajas.io:
# 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/
La página de lanzamiento también contiene binarios precompilados para Linux.
En su .bashrc
, agregue la siguiente línea:
eval " $( turm completion bash ) "
En su .zshrc
, agregue la siguiente línea:
eval " $( turm completion zsh ) "
En su config.fish
o en un archivo completions/turm.fish
por separado, agregue la siguiente línea:
turm completion fish | source
turm
obtiene información sobre los trabajos analizando la producción de squeue
. La razón de esto es que squeue
está disponible en todos los grupos Slurm, y ejecutarlo periódicamente no es demasiado costoso para el controlador Slurm (particularmente cuando el usuario se filtra). Por el contrario, la API C de SLURM es inestable, y la API REST de SLURM no siempre está disponible y puede ser costoso para el controlador SLURM. Otra ventaja es que obtenemos soporte gratuito para las mismas banderas de CLI que squeue
, con las que los usuarios ya están familiarizados, para filtrar y clasificar los trabajos.
Tl; dr: turm
≈ watch -n2 squeue
+ tail -f slurm-log.out
Se ha tenido especial cuidado para garantizar que turm
sea lo más ligera posible en términos de su impacto en el controlador Slurm y sus operaciones de E/S de archivos. La cola de trabajo se actualiza cada dos segundos ejecutando squeue
. Cuando hay muchos trabajos en la cola, es aconsejable especificar un solo usuario para reducir la carga en el controlador Slurm (ver Squreuee -User). turm
actualiza el archivo de registro que se muestra actualmente en cada notificación de modificación de inotify, y solo lee las líneas recién agregadas después de la lectura inicial. Sin embargo, dado que las notificaciones inotify no son compatibles con los sistemas de archivos remotos, como el NFS, turm
también encuesta el archivo para bytes recién agregados cada dos segundos.