Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

monoprop-bench-tools

The benchmark harness behind monoprop: the pieces that are reusable outside a single benchmark run, packaged separately so scripts, notebooks and third-party comparisons can depend on them without vendoring the repository's benches/ directory.

Module What it gives you
monoprop_bench_tools.memory.cpu Exact peak-RSS measurement from the kernel's VmHWM.
monoprop_bench_tools.memory.gpu The device-side counterpart, over CUDA memory-pool counters or a CuPy allocation hook.
monoprop_bench_tools.models Builders for the benchmarked problems: a configurable random problem, a 120-mode Fermi-Hubbard model, and a 127-qubit kicked-Ising model.
monoprop_bench_tools.report Renders a run's artifacts into a side-by-side Markdown report.
monoprop_bench_tools.bmf Renders a run's artifacts into Bencher Metric Format JSON.

Install

pip install monoprop-bench-tools

GPU support

monoprop_bench_tools.memory.gpu needs CuPy, and only CuPy. Pick the extra matching your CUDA toolkit:

pip install "monoprop-bench-tools[gpu-cuda12]"   # CUDA 12.x
pip install "monoprop-bench-tools[gpu-cuda13]"   # CUDA 13.x

Pick one, not both: the two CuPy builds ship the same top-level cupy package. On a host with no system CUDA toolkit, add CuPy's bundled one with pip install "cupy-cuda12x[ctk]".

Without CuPy the module still imports, and every reading reports Method.UNAVAILABLE instead of a figure you might mistake for a real one.

Use

Measure the peak resident footprint of a block, exactly (no sampling):

from monoprop_bench_tools.memory.cpu import HighWaterMark
from monoprop_bench_tools.models import build_hubbard_problem

with HighWaterMark() as hwm:
    propagator, circuit = build_hubbard_problem()
    propagator.build_graph(circuit)

print(f"{hwm.peak_mb:.0f} MB peak, exact={hwm.exact}")

Render the artifacts of a run:

monoprop-bench-report benches/results             # writes REPORT.md
monoprop-bench-bmf benches/results ci-bare-metal-L1   # BMF JSON on stdout

Both read the two files a run leaves in the results directory: time-<label>.json (pytest-benchmark timings) and <label>.json (memory, operator sizes, configuration). The schema is documented in the repository's benches/results/README.md, and written by the suite in benches/conftest.py.

Scope

This package deliberately holds no benchmarks. monoprop's own suite lives in the repository's benches/ directory, because its benchmark names are the key Bencher's history is stored under and must not move with a library release.

bmf.benchmark_name maps a pytest node id to the name a metric is exported under, so that mapping is history-bearing for the same reason: changing it renames every series it touches.

License

Apache-2.0. See LICENSE.

Metadata

Release files for monoprop-bench-tools 0.9.2a1

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

Source distribution (sdist)

Source distribution for monoprop-bench-tools 0.9.2a1
File Size Uploaded
monoprop_bench_tools-0.9.2a1.tar.gz 33.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for monoprop-bench-tools 0.9.2a1
File Interpreter ABI Platform
monoprop_bench_tools-0.9.2a1-py3-none-any.whl Python 3 none any Details

Total release size: 65.9 kB

Release files / monoprop_bench_tools-0.9.2a1.tar.gz

Download URL monoprop_bench_tools-0.9.2a1.tar.gz
Size 33.2 kB
Tags Source
SHA-256 checksum
How to use checksums
011d66281515aaf3aca0f365465f1047801ed8a5696a67917c8a944ae3b1cfca
BLAKE2b-256 checksum
How to use checksums
d791f9a801af6f16af0bc9375191776592af55429e7db78d372d3f8f16c15b7e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

Release files / monoprop_bench_tools-0.9.2a1-py3-none-any.whl

Download URL monoprop_bench_tools-0.9.2a1-py3-none-any.whl
Size 32.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8c1ecd777adace691eec2932448977cfe671d27c31b30b3ba25e618bfa0ede9f
BLAKE2b-256 checksum
How to use checksums
647b231bca0cfa4c14443c7689ae4731b3050cdba6978b7bdcca4c94cf339e82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log
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