Skip to main content

GPU cluster monitoring service

Project description

GPU Monitor

GPU Monitor is a small browser-based dashboard for checking GPU or NPU usage across SSH-accessible servers. It shows accelerator memory usage, utilization, and active compute users without requiring an agent on the target machines.

Preview

GPU Monitor screenshot

Features

  • Monitor multiple GPU or NPU servers from one page.
  • Show accelerator memory usage, utilization, and active process owners.
  • Refresh automatically and provide a manual Refresh button.
  • Keep the last known accelerator data visible when a server is temporarily unreachable.
  • Update server cards independently, so a slow host does not block the rest of the dashboard.

Requirements

  • Python 3.11 or newer.
  • SSH access from the machine running GPU Monitor to each target server.
  • NVIDIA drivers and nvidia-smi on GPU servers.
  • Ascend npu-smi on NPU servers.

Before configuring GPU Monitor, verify that SSH can run the monitor command:

ssh server-a nvidia-smi
ssh npu-server-a npu-smi info

Installation

Install from PyPI:

python -m pip install gpu-server-monitor

Quick Start

Create a sample configuration file:

gpu-monitor init -c ./config.toml

Edit config.toml, then start the web service:

gpu-monitor run -c ./config.toml -H 127.0.0.1 -p 8000

Open:

http://127.0.0.1:8000/

Configuration

GPU Monitor uses a TOML configuration file.

The recommended setup is to keep SSH connection details in your normal SSH config file:

Host server-a
    HostName 10.0.0.11
    User your_username
    Port 22
    IdentityFile ~/.ssh/id_rsa

Then reference the SSH host name from GPU Monitor:

poll_interval_seconds = 20

[[servers]]
Host = "server-a"

[[servers]]
Host = "npu-server-a"
DeviceType = "npu"

You can also put SSH options directly in the GPU Monitor config:

poll_interval_seconds = 20

[[servers]]
Host = "server-b"
HostName = "10.0.0.12"
User = "your_username"
Port = 22
IdentityFile = "~/.ssh/id_rsa"
ConnectTimeout = 5

Add more [[servers]] blocks to monitor more machines. DeviceType is optional and defaults to gpu; set it to npu for Ascend NPU servers.

poll_interval_seconds controls the automatic refresh interval. Restart GPU Monitor after changing the configuration file.

Troubleshooting

No servers appear

Check that the config file passed to -c contains at least one [[servers]] block.

A server shows stale data or cannot be reached

Test the same host from your terminal:

ssh server-a nvidia-smi
ssh npu-server-a npu-smi info

If that command fails, fix the SSH login, key, port, or network issue first.

Configuration changes do not appear

Restart GPU Monitor after editing the configuration file.

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

gpu_server_monitor-0.4.0.tar.gz (22.4 kB view details)

Uploaded Source

Built Distribution

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

gpu_server_monitor-0.4.0-py3-none-any.whl (19.6 kB view details)

Uploaded Python 3

File details

Details for the file gpu_server_monitor-0.4.0.tar.gz.

File metadata

  • Download URL: gpu_server_monitor-0.4.0.tar.gz
  • Upload date:
  • Size: 22.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for gpu_server_monitor-0.4.0.tar.gz
Algorithm Hash digest
SHA256 d5977f8c9dd885d5c5eeb39ab32532f9bf82ef6f490aa3bae18ba18ac0749963
MD5 fc4f88cbb78e598451535282cb730cb3
BLAKE2b-256 303c78a9b6564144f85ba8eb7d8cb6f1fcaa8ed63f9bf85fca9c1d70e8ca47a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for gpu_server_monitor-0.4.0.tar.gz:

Publisher: publish.yml on NingChenTHU/gpu-monitor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gpu_server_monitor-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for gpu_server_monitor-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 367d8da8a278123aab2171f1466fb7bc388fc3e2e79e569b6691a70db6108206
MD5 5664edfc4bde4db98e086300eb85ef25
BLAKE2b-256 215cd83698dbb63a17b003d0053a8742f77d3b60eec8d18b58a34aeeb3a45af5

See more details on using hashes here.

Provenance

The following attestation bundles were made for gpu_server_monitor-0.4.0-py3-none-any.whl:

Publisher: publish.yml on NingChenTHU/gpu-monitor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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