Skip to main content

Standardized, reproducible benchmark suites for quantum processors — produces signed Quantum Performance Records (QPRs)

Project description

veriqant-bench

Standardized, reproducible benchmark suites for quantum processors. Runs against local simulators by default and against live QPUs behind an explicit --live flag. Every run produces a Quantum Performance Record (QPR) — a versioned, hash-sealed JSON document containing everything needed to re-run and independently verify the benchmark: seed, OpenQASM 3 circuits, transpiler settings, raw counts, SDK versions.

pip install veriqant-bench            # core (QPR schema + verification)
pip install veriqant-bench[local]     # + Qiskit Aer simulation (no account needed)
pip install veriqant-bench[braket]    # + Amazon Braket (local simulator + live)
pip install veriqant-bench[ibm]       # + IBM Quantum runtime
pip install veriqant-bench[qec]       # + QEC decoding (PyMatching) + Stim oracle
pip install veriqant-bench[signing]   # + Ed25519 QPR signing

CLI

# Run benchmarks (one sealed, self-verified QPR per run; last line prints
# the output path and the record's content hash):
veriqant-bench run rb --adapter aer --qubits 0 --out results/
veriqant-bench run rb --adapter aer --qubits 0,1 --out results/        # 2Q RB
veriqant-bench run mirror --qubits 0,1,2 --depths 2,4,8 --out results/
veriqant-bench run qv --widths 2,3,4 --circuits 50 --out results/
veriqant-bench run throughput --batches 5 --out results/
veriqant-bench run qec --code repetition --distances 3,5,7 --rounds 7 \
    --criteria ab-lq-2026 --noise noise.json --out results/
veriqant-bench run qec --code surface --distance 3 --rounds 3 --out results/
veriqant-bench run rb --noise noise.json --seed 42 --out results/     # noisy Aer

# Static, self-contained HTML report (inputs verified first):
veriqant-bench report results/ -o report.html

veriqant-bench verify results/run.qpr.json   # re-derive hashes, check consistency
veriqant-bench schema                        # print the bundled QPR JSON Schema
veriqant-bench adapters list                 # registered adapters + availability
veriqant-bench adapters probe aer_simulator  # capabilities, calibration, smoke run
veriqant-bench version

--seed is optional: when omitted, one is generated and printed; either way it is recorded in the QPR, so every run is reproducible.

Development

uv sync
uv run pytest                                # fast: no coverage gate
uv run pytest -n auto                        # parallel (pytest-xdist)
uv run pytest -m "not slow"                  # skip multi-second simulator runs
uv run pytest -n auto --cov=veriqant_bench --cov-fail-under=90   # the CI gate
uv run ruff check . && uv run ruff format --check . && uv run mypy

Writing an adapter

Implement the veriqant_bench.adapters.QPUAdapter protocol, register it under the veriqant_bench.adapters entry-point group, and certify it by subclassing veriqant_bench.adapters.conformance.AdapterConformanceSuite in your tests.

See docs/QPR-SPEC.md at the repository root for the record format.

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

veriqant_bench-0.1.0.tar.gz (242.1 kB view details)

Uploaded Source

Built Distribution

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

veriqant_bench-0.1.0-py3-none-any.whl (87.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: veriqant_bench-0.1.0.tar.gz
  • Upload date:
  • Size: 242.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for veriqant_bench-0.1.0.tar.gz
Algorithm Hash digest
SHA256 994aeab0d396e5c526f646ba15c8a1f92bf282daeda3fbf3f182f9b1fc60b5d3
MD5 6895d8fe1d44ac37cd2bfd829d36f155
BLAKE2b-256 55c2f762b8f388eae53518ed5f8c963cc773232a8741781685c81b30220fb24a

See more details on using hashes here.

Provenance

The following attestation bundles were made for veriqant_bench-0.1.0.tar.gz:

Publisher: release.yml on veriqant/veriqant-bench

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

  • Download URL: veriqant_bench-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 87.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for veriqant_bench-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1a050f0dd1d2566dc76aa94ee843a78dcac53ffb58f636f8e10fd680d45daa63
MD5 251c64445df710d4010b6d53ce7e34e7
BLAKE2b-256 271a09e1c8efd1bf32db17bfc87f5259260ab9fa42e3aa0ed99eec68788df199

See more details on using hashes here.

Provenance

The following attestation bundles were made for veriqant_bench-0.1.0-py3-none-any.whl:

Publisher: release.yml on veriqant/veriqant-bench

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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