RGM: Rust GPU Monitor
A lightweight GPU monitoring utility built with Rust and egui. Supports NVIDIA (via NVML) and AMD (via sysfs/hwmon, including integrated GPUs). Simple, fast, and reliable.
Features
- Multi-Vendor: Automatically detects and monitors NVIDIA or AMD GPUs.
- iGPU Friendly: Works with AMD integrated GPUs – unavailable sensors gracefully fall back to zero.
- Real-time Plots: GPU utilization, memory, temperature, and power visualised over time.
- Low Overhead: Built in Rust for maximum performance and minimal resource consumption.
Prerequisites
Before you begin, ensure you have the following installed on your system:
- Rust & Cargo: If you don't have them, install them from rust-lang.org.
- GPU Drivers (one of the following):
- NVIDIA: Official NVIDIA drivers installed. Verify with
nvidia-smi. - AMD: The
amdgpukernel driver (included in most Linux kernels). Verify withls /sys/class/drm/card*/device/driverpointing toamdgpu.
- NVIDIA: Official NVIDIA drivers installed. Verify with
Installation
Method 1: Download Binary (Recommended)
Download the latest release for your Linux distribution from the Releases Page.
- Debian/Ubuntu: Download the
.debfile and install: - Fedora/RHEL/openSUSE: Download the
.rpmfile and install: - Other Linux: Download the
.tar.gz, extract it, and run the binary directly.
Method 2: Install from Crates.io
If you have Rust installed, you can install RGM directly from crates.io:
Method 3: Build from Source
-
Clone the repository:
-
Build and install:
Usage
Run the compiled application from your terminal to see the current GPU status.
The application will auto-detect your GPU vendor and display real-time metrics.
Troubleshooting
NVIDIA
Error: libnvidia-ml.so: cannot open shared object file
This occurs when the application cannot find the NVIDIA Management Library (NVML), even if nvidia-smi works correctly.
Solution:
-
Find the NVML library path.
| -
Create a symbolic link.
AMD
Missing metrics (VRAM, fan speed, etc.)
Some AMD integrated GPUs do not expose all sysfs nodes. This is normal – RGM will display 0 for any unavailable metrics.
Permission denied reading sysfs
Running as a regular user should be sufficient for read-only monitoring. If you see permission errors, ensure your user has read access to /sys/class/drm/card*/device/.
License
This project is licensed under either of:
- Apache License, Version 2.0, (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dually licensed as above, without any additional terms or conditions.