A real-time system monitoring application for Windows that tracks GPU, CPU, RAM, PCIe bandwidth, and encoder/decoder utilization with beautiful donut-style gauges.
- GPU: Load percentage, temperature, clock speed, fan RPM
- VRAM: Memory controller utilization percentage
- Decoder: NVIDIA video decoder engine utilization
- Encoder: NVIDIA video encoder engine utilization
- PCIe Bandwidth: TX/RX throughput as % of detected link capacity
- CPU: Load percentage, temperature, clock speed, fan RPM
- RAM: Memory usage and percentage
- Custom donut-style gauges with smooth animations
- Color-coded indicators:
- PCIe: Orange (TX) and Green (RX) dual rings
- Configurable polling intervals (0.1s to 5.0s)
- Export metrics to CSV format
- Timestamped logs saved to
Documents/nvGPUMonitor/ - Start/stop logging on demand
- Last 500 data points displayed
- Newest entries appear at top
- Scrollable history view
- OS: Windows 10/11
- .NET: .NET 9.0 SDK or Runtime
- GPU: NVIDIA GPU with NVML support (optional - app works without GPU)
Prerequisites:
- .NET 9.0 SDK
- Visual Studio 2022 (or any C# IDE)
Build Steps:
# Clone the repository
git clone https://github.com/seatv/nvGPUMonitor.git
cd nvGPUMonitor
# Restore dependencies
dotnet restore nvGPUMonitor.Wpf.csproj
# Build
dotnet build nvGPUMonitor.Wpf.csproj -c Release
# Run
dotnet run --project nvGPUMonitor.Wpf.csproj- Launch nvGPUMonitor
- Gauges update automatically at the configured polling interval
- View real-time metrics for all monitored components
- Click "Start Log" to begin recording metrics
- Data saves to
Documents/nvGPUMonitor/metrics-[timestamp].csv - Click "Stop Log" when done
nvGPUMonitor/
├── Controls/ # Custom WPF controls
│ ├── DonutGauge.* # Single-metric gauge
│ └── DualDonutGauge.* # Dual-metric gauge (PCIe TX/RX)
├── Models/ # Data models
├── Services/ # Business logic
├── Utils/ # Helper utilities (NVML bindings)
├── MainWindow.* # Main UI
└── Installer/ # WiX installer project
- Framework: .NET 9.0, WPF (Windows Presentation Foundation)
- GPU Interface: NVIDIA NVML (Management Library)
- System Metrics: Windows Management Instrumentation (WMI)
nvGPUMonitor is released under the GNU General Public License v3.
THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. USE AT YOUR OWN RISK. The authors and contributors shall not be liable for any damages arising from the use of this software, including but not limited to system instability, data loss, or hardware issues. See the LICENSE file for full terms.
If you find this software useful, consider donating to my favorite charity: Save The Children Details coming soon.
v0.6.0 - Added Decoder/Encoder gauges, PCIe % utilization with auto-detection