Skip to main content

Explicit local GPU memory and compute stress process for scheduling and monitoring tests.

Project description

gpu-proc

gpu-proc is an explicit local GPU stress process for testing schedulers, monitoring alerts, dashboards, and GPU capacity behavior on machines you are authorized to use.

It can reserve a configurable fraction of one CUDA device's memory and keep the device busy with repeated matrix multiplication. The default target is 0.95 of GPU memory with a finite 60 second run.

Actual utilization reported by tools such as nvidia-smi depends on the GPU, driver, backend, matrix size, and sampling window.

This package is intentionally not a daemon, not stealthy, and not persistent. Run it only on hardware you own or have permission to test.

Install

Install the package itself:

pip install gpu-proc

Install one backend:

pip install "gpu-proc[torch]"

or, for CUDA 12 CuPy environments:

pip install "gpu-proc[cupy-cuda12]"

You can also install the package from a local checkout:

pip install -e ".[torch,dev]"

Quick start

Create a config file:

gpu-proc init-config

Run with explicit confirmation:

gpu-proc run --yes

Run from a specific config:

gpu-proc run --config ./gpu-proc.toml --yes

Check backend availability:

gpu-proc doctor

Config

Default path:

~/.config/gpu-proc/config.toml

Example:

backend = "auto"
device = 0
memory_fraction = 0.95
duration_seconds = 60
matrix_size = 4096
dtype = "float32"
chunk_mb = 256
reserve_mb = 256
sync_every = 16
progress_interval_seconds = 5
allow_indefinite = false
require_confirmation = true

Set duration_seconds = 0 only with allow_indefinite = true; stop the process with Ctrl-C.

Build and publish

Prepare build tooling:

python -m pip install --upgrade build twine

Build distributions:

python -m build

Check artifacts:

python -m twine check dist/*

Upload to TestPyPI first:

python -m twine upload --repository testpypi dist/*

Then upload to PyPI:

python -m twine upload dist/*

Use a PyPI API token instead of an account password.

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

gpu_proc-0.1.0.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

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

gpu_proc-0.1.0-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file gpu_proc-0.1.0.tar.gz.

File metadata

  • Download URL: gpu_proc-0.1.0.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for gpu_proc-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8e4810d67099e6a346e8dcfac58cf966a330670cd9e8f44ecd8ea254d456a500
MD5 bfe2fa5dfefbd9c31ee257d45ddf6aab
BLAKE2b-256 0ccf5c0bcfe2bc7794e8e87dc6056ae5ae89a38c129e906da1380c3ad6d23555

See more details on using hashes here.

File details

Details for the file gpu_proc-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: gpu_proc-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for gpu_proc-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f8806c30143921fe4cddd7e706304e0c72b5efac26d9a2720433db1c3374e69b
MD5 dbac7599cbc912ae8b9512f3647f9ed0
BLAKE2b-256 93c2d1952f6906a61e13002dbcd46eb428aa1fa4f76630f8b55a38edb05b9d0b

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