A pragmatic TUI for monitoring multi-server NVIDIA GPU utilization
Project description
svtop
svtop is a pragmatic TUI command for monitoring NVIDIA GPU usage across multiple servers.
Design goals inspired by Linus-style pragmatism:
- one job: show GPU health clearly
- simple state storage:
~/.svtop/servers.json+~/.svtop/settings.json - no mystery services, no daemon, no lock-in
Features
- Multi-server polling over SSH
- Real-time TUI table with per-server aggregate rows
- Press
Enterto expand/collapse GPU detail rows for a server - Expanded GPU detail row shows per-card user usage (sorted by usage)
- Press
son a selected server row to open an SSH shell (auto-installs your local public key when using password auth) - Color-coded GPU and temperature severity for quick scanning
- First-run setup flow
- Editable server profiles via
svtop config - Per-server proxy jump chain (different server can use different bastion chain)
- Two auth paths:
- plaintext password
- one-key-copy bootstrap (
copy-key) to install your local SSH public key remotely
Install
pip install svtop
For local development:
pip install -e .
Usage
Run monitor:
svtop
or:
svtop run --interval 2.5
If your network is slower (or via bastion/proxy jump), increase probe timeout:
svtop run --timeout 15
Open configuration menu:
svtop config
List configured servers:
svtop list
When using password auth, pressing s first tries to install your local public key on the remote host, then switches that profile to key auth automatically. If no password is saved, it will ask once in terminal (leave empty to skip), and then continue with normal password login for that session.
When adding/editing a server profile, you can set:
Proxy jump chain (comma-separated user@host[:port])
Examples:
- one bastion:
ops@jump-a - multi-hop chain:
ops@jump-a,core@jump-b:2222
Remote requirements
- SSH access to each server
nvidia-smiavailable inPATH- if
proxy jump chainis used, localsshcommand must be available
Security note
If you choose password auth, the password is stored in plaintext in ~/.svtop/servers.json (mode 600).
Prefer copy-key and SSH key auth for long-term use.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file svtop-0.1.2.tar.gz.
File metadata
- Download URL: svtop-0.1.2.tar.gz
- Upload date:
- Size: 15.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
06b5cfdc740b13f2a73fb1fcb111e92e283641a90d7cfdc1f070c94328426a88
|
|
| MD5 |
484f375734dfcfabe0d2838498932322
|
|
| BLAKE2b-256 |
c638ee75946c2fcca0884ba63d23aaa9575b1e0692e0e5bc1afd1c2243f0a227
|
File details
Details for the file svtop-0.1.2-py3-none-any.whl.
File metadata
- Download URL: svtop-0.1.2-py3-none-any.whl
- Upload date:
- Size: 18.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
371175e5fbb3f1ee40fc05c5c29fd09a9de7cb275c4999df14af1996edfb1aa4
|
|
| MD5 |
8d8be634e64e1be7f9fc7415c53f6fd3
|
|
| BLAKE2b-256 |
38dad9bce6d665e7fd244ae25ad3b8b350cd771106e2ebff5dd0c448db460c7a
|