Skip to main content

GPU energy metering for AI training workloads

Project description

⚡ matcha

GPU energy metering for AI training workloads. Pure Python. No dashboards.

Polls GPU power at 100ms via NVML and reports energy consumption per training step.

Built by Keeya Labs.

Install

pip install matcha-gpu

Requires an NVIDIA GPU with drivers installed (nvidia-smi must work).

Quick Start

Option A: Wrap any training script (zero code changes)

matcha wrap python train_gpt.py

Matcha parses your script's stdout for step markers (step 10, iter 10, [10/1000], etc.) and reports energy between each step.

# also print the training script's output
matcha wrap -p python train_gpt.py

# custom gpu and sampling interval
matcha wrap --gpu 1 --interval 50 python train_gpt.py

Option B: SDK (3 lines added to your training loop)

import matcha

m = matcha.init()

for step in range(num_steps):
    m.step_start()

    # ... your training code, unchanged ...

    energy = m.step_end(step)
    # energy.energy_j   — joules
    # energy.avg_power_w — average watts during step
    # energy.peak_power_w

summary = m.finish()
# summary.total_energy_j
# summary.energy_kwh
# summary.j_per_step

Monitor GPU power (no training script)

matcha monitor
matcha monitor --gpu 0 --window 2.0

Output

  ⚡ matcha — gpu energy metering
  ────────────────────────────────────────────────────────
  gpu        NVIDIA H100 80GB HBM3
  tdp        700W
  sampling   every 100ms
  ────────────────────────────────────────────────────────

    step      energy      time    avg W   peak W  power
  ────────────────────────────────────────────────────────
       0     12.45 J    0.198s   62.8W    71.2W  ██████░░░░░░
       1     13.01 J    0.201s   64.7W    73.1W  ██████░░░░░░
       2     12.88 J    0.199s   64.7W    72.4W  ██████░░░░░░

  ────────────────────────────────────────────────────────
  ⚡ session summary
  ────────────────────────────────────────────────────────

  gpu            NVIDIA H100 80GB HBM3
  total energy   623.45 J
  total time     10.02s
  steps          50
  energy/step    12.47 J
  avg power      62.2W
  peak power     73.1W

  est. cost      $0.000021 @ $0.12/kWh

License

Apache 2.0 — see LICENSE.

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

matcha_gpu-0.1.1.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

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

matcha_gpu-0.1.1-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file matcha_gpu-0.1.1.tar.gz.

File metadata

  • Download URL: matcha_gpu-0.1.1.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for matcha_gpu-0.1.1.tar.gz
Algorithm Hash digest
SHA256 af1c3de87a01ec51f50f917a3fb74e77e962acae3e06f7a4f0b609623e891813
MD5 43dcc09dfa3db45ce31433c648603d87
BLAKE2b-256 afad5b141bd2ae3c4948b87ee921d0085d18fbb2db0514211cb54eb0faeefc35

See more details on using hashes here.

File details

Details for the file matcha_gpu-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: matcha_gpu-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for matcha_gpu-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5b79b272a271d2684c24ab32553324be74c2439b8e42167a4d316cd24fceff1d
MD5 ba3104ba4216e40eb63b435fb9c8b626
BLAKE2b-256 f20f3e5499c30bbcc4063f3ce97d036b7dfaccd4b3e63995628a36057ad6f110

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