Uma interface de usuário baseada em texto (TUI) para o Slurm Workload Manager, que fornece uma maneira conveniente de gerenciar seus trabalhos de cluster.
turm
aceita as mesmas opções que squeue
(veja o Homem Squeue). Use turm --help
para obter uma lista de todas as opções disponíveis.
turm
está disponível no Pypi e Crates.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/
A página de liberação também contém binários pré -compilados para o Linux.
No seu .bashrc
, adicione a seguinte linha:
eval " $( turm completion bash ) "
No seu .zshrc
, adicione a seguinte linha:
eval " $( turm completion zsh ) "
No seu config.fish
ou em um arquivo completions/turm.fish
separados, adicione a seguinte linha:
turm completion fish | source
turm
obtém informações sobre trabalhos analisando a produção de squeue
. A razão para isso é que squeue
está disponível em todos os clusters Slurm, e executá -lo periodicamente não é muito caro para o controlador SLURM (principalmente ao filtrar pelo usuário). Por outro lado, a API C de Slurm é instável e a API REST de Slurm nem sempre está disponível e pode ser cara para o controlador Slurm. Outra vantagem é que obtemos suporte gratuito para exatamente as mesmas bandeiras da CLI que squeue
, com o qual os usuários já estão familiarizados, para filtrar e classificar os trabalhos.
Tl; dr: turm
≈ watch -n2 squeue
+ tail -f slurm-log.out
Foi tomado um atendimento especial para garantir que turm
seja o mais leve possível em termos de impacto no controlador SLURM e em suas operações de E/S de arquivo. A fila de empregos é atualizada a cada dois segundos, executando squeue
. Quando há muitos trabalhos na fila, é aconselhável especificar um único usuário para reduzir a carga no controlador SLURM (consulte Squeue -User). turm
atualiza o arquivo de log atualmente exibido em todas as notificações de modificação do INOTIFY e lê apenas as linhas recém -anexadas após a leitura inicial. No entanto, como as notificações de inotificar não são suportadas para sistemas de arquivos remotos, como o NFS, turm
também pesquisou o arquivo para bytes recém -anexados a cada dois segundos.