Releases: saviornt/ResourceManager
Release Version
Release v1.0.0 – Initial Release
We are excited to announce the initial release of ResourceManager, a Python utility designed to monitor and manage system resources in real time. This release lays the foundation for robust resource monitoring, adaptive management, and seamless integration into your Python projects.
Key Features
Real-Time Monitoring:
Track CPU, memory, GPU, and network usage on the fly using powerful libraries like psutil and NVIDIA's NVML (when available).
Adaptive Resource Management:
Define custom thresholds for your resources. ResourceManager issues pruning signals automatically when resource limits are exceeded, helping to prevent system overload.
Asynchronous Operations:
Designed to work asynchronously, allowing your applications to continue running smoothly while resource usage is monitored.
FastAPI Integration:
A built-in REST API powered by FastAPI enables remote monitoring and control. Easily query endpoints for CPU, memory, GPU, network, or all metrics in one go.
Easy Integration:
Drop ResourceManager into your existing Python projects with minimal setup. It’s compatible with Python 3.12+ and integrates smoothly with CUDA environments for GPU monitoring.
Robust Error Handling & Testing:
Comprehensive error management and an extensive test suite ensure reliability and stability.
Highlights
REST API Endpoints:
/endpoint/cpu – Get current CPU usage.
/endpoint/memory – Get current memory usage.
/endpoint/gpu – Get current GPU utilization and memory usage.
/endpoint/network – Get current network usage.
/endpoint/all – Retrieve all resource metrics in a single call.
/endpoint/prune – Check if resource pruning is required based on set thresholds.
Installation & Usage:
Install via pip with the command:
pip install git+https://github.com/saviornt/resourcemanager
Refer to the README for code examples and further API documentation.
Looking Ahead
This initial release is just the beginning. Future updates will expand resource metrics, introduce more configuration options, and enhance integration capabilities based on user feedback.
Thank you for trying out ResourceManager. We look forward to your contributions and feedback to help us improve this tool even further!