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.
- 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.
- Per-Process VRAM (NVIDIA): Which processes are holding your video memory.
- Throttle Reporting (NVIDIA): Why clocks are being held back, and how much of your load time the power limit has cost you so far.
- Low Overhead: No daemon, no root, a single binary.
- Desktop Integration:
.deb/.rpmpackages install an application entry in app launchers (Show Apps).
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
Download the latest release for your Linux distribution from the Releases Page.
- Debian/Ubuntu: Download the
.debfile and install:sudo dpkg -i rgm-ui_*.deb - Fedora/RHEL/openSUSE: Download the
.rpmfile and install:sudo rpm -U rgm_ui-*.rpm - Other Linux: Download the
.tar.gzand extract it; the binary is atrgm/rgminside the archive. Run it from there or copy it into a directory on yourPATH.
If you have Rust installed, you can install RGM directly from crates.io:
cargo install rgm_ui-
Clone the repository:
git clone https://github.com/Neomelt/RGM.git cd RGM -
Build and install:
cargo install --path .
The .deb/.rpm packages and both cargo install methods put the rgm binary on your PATH (the packages also add an app-launcher entry):
rgmFor the portable .tar.gz, run rgm/rgm from the extracted directory instead.
For development from a source checkout, use cargo run --release instead.
The application will auto-detect your GPU vendor and display real-time metrics.
Two flags answer without opening a window, which is what you want from a script:
rgm --version
rgm --helpReleases are not delivered by a package repository yet, so an update is a download plus an install. This checks the signature of what it downloaded and tells you which version you are on first:
rgm --version
cd /tmp && gh release download --repo Neomelt/RGM \
--pattern '*_amd64.deb' --pattern 'SHA256SUMS' --clobber \
&& sha256sum -c --ignore-missing SHA256SUMS \
&& sudo dpkg -i rgm-ui_*_amd64.debSwap the pattern for *.rpm on Fedora/RHEL/openSUSE and dpkg -i for
rpm -U. With Rust installed, cargo install rgm_ui upgrades in place.
This occurs when the application cannot find the NVIDIA Management Library (NVML), even if nvidia-smi works correctly.
Solution:
-
Find the NVML library path.
ldconfig -p | grep libnvidia-ml.so.1 -
Create a symbolic link.
sudo ln -s /lib/x86_64-linux-gnu/libnvidia-ml.so.1 /lib/x86_64-linux-gnu/libnvidia-ml.so
Some AMD integrated GPUs do not expose all sysfs nodes. This is normal – RGM will display 0 for any unavailable metrics.
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/.
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.
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.
