Skip to main content

GPU cluster monitoring service

Project description

GPU Monitor

GPU Monitor is a browser-based tool for checking GPU usage across multiple servers. Configure your servers, start the web service, and open the page to see GPU memory usage, utilization, and active compute processes.

Preview

GPU Monitor screenshot

What It Is For

  • Check whether GPUs are currently available across multiple servers.
  • View GPU memory usage and utilization.
  • See which users and processes are using GPUs.
  • Keep the last successful data visible when a server is temporarily unreachable.

Requirements

Before using GPU Monitor, make sure you have:

  • Python 3.11 or newer installed.
  • SSH access from this machine to the servers you want to monitor.
  • NVIDIA drivers installed on the target servers.
  • nvidia-smi available on the target servers.

You can verify SSH and GPU access with:

ssh server-a nvidia-smi

Replace server-a with your own SSH host name or server address.

Installation

Install GPU Monitor from PyPI:

python -m pip install gpu-monitor

If python is not the command for your Python environment, replace it with the interpreter you normally use.

Server Configuration

Create a configuration file:

gpu-monitor init -c ./servers.toml

Edit servers.toml and add the servers you want to monitor.

The recommended approach is to keep connection details in your normal SSH config file, such as ~/.ssh/config on Linux/macOS or %USERPROFILE%\.ssh\config on Windows:

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

Then servers.toml only needs the SSH host name:

poll_interval_seconds = 20

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

You can also put connection details directly in servers.toml:

poll_interval_seconds = 20

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

To monitor more servers, add more [[servers]] blocks.

Running

Run GPU Monitor with:

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

Then open this address in your browser:

http://127.0.0.1:8000/

Troubleshooting

No servers appear on the page

Check that the servers.toml passed to -c contains at least one [[servers]] block and that each Host value is spelled correctly.

A server cannot be reached

First test the connection from your terminal:

ssh server-a nvidia-smi

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

Configuration changes do not appear

Restart GPU Monitor after editing servers.toml.

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.2.0.tar.gz (18.6 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.2.0-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: gpu_server_monitor-0.2.0.tar.gz
  • Upload date:
  • Size: 18.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for gpu_server_monitor-0.2.0.tar.gz
Algorithm Hash digest
SHA256 6ddd693bc0609356e37f285906bf2511163839de34a32391256c26ef074da1bc
MD5 d841e00f11212b46716858568a843190
BLAKE2b-256 a5af2b2e84483dcdae5dc917d69683eb32d7dfcfe109255de504b8891836d20d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for gpu_server_monitor-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f305615528b98edc807844e7e2dcd02bc44b17ec7a46a80bd49360c9e9bd70c5
MD5 79448d3b955d85427161cecfe09ca0e8
BLAKE2b-256 cd69d654ec939878d6e5f2d38fcca64c76f7da3426b9e163d79fa76d17619e69

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