WestQuant CUDA-Q
Domain-neutral representation search and execution intelligence for CUDA-Q and cuQuantum.
CUDA-Q executes efficiently. WestQuant decides what representation to run, where to run it, and how much quantum work is justified.
Scope
This package is intentionally industry-neutral. It contains no chemistry, life-science, finance, logistics, or other vertical-specific methods.
It provides:
- Representation candidate search.
- Cross-framework workload normalization.
- CUDA-Q and cuQuantum capability discovery.
- Backend and simulator selection.
- Pluggable cost/quality prediction.
- GPU/QPU resource allocation.
- Reproducibility passports.
- QPU-minimization planning.
- Optional CUDA-Q execution.
- Cross-vendor backend descriptions.
Install
pip install westquant-cudaq
Install CUDA-Q integration where NVIDIA CUDA-Q is supported:
pip install 'westquant-cudaq[cudaq]'
The planner and tests work without an NVIDIA GPU or CUDA-Q installation.
Quick start
from westquant_cudaq import (
BackendCapability,
Engine,
RepresentationCandidate,
WorkloadProfile,
allocate_resources,
create_passport,
default_cuquantum_capabilities,
minimize_qpu,
search_representations,
)
workload = WorkloadProfile(
workload_id="generic-qaoa-24",
qubits=24,
depth=40,
one_qubit_gates=48,
two_qubit_gates=96,
observables=12,
parameters=8,
shots=1024,
estimated_entanglement=0.3,
)
representations = [
RepresentationCandidate("direct", workload),
RepresentationCandidate(
"grouped-observables",
WorkloadProfile(**{
**workload.__dict__,
"observables": 5,
"depth": 36,
}),
transformation_trace=("commute", "group_observables"),
),
]
backends = [
BackendCapability("qpp-cpu", Engine.CPU),
*default_cuquantum_capabilities(available=True, gpu_memory_bytes=24 * 2**30),
]
plan = search_representations(representations, backends)
allocation = allocate_resources(plan, candidate_count=100, gpu_count=1, qpu_budget_jobs=1)
minimization = minimize_qpu(workload, allocation)
passport = create_passport(plan, allocation)
print(plan.backend.name, plan.representation.name)
print(minimization.reduction_factor)
print(passport.to_json())
Policy model
HeuristicPredictor is a transparent, deterministic baseline. Production users can implement the Predictor protocol with calibrated measurements or learned models:
class MyPredictor:
def predict(self, workload, backend):
...
WestQuant never executes an unverified representation candidate. Constraints for noise, gradients, qubit capacity, and memory are enforced before scoring.
CUDA-Q execution
execute_cudaq imports CUDA-Q lazily and supports kernel execution, sampling, and observation. No CUDA dependency is imported when using only planning and passport APIs.
Relationship to WestQuant Open
westquant-core: WQIR, RepGraph, plugin contracts, and generic search.westquant-bridges: static representation bridges, including CUDA-Q text/kernel bridges.westquant-orchestrator: cross-framework run normalization and merged datasets.westquant-qcsc: semantic QPU minimization and workflow planning.westquant-cudaq: NVIDIA CUDA-Q/cuQuantum execution intelligence and capability-aware planning.
License
Apache-2.0
Metadata
Release files for westquant-cudaq 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| westquant_cudaq-0.1.0.tar.gz | 8.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| westquant_cudaq-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 16.6 kB
Release files / westquant_cudaq-0.1.0.tar.gz
| Download URL | westquant_cudaq-0.1.0.tar.gz |
|---|---|
| Size | 8.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8a4555a9192f655685b6798eae3314e0b85444160a40305f34ddf7c186d8538a
|
|
BLAKE2b-256 checksum How to use checksums |
8720bdb72321ee7e17bc223293fe0e379d77157f511fc1ac218a8c72f5f82dfb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.12
|
Release files / westquant_cudaq-0.1.0-py3-none-any.whl
| Download URL | westquant_cudaq-0.1.0-py3-none-any.whl |
|---|---|
| Size | 8.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f1001ff24d96efdb05b1d87110ddd6bd6f9d7ecacd8bd547d6c04f62519b9b48
|
|
BLAKE2b-256 checksum How to use checksums |
cb019985a4be15773cbf06689978bdced28e5f9f0ea3727ac6a4ec0a6b7b5003
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.12
|