Skip to main content

A web interface for monitoring NVIDIA GPUs

Project description

GPUs

PyPI - Downloads GitHub License GitHub commit activity

A real-time web interface for monitoring NVIDIA GPUs.

pip install gpus
gpus start

gpus_demo

Features

  • Real-time monitoring of NVIDIA GPU statistics
  • Clean, modern, responsive web interface
  • Historical utilization graphs
  • Process monitoring
  • Command-line interface
  • Background server mode

Requirements

  • Python 3.6+
  • NVIDIA GPU with installed drivers
  • NVIDIA Management Library (NVML)

Installation

pip install gpus

Usage

Starting the Web Interface

# Start the web interface in the foreground (default port 5000)
gpus

# Specify a different port
gpus --port 8080
# or with the short option
gpus -P 8080

# Specify update interval (in seconds)
gpus --update-interval 2.0
# or with the short option
gpus -U 2.0

# Specify history length (in seconds)
gpus --history-length 600
# or with the short option
gpus -L 600

# Specify history resolution (in seconds)
gpus --history-resolution 1.0
# or with the short option
gpus -R 1.0

Then open your web browser and navigate to http://localhost:5000 (or the port you specified).

Managing Background Server

You can run the server in the background and manage it with subcommands:

# Start the server in the background
gpus start

# Check if the server is running
gpus status

# Stop the background server
gpus stop

The background server uses the same command-line options as the foreground server:

# Start the background server on a specific port
gpus -P 8080 start

Using as a Python Package

from gpus.app import GPUMonitorApp

# Create the application
app = GPUMonitorApp(
    update_interval=2.0,
    history_length=300,
    history_resolution=1.0
)

# Run the application
app.run(host='0.0.0.0', port=5000)

Cloud

GPUs Cloud is a free cloud service that allows you to easily manage your GPUs on-the-go. Remotely monitor your GPUs from anywhere & get notified when your training runs fail (coming soon).

[!WARNING] GPUs Cloud is currently in a limited beta stage. If you want early access (highly unstable), please DM me on X for an invite code. Expect some bugs, limited features, and high downtime.

Getting Started

Sign up for a free account (using Hugging Face login) on the GPUs Cloud website. Enter your invite code and add a device. Then run the following command to login:

gpus cloud login

To start sending GPU metrics to the cloud (in the background), run the following command:

gpus cloud start

To stop sending GPU metrics to the cloud, run the following command:

gpus cloud stop

To check the status of the cloud client, run the following command:

gpus cloud status

To send metrics to the cloud (in the foreground), run the following command:

gpus cloud

To logout of the cloud, run the following command:

gpus cloud logout

Development

Setup Development Environment

# Clone the repository
git clone https://github.com/fakerybakery/gpus
cd gpus

# Create a virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install in development mode
pip install -e .

Debugging

If you encounter issues, please check the logs in the ~/.gpus directory. If the problem persists, please create an issue on GitHub.

Note that GPUs has not been tested on Windows. Use at your own risk.

License

BSD-3-Clause

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

gpus-0.2.0.tar.gz (27.2 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: gpus-0.2.0.tar.gz
  • Upload date:
  • Size: 27.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.5

File hashes

Hashes for gpus-0.2.0.tar.gz
Algorithm Hash digest
SHA256 d48732dc3fb303e7c46385ae6a94043dc322fe9eebf6d0e8321df85187bb5272
MD5 95559eed25f6ed5973f68d2dfdf6ceb4
BLAKE2b-256 6ec145c1e93f6b30c3fe4cea4f07db0551c870d550ad4f78764f398bd1b16a18

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