ReleaseNVIDIANVIDIApublished Aug 1, 2025seen 5d

NVIDIA/cudaqx 0.4.0

NVIDIA/cudaqx

Open original ↗

Captured source

source ↗
published Aug 1, 2025seen 5dcaptured 8hhttp 200method plain

0.4.0

Repository: NVIDIA/cudaqx

Tag: 0.4.0

Published: 2025-08-01T20:42:31Z

Prerelease: no

Release notes: The CUDA-QX 0.4.0 release includes a variety of new features in both the Solvers and QEC library. For the Solvers library, a new Generative Quantum Eigensolver implementation is provided. To use this new algorithm, you will need to use pip install cudaq-solvers[gqe] in order to install all the proper dependencies. For the QEC library, a new Tensor Network Decoder is added, and a new API allows users to automatically generate PCMs from noisy CUDA-Q memory circuits. To use this new decoder, you will need to a) use Python >= 3.11, and b) use pip install cudaq-qec[tensor_network_decoder] in order to install all the proper dependencies. Additionally, support for Python 3.13 is added in this release. Many more features are listed below!

Please check out the docs and examples for how to get started using the CUDA-QX libraries!

_Note: CUDA-QX 0.4.0 depends on CUDA-Q 0.12.0._

Features and Enhancements (Solvers) 🎉

  • Generative Quantum Eigensolver by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/201

Features and Enhancements (QEC) 🎉

  • Tensor Network Decoder by @npancotti in https://github.com/NVIDIA/cudaqx/pull/179
  • Add check for tn decoder import by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/206
  • Add Parity Check Matrix generation and utility functions by @bmhowe23 in https://github.com/NVIDIA/cudaqx/pull/147
  • Add opt_results field to decoder_result by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/171
  • Optimize convert_vec_soft_to_tensor_hard by 50x by @bmhowe23 in https://github.com/NVIDIA/cudaqx/pull/160

Breaking Changes (QEC) 🛠

  • Update QEC interfaces to use spin_op_term by @bmhowe23 in https://github.com/NVIDIA/cudaqx/pull/165

Bug Fixes (QEC) 🐛

  • Add fine grained noise injection in a custom qec code by @kvmto in https://github.com/NVIDIA/cudaqx/pull/227

nv-qldpc-decoder Updates (Closed Source)

  • Added multiple algorithm configuration updates, including iter_per_check, clip_value, bp_method (now supporting both sum-product and min-sum), scale_factor, and an optional output result logging capability for bp_llr_history.
  • Add API doc update for BP by @melody-ren https://github.com/NVIDIA/cudaqx/pull/243

Documentation ✏️

  • Replace PCM generation example with one using new DEM API by @kvmto in https://github.com/NVIDIA/cudaqx/pull/216
  • introduction.rst: clean up docs typos by @mitchdz in https://github.com/NVIDIA/cudaqx/pull/163
  • Update doc and example to use decoder_result new API by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/175
  • Update examples to show how to use decoder_result API by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/184
  • [docs] Update circuit-level noise example to use new DEM feature by @bmhowe23 in https://github.com/NVIDIA/cudaqx/pull/199
  • Fix typo in Building.md by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/209
  • Doc update by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/213
  • Tensor network decoder docs & examples by @npancotti in https://github.com/NVIDIA/cudaqx/pull/214
  • Update Python READMEs to describe optional features by @bmhowe23 in https://github.com/NVIDIA/cudaqx/pull/236
  • small fix in gqe docstring by @caldwellshane in https://github.com/NVIDIA/cudaqx/pull/239
  • Update docs and guard for tensor network decoder by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/241

Common / Misc

  • Add python 3.13 support by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/222
  • [nfc] Be more explicit about extension_point usage by @bmhowe23 in https://github.com/NVIDIA/cudaqx/pull/177
  • Add move constructor to heterogeneous_map by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/186
  • Remove unnecessary MeasureCounts.h include by @1tnguyen in https://github.com/NVIDIA/cudaqx/pull/188
  • Update __restrict__ pointer syntax to allow compilation with clang++ by @bmhowe23 in https://github.com/NVIDIA/cudaqx/pull/205
  • Update cudaq ver for project.toml by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/219
  • Fix decoder plugin not throwing the missing dependecy err msg issue by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/224
  • Update pyproject.toml dependencies for CUDA-Q 0.12 by @bmhowe23 in https://github.com/NVIDIA/cudaqx/pull/228
  • Add missing licence header by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/235

Testing

  • Workflow updates (incl creating all_libs_release.yaml) by @bmhowe23 in https://github.com/NVIDIA/cudaqx/pull/159
  • [test] Skip nv-qldpc-decoder test if no GPUs found by @bmhowe23 in https://github.com/NVIDIA/cudaqx/pull/238
  • Add python3.13 to validate_wheels.sh by @melody-ren in https://github.com/NVIDIA/cudaqx/pull/237

New Contributors

  • @mitchdz made their first contribution in https://github.com/NVIDIA/cudaqx/pull/163
  • @1tnguyen made their first contribution in https://github.com/NVIDIA/cudaqx/pull/188
  • @npancotti made their first contribution in https://github.com/NVIDIA/cudaqx/pull/179

Full Changelog: https://github.com/NVIDIA/cudaqx/compare/0.3.0...0.4.0

Notability

notability 5.0/10

Minor version release by NVIDIA, moderate interest