qubestack-cudaq
QuREKA backend plugin for CUDA-Q.
Execute CUDA-Q quantum circuits on various quantum backends through the QuREKA platform.
Supported Backends
| Backend | Identifier |
|---|---|
| QPerfect Mimiq | sdt.qubesim-mimiq |
| IQM Garnet | iqm.garnet |
| IQM Emerald | iqm.emerald |
| IonQ Forte (IonQ Cloud v0.4 직결) | ionq.forte-1 |
| SDT Kreo | sdt.kreo-sc20 |
Installation
pip install qubestack-cudaq
cuda-quantum-cu12==0.14.0 is automatically installed as a dependency.
Optional: [academic] extras
For running the NVIDIA CUDA-Q Academic
notebooks (QEC, chemistry-simulations, QAOA, dynamics, ai-for-quantum, ...),
install the academic extras:
pip install "qubestack-cudaq[academic]"
This adds cudaq-qec, cudaq-solvers (with ABI-compatible pins) plus the
learning-side libraries (qutip, galois, pymatching, stim, openfermion,
diffusers, transformers). External PyPI users are not forced into this
set — the base pip install qubestack-cudaq remains unchanged.
The qubestack-pad notebook image bundles this [academic] bundle so users
can run the Academic notebooks out of the box without additional installs.
Version compatibility matrix
The four packages below must ship together with ABI-compatible pins.
qubestack-cudaq CI enforces this via scripts/verify_academic.sh (fail-fast).
qubestack-cudaq |
cuda-quantum-cu12 |
cudaq-qec |
cudaq-solvers |
|---|---|---|---|
1.0.x (current) |
0.14.0 |
0.6.0 |
0.6.0 |
New rows are appended when NVIDIA releases a new cuda-quantum-cu12 and the
matching cudaq-qec/cudaq-solvers pair is validated. See QXDEV-2375 for the
design rationale.
How the pin is chosen: NVIDIA ships cudaq-qec / cudaq-solvers alongside
each cuda-quantum-cu12 release. Cross-checked via each *-cu12 wheel's own
Requires-Dist metadata:
cudaq-qec-cu12 0.5.0/0.5.0.post1→cuda-quantum-cu12 == 0.13.*cudaq-qec-cu12 0.6.0→cuda-quantum-cu12 == 0.14.*✅ (current pin)
Mismatched pairs surface at pip resolution (ResolutionImpossible) or at import
time as libcudaq-qec.so: undefined symbol: _ZN5cudaq16quantum_platform12set_exec_ctxE...
and are caught by scripts/verify_academic.sh in CI (Phase 2 fail-fast).
Quick Start
import cudaq
# Set the QuREKA target
cudaq.set_target("qureka", backend="sdt.qubesim-mimiq", api_key="your-api-key")
# Define a quantum kernel
@cudaq.kernel
def bell_state():
q = cudaq.qvector(2)
h(q[0])
cx(q[0], q[1])
mz(q)
# Execute
result = cudaq.sample(bell_state, shots_count=1000)
print(result)
Configuration
| Parameter | Required | Description |
|---|---|---|
backend |
Yes | Quantum backend identifier (see table above) |
api_key |
Yes | QuREKA API key |
option |
No | Backend-specific options (JSON string) |
License
Apache License 2.0
Metadata
Release files for qubestack-cudaq 1.0.160
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| qubestack_cudaq-1.0.160-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl | CPython 3.12 | CPython 3.12 | Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 | Details |
Release files / qubestack_cudaq-1.0.160-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | qubestack_cudaq-1.0.160-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 238.4 kB |
| Tags | CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
ecc09332b75874a528df91a75f3093649981f349fcdd398553f52468a9e4b38b
|
|
BLAKE2b-256 checksum How to use checksums |
70d3fede1cecb08083e8692c381afda1ac7bf9b9805112ddbe24f4fa2dd48509
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.13
|