slurm-usage
Command to list the current cluster usage per user.
Decision gist · record as of 2026-08-14
Yes, if you operate an HPC cluster with SLURM and need to preserve job metrics beyond the 30-day accounting window. The tool is actively maintained, has low install friction, and solves a real problem for long-term resource analysis. Not relevant for non-SLURM environments or clusters without accounting enabled.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires SLURM with accounting enabled and sacct command access; Python >= 3.10.
- Low friction: pure Python wheel with five well-maintained dependencies (polars, pydantic, pyyaml, rich, typer).
- Repository is active with recent commits; last release was 326 days ago.
License · maintenance · safety
MIT (permissive) — MIT license is permissive; you can use, modify, and distribute this package with minimal restrictions.
last release 2025-09-22 (326 days) · last repo commit 2026-08-10 · 11 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 186,180 downloads/mo, #9,993 on PyPI
Alternatives
Verify before relying
pip install slurm-usage
slurm-usage collect --days 7
slurm-usage analyze --days 7- Whether parallel collection (default 4 workers) scales linearly with cluster size or has practical limits.
- Performance characteristics when analyzing multi-year datasets in Parquet format.
- How incremental processing handles re-collection of jobs in incomplete states across large date ranges.
What it is and what it does
slurm-usage is a command-line tool that captures and archives SLURM job metrics before they expire from the accounting database. It queries sacct in parallel, stores raw and processed data as Parquet files, and computes efficiency metrics (CPU utilization %, memory utilization %, wasted resources) for each job. The tool is designed for long-term analysis of resource usage patterns in HPC clusters, with built-in support for incremental collection, group-based analytics, and node utilization tracking.
The package provides a CLI with commands to collect job data, analyze historical trends, display current cluster usage, and inspect node information. It uses polars for columnar data operations, pydantic for schema validation, and rich for terminal output formatting. Data is organized into raw and processed directories with a completion tracker to avoid re-fetching already-processed dates. The tool is cron-ready and supports multi-threaded parallel collection by default.
Use it for
- Archive SLURM job metrics before the 30-day accounting purge to build a long-term efficiency baseline.
- Analyze per-user and per-group resource consumption trends to identify wasteful job patterns.
- Track node-level CPU and GPU utilization to detect hardware bottlenecks or imbalances.
- Generate automated daily reports of cluster efficiency for capacity planning and billing.
- Post-process collected Parquet data with polars for custom analytics or integration into dashboards.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you operate an HPC cluster with SLURM and need to preserve job metrics beyond the 30-day accounting window.
The tool is actively maintained, has low install friction, and solves a real problem for long-term resource analysis. Not relevant for non-SLURM environments or clusters without accounting enabled.
Install
slurm-usage on PyPI
Before you install
Low friction: pure Python wheel with five well-maintained dependencies (polars, pydantic, pyyaml, rich, typer). Repository is active with recent commits; last release was 326 days ago.
Requires SLURM with accounting enabled and sacct command access; Python >= 3.10.
License in practice
MIT license is permissive; you can use, modify, and distribute this package with minimal restrictions.
Quickstart
pip install slurm-usage
slurm-usage collect --days 7
slurm-usage analyze --days 7
Verify before relying
- Whether parallel collection (default 4 workers) scales linearly with cluster size or has practical limits.
- Performance characteristics when analyzing multi-year datasets in Parquet format.
- How incremental processing handles re-collection of jobs in incomplete states across large date ranges.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 5 packagespolarspydanticpyyamlrichtyper |
| Maintenance | Actively maintained 326 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 186,180 / month, #9,993 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: slurm_usage-3.1.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “slurm job monitoring”
- slurm-usageCollects and preserves SLURM job efficiency metrics in Parquet…
- submititSubmitit wraps Slurm job submission and monitoring, letting you…
- hydra-submitit-launcherIntegrates Hydra configuration framework with Submitit to submit…
Give your agent the search over MCP, or paste the wish link into any chat.
More Monitoring packages
Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.
Provides generated Python code for OpenTelemetry semantic conventions, enabling standardized attribute naming and constant definitions for instrumentation and telemetry collection.
Install it if you are using OpenTelemetry and want to follow semantic conventions correctly.
Provides the reference implementation of the OpenTelemetry API for collecting and exporting traces, metrics, and logs from Python applications.
Provides the abstract API and interfaces for OpenTelemetry instrumentation in Python, defining how to emit traces, metrics, and logs without tying code to a specific SDK implementation.
Exports OpenTelemetry observability data to an OpenTelemetry Collector using Protobuf-encoded messages over HTTP.
Install it if you are using OpenTelemetry in Python and need to send data to a Collector over HTTP.
Provides automatic instrumentation commands and programmatic APIs to inject distributed tracing into Python applications without code changes, detecting and instrumenting packages used by your program.
Install it if you need distributed tracing without code changes and have compatible instrumented packages in your environment.
See also clusterscope · submitit · aws-parallelcluster · dask-jobqueue · cloud-tpu-diagnostics · sparkmeasure · tpu-info · ClusterShell · ml-goodput-measurement · google-cloud-mldiagnostics