Skip to main content

htop-like monitor for Slurm jobs

Project description

Slurm htop-style TUI

A terminal dashboard for Slurm clusters, inspired by htop.

Project Links

Screenshot

slurm-top screenshot

Features

  • Live jobs table with interactive sort and filters
  • Live node/server table (CPU and memory totals, reserved, and free)
  • Job statistics split by:
    • all users
    • your jobs
    • other users
  • GPU status under nodes:
    • number of GPU types
    • total GPUs
    • active GPUs (running jobs)
    • reserved GPUs (pending jobs)
  • Auto refresh every 3 seconds

Requirements

  • Python 3.9+
  • Slurm CLI commands available in PATH:
    • squeue
    • sinfo
  • Python packages: see requirements.txt (main dependencies: textual, rich)

Install

Install from PyPI:

pip install slurm-monitor-top

For local development (editable install), create and activate a virtual environment, then:

pip install -e .

Run

With that environment activated:

slurm-top

Alias command also works:

stop

You can still run it directly during development:

python stop.py

Build Package

python -m pip install --upgrade build twine
python -m build
twine check dist/*

Keybindings

  • q quit
  • r refresh
  • s toggle sort-pick mode
  • d asc/desc
  • f owner filter (all, me, others)

Panels

  • Left panel (Jobs)

    • Interactive sorting and filtering (see keybindings)
    • Includes GPU count per job
  • Right panel (Nodes)

    • Uses full right-column height
    • Node state
    • CPU total/allocated/idle
    • Memory:
      • total
      • reserved
      • free
    • Memory is displayed in human-readable units (M, G, T)
    • GPU total per node
  • GPU status (under Nodes)

    • Cluster totals: total / active / reserved / free estimate
    • Per GPU type: total / active / reserved / free estimate
  • Bottom panel (Job statistics)

    • Per owner bucket: all / me / others
    • For running and pending:
      • jobs count
      • GPU sum
      • CPU sum
      • memory sum

Notes

  • Refresh interval is set in stop.py (REFRESH_INTERVAL = 3.0).
  • Some Slurm deployments format memory fields differently; if numbers look off, adjust parsing in stop.py.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

slurm_monitor_top-0.1.0.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

slurm_monitor_top-0.1.0-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file slurm_monitor_top-0.1.0.tar.gz.

File metadata

  • Download URL: slurm_monitor_top-0.1.0.tar.gz
  • Upload date:
  • Size: 7.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.8

File hashes

Hashes for slurm_monitor_top-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8394e0a38eabccaef59bb6e01e489788e34d9ec123b7e428acdda395abf8f570
MD5 678336db2d689962d60d80e7b39c83df
BLAKE2b-256 5c008ddbcf66ee5ba9ed68738310ca9297e839ea941db5eca5d5fc3474e5bc52

See more details on using hashes here.

File details

Details for the file slurm_monitor_top-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for slurm_monitor_top-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 672d66569915bd7b88278115f6506d627ad31411689a542081346759a412116c
MD5 09fe4d52167f021fc375cd3cb2cf2874
BLAKE2b-256 339f0d023aa81b4ad0795efecc60ede8f5c09d7d34153e6660221bdb48933e9d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page