Skip to main content

Workload Analyzer 📊

A simple tool for monitoring and analyzing GPU and system resource usage during AI/ML workloads.

🌟 Features

  • 📈 Real-time monitoring of GPU utilization, memory usage, and system resources
  • 🔍 Detailed visualization of resource usage over time
  • 💡 Intelligent recommendations for workload optimization
  • 🚀 Easy-to-use CLI interface
  • 📝 Comprehensive statistics export

🔧 Installation

Using pip

pip install workload-analyzer

Development setup

# Clone the repository
git clone https://github.com/yourusername/workload-analyzer
cd workload-analyzer

# Install using uv with development dependencies
uv sync --dev

📋 Requirements

  • Python 3.12+
  • NVIDIA GPU with nvidia-smi (for GPU monitoring)

🚀 Quick Start

# Run a command with default settings
workload-analyzer "python train_model.py"

# Specify timeout and polling interval
workload-analyzer "python train_model.py" --timeout 300 --interval 5

📊 Output

The tool generates:

  1. Statistics file: JSON format data with all recorded measurements

  2. Visualizations:

    • GPU memory usage over time
    • System memory consumption
    • CPU and disk utilization
    • Network usage
    • Process memory statistics
  3. Optimization recommendations based on resource utilization patterns:

    • GPU memory sizing recommendations
    • Compute utilization insights
    • Memory bandwidth analysis
    • System resource optimization tips

All outputs are saved to workload_results/ by default (configurable with --output-dir).

🛠️ Configuration options

--timeout           Time to monitor in seconds (default: 120)
--interval          Polling interval in seconds (default: 3)
--recommendations   Enable workload optimization recommendations (default: True)
--output-dir        Directory to save outputs (default: workload_results/)
--verbose           Enable verbose logging (default: True)
--version           Print version information

❕ License

Package is licensed under Apache 2.0 license. Free to use as you like, but a cite of the package is welcome:

@misc{skafte_workload_analyzer,
    author       = {Nicki Skafte Detlefsen},
    title        = {Workload-Analyzer},
    howpublished = {\url{https://github.com/SkafteNicki/workload_analyzer}},
    year         = {2025}
}

Metadata

Release files for workload-analyzer 0.0.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for workload-analyzer 0.0.7
File Size Uploaded
workload_analyzer-0.0.7.tar.gz 95.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for workload-analyzer 0.0.7
File Interpreter ABI Platform
workload_analyzer-0.0.7-py3-none-any.whl Python 3 none any Details

Total release size: 112.7 kB

Release files / workload_analyzer-0.0.7.tar.gz

Download URL workload_analyzer-0.0.7.tar.gz
Size 95.2 kB
Tags Source
SHA-256 checksum
How to use checksums
5f031da5b17fea26feb373c2d554d8e30d68ac554d35847777e6c7212f946ccb
BLAKE2b-256 checksum
How to use checksums
d61f5d05e93549f9cde061faf12fa2019bf5a0f8ff3406c5f4da0e0a3834c56c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.7.10

Release files / workload_analyzer-0.0.7-py3-none-any.whl

Download URL workload_analyzer-0.0.7-py3-none-any.whl
Size 17.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a4ee3d7db281e6262d77a3730d603b5e32deec3d0bb4f70420fd0f7efa97bea0
BLAKE2b-256 checksum
How to use checksums
f70d1129e21dee017e4836ddedd73cbb7f4396e6f54692abe7a64ab4445b9c8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.7.10

Release history Release notifications | RSS feed

This release

0.0.7 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page