Skip to content

The System Resource Monitor tracks CPU & memory usage in real-time. Users set usage thresholds & receive notifications upon threshold breach. Data export to CSV is supported.

License

Notifications You must be signed in to change notification settings

Thymester/System-Resource-Monitor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

28 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

System Resource Monitor v2.0

๐Ÿ–ฅ๏ธ Professional System Monitoring with GPU Support ๐ŸŽฎ

Real-time monitoring of CPU, Memory, and GPU resources with modern UI

Python Platform License GPU


๐Ÿ“‹ Overview

The System Resource Monitor v2.0 is a comprehensive Python application that provides professional-grade monitoring of system resources. Built with a modern 4-panel dashboard, it offers real-time tracking of CPU, Memory, GPU usage, and GPU memory with intelligent alerting and data export capabilities.

โœจ What's New in v2.0

  • ๐ŸŽฎ Multi-GPU Support: NVIDIA, AMD Radeon, and Intel Arc GPUs
  • ๐Ÿ“Š 4-Panel Dashboard: Dedicated graphs for CPU, Memory, GPU, and GPU Memory
  • ๐ŸŽจ Modern UI: Professional interface with status indicators and emoji icons
  • โšก Enhanced Performance: 60-point history with optimized rendering
  • ๐Ÿ”ง Smart Detection: Automatic GPU hardware detection with fallbacks

๐Ÿš€ Features

๐Ÿ“ˆ Comprehensive Monitoring

  • Real-time CPU tracking with per-core analysis
  • Memory usage monitoring with threshold alerts
  • GPU utilization tracking for gaming and content creation
  • GPU memory monitoring to prevent VRAM overflow
  • Top 20 process tracking sorted by CPU usage

๐ŸŽฏ Smart Alerting System

  • Customizable thresholds for each resource type
  • Desktop notifications with Windows 10/11 integration
  • Sustained alert logic (CPU: 60s, Memory: 120s, GPU: 60s)
  • Visual status indicators with color-coded feedback

๐Ÿ“Š Advanced Visualization

  • 4-panel dashboard with dedicated resource graphs
  • 60-point history for detailed trend analysis
  • Professional styling with modern matplotlib themes
  • Real-time updates with smooth graph rendering
  • Threshold visualization with danger lines

๐Ÿ’พ Data Management

  • CSV export functionality with GPU metrics included
  • Process list export for system analysis
  • Historical data retention for trend analysis
  • Configurable monitoring intervals (1-10 seconds)

๐ŸŽฎ GPU Support Matrix

GPU Vendor Support Level Monitoring Method Requirements
NVIDIA โœ… Full nvidia-ml-py3, GPUtil Latest NVIDIA drivers
AMD โœ… Full Windows Performance Counters Latest AMD drivers
Intel Arc โš ๏ธ Basic Hardware detection Intel Arc drivers
Integrated โ„น๏ธ Detection System information only N/A

๐Ÿ”ฅ Tested Hardware

  • AMD Radeon RX 6800 XT - Full monitoring support โœ…
  • NVIDIA GeForce RTX Series - Full monitoring support โœ…
  • NVIDIA GTX Series - Full monitoring support โœ…

โš™๏ธ Installation & Setup

๐ŸŽฏ Quick Start (End Users)

  1. Download the latest release from the releases page
  2. Extract the ZIP file to your preferred location
  3. Run install.bat to check system compatibility
  4. Launch SystemResourceMonitor.exe

๐Ÿ‘จโ€๐Ÿ’ป Development Setup

# Clone the repository
git clone https://github.com/your-username/System-Resource-Monitor.git
cd System-Resource-Monitor

# Install dependencies
pip install -r requirements.txt

# For GPU monitoring (optional)
pip install GPUtil nvidia-ml-py3

# Run the application
python main.py

๐Ÿ“ฆ Build from Source

# Install build tools
pip install pyinstaller

# Build executable
python build_system_monitor.py

# Find your executable in the 'release' folder

๐ŸŽฎ Usage Guide

๐Ÿ–ฅ๏ธ Main Interface

Resource Monitor Tab

  • Control Panel: Set thresholds and monitoring intervals
  • 4-Panel Dashboard: View CPU, Memory, GPU, and GPU Memory
  • Status Indicator: ๐ŸŸข Active / ๐Ÿ”ด Stopped monitoring
  • Export Functions: Save data and process lists

Top Processes Tab

  • Real-time Process List: Top 20 CPU-intensive processes
  • Detailed Information: PID, Name, CPU%, Memory%
  • Export Capability: Save process snapshots

โšก Quick Actions

  • Start Monitoring: Click โ–ถ๏ธ or press Alt+S
  • Stop Monitoring: Click โน๏ธ or press Alt+T
  • Export Data: Click ๐Ÿ’พ or press Ctrl+E

๐ŸŽฏ Recommended Thresholds

CPU: 85%     (Gaming/Workstation)
Memory: 90%  (General Use)
GPU: 99.5%   (High-performance applications)

๐Ÿ”ง Technical Specifications

๐Ÿ“‹ System Requirements

  • OS: Windows 10 or later (Windows 11 recommended)
  • Python: 3.8+ (for development)
  • RAM: 100MB minimum, 200MB recommended
  • Permissions: Administrator rights for optimal GPU monitoring

๐Ÿ—๏ธ Architecture

โ”œโ”€โ”€ main.py                 # Application entry point
โ”œโ”€โ”€ monitor/
โ”‚   โ”œโ”€โ”€ system_monitor.py   # Core monitoring class
โ”‚   โ”œโ”€โ”€ gui.py             # Modern UI implementation
โ”‚   โ””โ”€โ”€ monitor.py         # Resource monitoring logic
โ”œโ”€โ”€ utils/
โ”‚   โ””โ”€โ”€ utils.py           # Utility functions & system info
โ””โ”€โ”€ build_system_monitor.py # Distribution builder

๐Ÿ”Œ Dependencies

# Core Requirements
psutil>=5.8.0          # System monitoring
matplotlib>=3.4.3      # Graph rendering
tkinter                # GUI framework
plyer>=2.0.0          # Notifications

# GPU Monitoring (Optional)
GPUtil                 # Cross-platform GPU support
nvidia-ml-py3         # NVIDIA-specific monitoring

๐Ÿšจ Troubleshooting

๐ŸŽฎ GPU Issues

GPU Shows 0% Usage

  1. Update drivers to latest version
  2. Run as Administrator for hardware access
  3. Test with GPU load (run a game or benchmark)
  4. Run diagnostic: python gpu_diagnostic.py

GPU Not Detected

๐Ÿ’ป Performance Issues

  • High CPU usage: Increase monitoring interval to 2-5 seconds
  • Memory leaks: Restart application after extended use
  • Graph lag: Close other monitoring applications

๐Ÿ”ง Build Issues

# Common solutions
pip install --upgrade pyinstaller
pip install --upgrade matplotlib tkinter
python -m pip install --force-reinstall psutil

๐ŸŽฏ Configuration

โš™๏ธ Monitoring Settings

Setting Default Range Description
CPU Threshold 85% 1-100% CPU usage alert level
Memory Threshold 90% 1-100% Memory usage alert level
GPU Threshold 99.5% 1-100% GPU usage alert level
Update Interval 1s 0.5-10s Monitoring frequency
History Length 60 10-300 Graph data points

๐Ÿ”” Alert Timing

  • CPU Alerts: Triggered after 60 seconds of sustained high usage
  • Memory Alerts: Triggered after 120 seconds of sustained high usage
  • GPU Alerts: Triggered after 60 seconds of sustained high usage

๐Ÿค Contributing

We welcome contributions! Here's how you can help:

๐Ÿ› Bug Reports

  • Use the Issues tab to report bugs
  • Include system information and GPU model
  • Provide steps to reproduce the issue

โœจ Feature Requests

  • Suggest new monitoring capabilities
  • Request additional GPU vendor support
  • Propose UI/UX improvements

๐Ÿ‘จโ€๐Ÿ’ป Pull Requests

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Test thoroughly with different GPU configurations
  4. Commit changes (git commit -m 'Add amazing feature')
  5. Push to branch (git push origin feature/amazing-feature)
  6. Open a Pull Request

๐Ÿ“„ License

This project is licensed under the Apache License 2.0. See the LICENSE file for details.

๐Ÿ“ License Summary

  • โœ… Commercial use allowed
  • โœ… Modification allowed
  • โœ… Distribution allowed
  • โœ… Private use allowed
  • โ— License and copyright notice required

๐Ÿ‘ฅ Authors & Acknowledgments

๐Ÿ‘จโ€๐Ÿ’ป Created By

  • Thymester/Tyler - Lead Developer & GPU Specialist

๐Ÿ™ Special Thanks

  • AMD RX 6800 XT users for testing GPU monitoring
  • NVIDIA community for driver compatibility feedback
  • Open source community for libraries and inspiration

๐ŸŒŸ Show Your Support

If this project helped you, please give it a โญ on GitHub!


โš ๏ธ Disclaimer

This application is provided "as-is" without any warranty. The authors and contributors are not responsible for any damage, data loss, or system issues caused by the use of this software.

๐Ÿ”’ Privacy & Security

  • No data collection: All monitoring data stays on your system
  • No network communication: Operates entirely offline
  • No user tracking: Your privacy is completely protected

๐ŸŽฎ Ready to monitor your system like a pro? ๐Ÿš€

Download System Resource Monitor v2.0 today!

๐Ÿ“ฅ Download Latest Release | ๐Ÿ“– Documentation | ๐Ÿ› Report Bug | ๐Ÿ’ก Request Feature

About

The System Resource Monitor tracks CPU & memory usage in real-time. Users set usage thresholds & receive notifications upon threshold breach. Data export to CSV is supported.

Resources

License

Stars

Watchers

Forks

Packages

No packages published