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)
  • Enter open selected job details popup
  • In job details popup:
    • c cancel job
    • h hold job
    • u release job
    • r requeue job
    • Esc close popup

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.2.tar.gz (10.0 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.2-py3-none-any.whl (13.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: slurm_monitor_top-0.1.2.tar.gz
  • Upload date:
  • Size: 10.0 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.2.tar.gz
Algorithm Hash digest
SHA256 82077faba431779771b109a729802936dcb765cbd9731f80633630ee8b581f17
MD5 53bc21f3a235ed7cbe65555a4c880ea9
BLAKE2b-256 df665d0116a5fafce7d5247960180c0fabeceeabed28e570cf375893899bfeee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for slurm_monitor_top-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7895a0dfceef6edb4ed99e19d8b2630e973fada5766c805af7d463a2ae6511be
MD5 3507c2df4a93cc1bafbed06c6a84720d
BLAKE2b-256 bd608bad516c8d659b75e93f0bc4d3011051fd55ca19daa68aa4cf5911944692

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