Skip to main content

Add your description here

Project description

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}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

workload_analyzer-0.0.7.tar.gz (95.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

workload_analyzer-0.0.7-py3-none-any.whl (17.6 kB view details)

Uploaded Python 3

File details

Details for the file workload_analyzer-0.0.7.tar.gz.

File metadata

  • Download URL: workload_analyzer-0.0.7.tar.gz
  • Upload date:
  • Size: 95.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.7.10

File hashes

Hashes for workload_analyzer-0.0.7.tar.gz
Algorithm Hash digest
SHA256 5f031da5b17fea26feb373c2d554d8e30d68ac554d35847777e6c7212f946ccb
MD5 1195072fb06722dd235e7ec2ca40f49c
BLAKE2b-256 d61f5d05e93549f9cde061faf12fa2019bf5a0f8ff3406c5f4da0e0a3834c56c

See more details on using hashes here.

File details

Details for the file workload_analyzer-0.0.7-py3-none-any.whl.

File metadata

File hashes

Hashes for workload_analyzer-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 a4ee3d7db281e6262d77a3730d603b5e32deec3d0bb4f70420fd0f7efa97bea0
MD5 091fedd838954b95fca76c9dba2a2a58
BLAKE2b-256 f70d1129e21dee017e4836ddedd73cbb7f4396e6f54692abe7a64ab4445b9c8a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page