Build
Connect & operate
Design & teams
Start hereScope a build in one callBring a spec, a wireframe, or a paragraph. You leave with an architecture, a timeline, and a number.Book a scoping call
AI software
LLM & data systems
Vibe coding
Ready to ship?Put AI where the work isAgents, RAG, and private LLMs wired into the systems your team already uses — not a chatbot bolted to a homepage.Discuss an AI project
Domain firstWe learn your workflow before we model itRegulated, operational, or high-volume — the constraints belong in the schema, not in a training doc.Talk about your domain
Plan smarterEstimate before you commitCost ranges, scope templates, and the questions we ask in discovery — free, no form.Open the cost calculator
Real conversationsTalk with a technical leadNo SDR, no discovery gauntlet. The person on the call is the one who scopes the build.Book a call
Open-Source Observability · wookayin

gpustat

gpustat is a lightweight command-line tool that displays GPU status and resource usage for NVIDIA GPUs in a human-readable format, similar to nvidia-smi but simpler. It supports colored output, process monitoring, and JSON export, and can be used both as a CLI utility and as a Python library.

Source: GitHub — github.com/wookayin/gpustat
4.4k
GitHub stars
286
Forks
Python
Primary language
MIT
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositorywookayin/gpustat
Ownerwookayin
Primary languagePython
LicenseMIT — OSI-approved
Stars4.4k
Forks286
Open issues29
Latest releasev1.1.1 (2023-08-22)
Last updated2026-05-30
Sourcehttps://github.com/wookayin/gpustat

What gpustat is

Python-based CLI utility that queries NVIDIA GPU metrics via the official nvidia-ml-py binding (NVML). Provides real-time GPU utilization, memory usage, temperature, and process-level monitoring with configurable output formats (colored text, JSON, watch mode). Requires NVIDIA Driver >=450.00 and Python >=3.6.

Quickstart

Get the gpustat source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/wookayin/gpustat.gitcd gpustat# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

GPU resource monitoring in shared clusters

Quick visibility into which users and processes occupy GPU memory/compute on multi-user systems, reducing need to parse verbose nvidia-smi output.

Automated GPU health dashboards

JSON output and Python API enable integration into monitoring stacks (Prometheus, Grafana, custom scripts) for production GPU infrastructure.

Developer workflows on GPU machines

Watch mode (--watch) and compact output format reduce terminal clutter during iterative training/inference development.

Implementation considerations

  • Ensure nvidia-ml-py (>=12.535.108 for gpustat 1.2+) is installed from official PyPI, not the misleadingly named 'pynvml' package.
  • Set CUDA_DEVICE_ORDER=PCI_BUS_ID environment variable if GPU index must match CUDA device numbering in production workloads.
  • For fast repeated queries in high-frequency monitoring, run nvidia-smi daemon (requires root) to reduce CPU overhead per query.
  • Python 3.6+ required; no Python 2.7 support in current versions (1.1+).
  • Output format (color, verbosity, JSON) configurable per-invocation; integrate via shell scripts or Python API for custom workflows.

When to avoid it — and what to weigh

  • AMD GPU environments — Tool is NVIDIA-only; contributors are welcome but no AMD support currently implemented.
  • Systems with very old NVIDIA drivers — Requires Driver >=450.00; older GPUs may be unsupported unless using legacy gpustat versions.
  • Need for enterprise-grade alerting — gpustat is a query tool; complex alerting rules, thresholds, and incident management require external orchestration.
  • Heterogeneous GPU fleets — Designed for homogeneous NVIDIA setups; no built-in multi-vendor or multi-architecture abstraction.

License & commercial use

MIT License. Permissive OSI-approved license; allows use in proprietary and commercial software with attribution.

MIT permits commercial use, modification, and distribution. Attribution required; no warranty provided. Suitable for proprietary internal tools and closed-source commercial products without restriction.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityLow
DEV.co fitStrong
Assessment confidenceHigh
Security considerations

No sensitive data exposure from GPU queries themselves. Tool requires read access to NVIDIA driver and process list; running with elevated privileges (nvidia-smi daemon) may expand attack surface. Input validation (GPU IDs, watch intervals) not detailed in README. User/process name display can leak information in multi-tenant environments; mitigate with --no-processes flag.

Alternatives to consider

nvidia-smi

Official NVIDIA CLI. More verbose and feature-rich; gpustat is a simpler, friendlier front-end for common queries.

py-nvml / nvidia-ml-py

Lower-level Python bindings. Requires more boilerplate code; gpustat provides pre-built queries and formatted output.

Prometheus nvidia-gpu-prometheus-exporter

Enterprise monitoring exporter. Heavier weight; gpustat is lighter for ad-hoc queries and simple dashboards.

Software development agency

Build on gpustat with DEV.co software developers

Install gpustat via pip and integrate GPU health checks into your ML ops, cluster management, or development workflow. MIT licensed for commercial use.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

gpustat FAQ

Can I use this on AMD GPUs?
No, gpustat is NVIDIA-only. AMD support is not implemented; contributions welcome per README.
Does gpustat require root?
No for standard queries. Running nvidia-smi daemon (recommended for high-frequency monitoring) requires root but is optional.
How do I integrate gpustat into my monitoring stack?
Use --json flag for machine-readable output, or call the Python API (gpustat.new_query()) in your agent/script. No built-in Prometheus exporter; integration requires custom wrapper.
What Python versions does gpustat 1.1 support?
Python >= 3.6. Older versions (gpustat < 1.0) support Python 2.7 and 3.4+; check version compatibility docs.

Software development & web development with DEV.co

From first prototype to production, DEV.co delivers custom software development around tools like gpustat. We staff experienced engineers for integrations, web development, and ongoing support across open-source observability and beyond.

Ready to simplify GPU monitoring?

Install gpustat via pip and integrate GPU health checks into your ML ops, cluster management, or development workflow. MIT licensed for commercial use.