Cuda-quantum

Latest version: v0.9.0

Safety actively analyzes 687852 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

0.8.0

The 0.8.0 release adds a range of changes to improve the ease of use and performance with CUDA-Q. The changes listed below highlight some of what we think will be the most useful features and changes to know about. While the listed changes do not capture all of the great contributions, we would like to extend many thanks for every contribution, in particular those from external contributors.

What's Changed

Features and Enhancements 🎉
* Allows std::pair and std::tuple to be passed as arguments to kernels by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1585
* Support for complex numbers in quantum kernels by annagrin in https://github.com/NVIDIA/cuda-quantum/pull/1605
* IQM Aphrodite QPU support by kukushechkin in https://github.com/NVIDIA/cuda-quantum/pull/1637
* Support for U3 gate by anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/1614
* Blochsphere Visualization by prateekchawla168 in https://github.com/NVIDIA/cuda-quantum/pull/1763
* Circuit diagrams for unitary quantum kernels in LaTeX by freifrauvonbleifrei in https://github.com/NVIDIA/cuda-quantum/pull/1723
* Add ORCA backends and documentation by Omar-ORCA in https://github.com/NVIDIA/cuda-quantum/pull/1842
* Support custom unitary operations by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/1794

Performance ⚡
* Add optimized applyExpPauli to nvidia-mgpu by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1559
* Optimize kernel mode for hybrid QNN test case by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1572
* State initialization feature and performance improvements related to state handling by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1754
* NVQC Optimizations for VQE (C++ and Python) by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1901
* Optimization for XX, YY, ZZ rotations in MPS simulator by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1691
* Performance improvements for running compute APIs (state,observe,sample) in a loop by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1865
* Heuristic threshold to prevent OpenMP slow-down in simple `spin_op` `*=` by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1676

Bug Fixes 🐛
* Fix issue with indexing raw args pointer for return value by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1540
* [tools] Fix segfault in `cudaq-translate` when `emit-llvm=0` by fabianmcg in https://github.com/NVIDIA/cuda-quantum/pull/1557
* Allow measurement of variadic list of qubits by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1502
* Fix Pauli word conversion bug in `observe_async` by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1567
* Fix Python wheel installation issues (multiple subtlety linked items) by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1493
* Fixes and issue with sampling when kernel contains mid-circuit measurements by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1619
* Fix `bool` to `int` casting issue in Python by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1654
* Correctly handle 'break' within nested loops in Python by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/1693
* Allow math dialect to lower and run on NVQC by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1692
* Segmentation fault during circuit simulation for large number of controlled gates by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1735
* Bugs fixes in lower quake pass by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1831
* Fix stack overflow when running with a large number of shots by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1846
* Add nvidia-mqpu as a valid multi-GPU backend for NVQC by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1856
* Fix bug in lower-to-cfg by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1868
* Fix storage order of noise kraus ops by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1825
* Address scoping issue for `sample_async` by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/1878
* Fix LLVM aarch64 relocation overflow by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1444
* Fix bug in `memtoreg` pass with classical values in `if`s by atgeller in https://github.com/NVIDIA/cuda-quantum/pull/1905
* Fix bug for missing function declarations by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1919
* Keep stack from growing without bound by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1892
* Fix incorrect capture for array and list in python by annagrin in https://github.com/NVIDIA/cuda-quantum/pull/1928
* Correctly distinguish measurement result and boolean variable by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/1952
* Fixing an issue with copying measurement variable inside a kernel by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/1962
* Support use of `control` and `adjoint` variants of a kernel by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/1979
* Fix cudaq::slice_vector synthesis bug by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1981
* Handle use of indirect `adjoint` on a `control` by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/1993

Breaking Changes 🛠
* Bump `cuquantum` to 24.03 and `cutensor` to 2.0 by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1524
* Build and include the C++ standard library in installer by bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/1603
* Changes to cudaq headers for pure c++17 environment by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1468

Documentation Updates ✏️
* Use arch-specific pip requirements and update docs by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1602
* Additional tutorials and examples by zohimchandani in https://github.com/NVIDIA/cuda-quantum/pull/1702
* Added application Readout Error Mitigation by Gopal-Dahale in https://github.com/NVIDIA/cuda-quantum/pull/1765
* Improve structure and clarity of the documentation by WingCode in https://github.com/NVIDIA/cuda-quantum/pull/1724
* Add ability to set MPS SVD algorithm by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1761
* Adding examples for defining kernels and inverting them (e.g. inverse QFT) by mmvandieren in https://github.com/NVIDIA/cuda-quantum/pull/1885
* Hadamard test example by marwafar in https://github.com/NVIDIA/cuda-quantum/pull/1867
* Active space example with water molecule by marwafar in https://github.com/NVIDIA/cuda-quantum/pull/1859
* Adding example about molecular docking via DC-QAOA by marwafar in https://github.com/NVIDIA/cuda-quantum/pull/1960

Other Changes
* Add cudaq.translate API by annagrin in https://github.com/NVIDIA/cuda-quantum/pull/1916
* Enable 'reset' in Python kernel mode by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/1649
* Add support for python's for-else by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1573
* Make quantum values a linear type by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1612
* nvq++ command line options by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1805
* Handle unsupported operation with nvqc target by sacpis in https://github.com/NVIDIA/cuda-quantum/pull/1907
* Enable capture of opaque kernel functions by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1934
* NVQC API versioning updates and advance REST API to v1.1 by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1941
* State preparation after synthesis by annagrin in https://github.com/NVIDIA/cuda-quantum/pull/1891
* Add error message about not synthesizing state pointers by annagrin in https://github.com/NVIDIA/cuda-quantum/pull/1974
* Support direct kernel invocation with a return value by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1969

New Contributors
* actione made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1510
* Gaurang-Belekar made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1525
* fabianmcg made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1557
* marwafar made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1581
* abhiram6121 made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/848
* ikkoham made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1655
* prateekchawla168 made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1763
* Gopal-Dahale made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1765
* freifrauvonbleifrei made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1723
* WingCode made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1724
* atgeller made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1829
* BalajiJBcs made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1826

**Full Changelog**: https://github.com/NVIDIA/cuda-quantum/compare/0.7.1...0.8.0
Release created by workflow [10252752123](https://github.com/NVIDIA/cuda-quantum/actions/runs/10252752123).

0.7.1

The 0.7.1 release adds bug fixes, slightly changes the Python wheel installation instructions, and adds simulator optimizations to our prior 0.7.0 release. The `nvidia-mgpu` backend now supports user customization of the gate fusion level as controlled by the `CUDAQ_MGPU_FUSE` environment variable documented [here](https://nvidia.github.io/cuda-quantum/latest/using/backends/simulators.html#multi-node-multi-gpu).

What's Changed
Features and Enhancements 🎉
* Perf. improvement for `CuStateVecCircuitSimulator::observe` by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1002
* Make spin_op.distribute_terms batch more efficiently by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1437
* MPS backend to support gates on 3+ qubits by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1420
* Add optimized applyExpPauli to nvidia-mgpu by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1559
* Optimize kernel mode for hybrid QNN test case by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1572
Bug Fixes 🐛
* Fixing issue with sample_async failing on machines with multiple GPUs by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1379
* Enable list[T] argument specification in kernel builder by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1370
* Fix synthesis of vectors with small integers. by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1395
* Fix compilation issue for std::vector in some cases by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1402
* Fixing incorrect error for synthesis of callables by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1398
* Fix memory leak in CuStateVecCircuitSimulator.cu by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1424
* Fix issue when passing np.ndarray to Python kernels by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1406
* Fix Python handling of kernel list parameters by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1410
* Fix issue with `spin_op` result retrieval by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1440
* Handling empty lists passed to Python kernels by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1438
* Fix issue where qubits are retained with draw / tracer by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1457
* Fix issue caused by docstrings inside Python kernels by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1459
* Improved error handling and bug fixes for Python by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1458
* Fix issue with cnot operation not being properly compiled for some targets by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1466
* Simplify MLIR code generated for simple Python for loops over range(N) by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1470
* Fix Python wheel installation issues (multiple subtlety linked items) by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1493
* Fix observe() calls on nvidia-mgpu backend by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1494
* Fix issue with unknown base on attribute call (throw an error) by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1499
* Fix QPUD Library Mode Installer Build by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1435
Documentation Updates ✏️
* Documentation for NVQC by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1412
* Python documentation for kernel construction by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/1417
Other Changes
* Adds the ability to pass vector<bool> values to kernels as input by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1404
* Add support for recently introduced cudaq::range(a,b,c) function. by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1476

Release created by workflow [9094817952](https://github.com/NVIDIA/cuda-quantum/actions/runs/9094817952).<br/>GitHub commit [1f8dd79d46cad9b9bd0eb220eb04408a2e6beda4](https://github.com/NVIDIA/cuda-quantum/tree/1f8dd79d46cad9b9bd0eb220eb04408a2e6beda4)
<!-- Release notes generated using configuration in .github/release.yml at 1f8dd79d46cad9b9bd0eb220eb04408a2e6beda4 -->

**Full Changelog**: https://github.com/NVIDIA/cuda-quantum/compare/0.7.0...0.7.1

0.7.0

The 0.7.0 release adds support for using [NVIDIA Quantum Cloud](https://www.nvidia.com/en-us/solutions/quantum-computing/cloud/) in the form of a new [`nvqc` target](https://nvidia.github.io/cuda-quantum/latest/using/backends/nvqc.html), giving you access to our most powerful GPU-accelerated simulators even if you don't have an NVIDIA GPU.
With 0.7.0, we have furthermore greatly increased expressiveness of the Python and C++ language frontends. Check our our new [Quick Start](https://nvidia.github.io/cuda-quantum/latest/using/quick_start.html) to get started with the new Python syntax support we have added, and follow [our blog](https://developer.nvidia.com/cuda-q) to learn more about the new setup and its performance benefits.

What's Changed
Features and Enhancements 🎉
* NVCF integration by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1148
* Enable CUDA Quantum language specification in Python by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/1312
* Support for composable aggregate argument types, such as e.g. vectors of structs by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1080
* Kernel builder JIT cache optimizations by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1206
* Optimize LLVM JIT for large circuits by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1261
* Unitary circuit drawing by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1299
Bug Fixes 🐛
* Fix issue with argument checking on kernel_builder apply_call by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1131
* Don't throw fatal exception during 'import cudaq' if missing dependencies by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1152
* Fixes for the `remote-mqpu` platform by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1158
* Fix incorrect warning for IonQ command line parameters by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1173
* Fix non-created custatevec handle edge case by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1160
* Fix tensornet bug with async python functions by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1177
* Change `__global__` register bit ordering for target mode to match library mode by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1027
* Fix issue with handling nested `cudaq::adjoint` by boschmitt in https://github.com/NVIDIA/cuda-quantum/pull/1217
* Handle LLVM errors via C++ exceptions in the REST server implementation by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1263
* Decode orca-url by Omar-ORCA in https://github.com/NVIDIA/cuda-quantum/pull/1270
* Refresh remote seeds for executions within a client session by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1318
* Miscellaneous bug fixes for argument and return values by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1326
Breaking Changes 🛠
* UCCSD API changes by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1386
Documentation Updates ✏️
* Copy edits to the C++ examples on the website by mmvandieren in https://github.com/NVIDIA/cuda-quantum/pull/951
* Copy edits made to Advanced sections and Tutorials by mmvandieren in https://github.com/NVIDIA/cuda-quantum/pull/964
* Python example copy edits by mmvandieren in https://github.com/NVIDIA/cuda-quantum/pull/947
* Build and install guide update by bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/1188
* MPI related docs and commit update by bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/1191
* Build from source guide - Python wheels by bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/1220
Other Changes
* Change internal qubit ordering by boschmitt in https://github.com/NVIDIA/cuda-quantum/pull/1082
* Add support for CURL_CA_BUNDLE environment variable by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1213
* Options for OQC Toshiko machine by owen-oqc in https://github.com/NVIDIA/cuda-quantum/pull/1195
* Optimize logger implementation by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1254

New Contributors
* justinlietz made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/960

**Full Changelog**: https://github.com/NVIDIA/cuda-quantum/compare/0.6.0...0.7.0
Release created by workflow [8332091498](https://github.com/NVIDIA/cuda-quantum/actions/runs/8332091498).

0.6.0

<!-- Release notes generated using configuration in .github/release.yml at e0fb95f99b955acca530fcedeb3acd109d9d0183 -->

The 0.6.0 release contains improved support for various HPC scenarios. We have added a [plugin infrastructure](https://nvidia.github.io/cuda-quantum/0.6.0/install.html#distributed-computing-with-mpi) for connecting CUDA Quantum with an existing MPI installation, and we've added a [new platform target](https://nvidia.github.io/cuda-quantum/0.6.0/using/cudaq/platform.html#remote-mqpu-platform) that distributes workloads across multiple virtual QPUs, each simulated by one or more GPUs.

Starting with 0.6.0, we are now also distributing [pre-built binaries](https://nvidia.github.io/cuda-quantum/0.6.0/install.html#pre-built-binaries) for using CUDA Quantum with C++. The binaries are built against the [GNU C library](https://www.gnu.org/software/libc/) version 2.28. We've added a detailed [Building from Source](https://nvidia.github.io/cuda-quantum/0.6.0/data_center_install.html) guide to build these binaries for older `glibc` versions.

What's Changed
Features and Enhancements 🎉
* C++17 support by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/973
* MPI support as plugins by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/966
* Support for recursive vector arguments and other data types by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1051
* Allow user to directly specify mapping topology file by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1084
* Pre-built binaries, installer, and building from source guide by bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/1010
* Introducing `remote-mqpu` REST Server-Client platform by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1012
Bug Fixes 🐛
* Make C++ ASTBridge specification adherent for operation broadcasting by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/876
* Fix missing ctrl-swap support by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/918
* Fix WireType compliance issues with qubit-mapping pass by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/932
* Reduce GPU memory usage when using reset(q) in user programs by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/942
* Fix for misleading CUDA not found message by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/986
* Fixes for `tensornet` backend not picking up MPI by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/974
* Fix bug in sampling a kernel with mz-reset-mz pattern (overwriting sample_result register) by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/997
* Fix ghost qubit bug 981 by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/998
* Hide error message while checking for GPUs in Python workflow by khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/995
* Fix density matrix qubit ordering bug by anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/1033
* Fix library mode qubit ordering bug. by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1044
* Patch density matrix bug in release mode by anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/1053
* Fix issue 1064: bug in bridge when lambda argument contains a loop. by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1069
* Improve thread-safety of CUDAQ static variables by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1078
* Chemistry related bug fixes by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1099
* Fix bug 1108 - race condition in sample_async by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1114
Documentation Updates ✏️
* Fixing typos and copy editing for docs by mmvandieren in https://github.com/NVIDIA/cuda-quantum/pull/896
* Add documentation and test for mixed language project by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1085
* MPI plugin docs by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1095
* Adding a section on updating CUDA Quantum to docs by bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/1112
Other Changes
* Add new pass, linear-ctrl-form by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/853
* Add a MeasureType to Quake by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/869
* Deprecate builder ctrl gates that are not specification compliant by anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/935
* Add ability to create shared library to the driver by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/985
* Improved support for kernel return values by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1009
* Deprecating qreg and qspan by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/983
* Support for return vectors of type std::vector<NT> where NT is a numerical type by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1014
* Ability to pass custom passes from `nvq++` by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1034
* Add support for vectors of vectors to the bridge. by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1036
* Support controlled-SWAP's in kernel builder by anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/924
* Partial support for passing/return POD struct values. by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1054
* Process initializer lists for struct types in the bridge. by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1068
* Enable use of single-term spin_op with kernel_builder::exp_pauli by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1071

New Contributors
* mmvandieren made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/896
* jjacobelli made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/832
* Yaraslaut made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1038

**Full Changelog**: https://github.com/NVIDIA/cuda-quantum/compare/0.5.0...0.6.0

Release created by workflow [7702894514](https://github.com/NVIDIA/cuda-quantum/actions/runs/7702894514).<br/>GitHub commit [e0fb95f99b955acca530fcedeb3acd109d9d0183](https://github.com/NVIDIA/cuda-quantum/tree/e0fb95f99b955acca530fcedeb3acd109d9d0183)

0.5.0

With 0.5.0 we have added support for quantum kernel execution on OQC and IQM backends. For more information, see our [docs](https://nvidia.github.io/cuda-quantum/latest/using/hardware.html). CUDA Quantum now allows to executing adaptive quantum kernels on quantum hardware backends that support it. The 0.5.0 release furthermore improves the tensor network simulation tools and adds a [matrix product state simulator](https://nvidia.github.io/cuda-quantum/latest/using/simulators.html#matrix-product-state).

Additionally, we are now publishing images for experimental features, which currently includes improved Python language support. Please take a look at our [installation guide](https://nvidia.github.io/cuda-quantum/latest/install.html) for more information about how to obtain them.

What's Changed

Features and Enhancements 🎉

* Support for submission to OQC backends by jfriel-oqc in <https://github.com/NVIDIA/cuda-quantum/pull/435>
* Support for submission to IQM backends by kukushechkin in <https://github.com/NVIDIA/cuda-quantum/pull/468>
* Add more support for std::vector and (C style) arrays. by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/714>
* Optimized support for applying exponentials of Paulis by amccaskey in <https://github.com/NVIDIA/cuda-quantum/pull/660>
* Additional kernels for chemistry applications by 1tnguyen in <https://github.com/NVIDIA/cuda-quantum/pull/731>
* Support for adaptive quantum kernels on (certain) quantum hardware backends by bmhowe23 in <https://github.com/NVIDIA/cuda-quantum/pull/741>
* Adding photonics execution manager by Omar-ORCA in <https://github.com/NVIDIA/cuda-quantum/pull/515>
* Delay measurements if necessary when targeting quantum hardware backends by bmhowe23 in <https://github.com/NVIDIA/cuda-quantum/pull/761>
* Enable while loop normalization and unrolling by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/830>
* Support ranged for-loops when targeting quantum hardware backends by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/833>
* Enable deployments for experimental branches by bettinaheim in <https://github.com/NVIDIA/cuda-quantum/pull/880>
* Open-source tensornet simulator and add tensornet-mps simulator backend by 1tnguyen in <https://github.com/NVIDIA/cuda-quantum/pull/863>

Bug Fixes 🐛

* Support Volta+ arch in custatevec backend by 1tnguyen in <https://github.com/NVIDIA/cuda-quantum/pull/696>
* Fix bug with unwind lowering. by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/744>
* Fix incorrect handling of measurements in value semantics representation by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/752>
* Fix 781: Handle loops that include mid-circuit measurements by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/787>
* Legalization error in basis conversion. by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/794>
* Better error messages for unsupported statements in kernels by bmhowe23 in <https://github.com/NVIDIA/cuda-quantum/pull/808>
* Fix logical `&&` operator in `__qpu__` kernels by bmhowe23 in <https://github.com/NVIDIA/cuda-quantum/pull/811>
* Fix bug in loop normalization. by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/807>
* Fix ternary operator in `__qpu__` kernels by bmhowe23 in <https://github.com/NVIDIA/cuda-quantum/pull/815>
* Added missing GIL-safe implementation for `pySampleAsync` by 1tnguyen in <https://github.com/NVIDIA/cuda-quantum/pull/828>
* Support 2-d broadcast for observe by 1tnguyen in <https://github.com/NVIDIA/cuda-quantum/pull/829>
* Fix GKE bug for quantum kernels that take with std::vector arguments by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/841>
* Enable diagnostics for invalid kernel argument types. by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/844>
* Fix compiler crash when casting from floating to boolean by bmhowe23 in <https://github.com/NVIDIA/cuda-quantum/pull/852>
* Fix kernel builder c_if qubit extraction bug by anthony-santana in <https://github.com/NVIDIA/cuda-quantum/pull/857>
* Fix an issue due to an ABI differences between ARM and x86 architectures by 1tnguyen in <https://github.com/NVIDIA/cuda-quantum/pull/878>

Breaking Changes 🛠

* Modifying default target to be GPU, if present by khalatepradnya in <https://github.com/NVIDIA/cuda-quantum/pull/842>
* Fix broadcasting behavior and log a warning for behavior change by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/898>
* Update cuQuantum version to 23.10 by 1tnguyen in <https://github.com/NVIDIA/cuda-quantum/pull/863>

Documentation Updates ✏️

* Add documentation for OQC backends by owen-oqc in <https://github.com/NVIDIA/cuda-quantum/pull/816>
* Add documentation for IQM backends by kukushechkin in <https://github.com/NVIDIA/cuda-quantum/pull/562>
* Add C++ noise modeling examples to our docs by 1tnguyen in <https://github.com/NVIDIA/cuda-quantum/pull/818>
* Add state class to documentation by anthony-santana in <https://github.com/NVIDIA/cuda-quantum/pull/790>
* Update install guide and fixing tutorials by bettinaheim in <https://github.com/NVIDIA/cuda-quantum/pull/860>
* Adding documentation about default target and the environment variable to override it by khalatepradnya in <https://github.com/NVIDIA/cuda-quantum/pull/899>
* Documentation for `tensornet` and `tensornet-mps` backends by 1tnguyen in <https://github.com/NVIDIA/cuda-quantum/pull/871>
* Add documentation and tweaks for using CUDA Quantum in DGX Cloud by bettinaheim in <https://github.com/NVIDIA/cuda-quantum/pull/905>

Other Changes

* Support vector front/back by anthony-santana in <https://github.com/NVIDIA/cuda-quantum/pull/702>
* Implement `get_state_async` for mqpu platform by 1tnguyen in <https://github.com/NVIDIA/cuda-quantum/pull/766>
* Limited support for executing loops with break statements on quantum hardware backends by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/768>
* Implement the combine rotation peephole optimization. by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/772>
* Add support for cudaq::range(N). by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/736>
* Support for additional controlled gates in python by anthony-santana in <https://github.com/NVIDIA/cuda-quantum/pull/784>
* Deprecate exp_val_z/expectation_z in favor of `expectation` by anthony-santana in <https://github.com/NVIDIA/cuda-quantum/pull/791>
* Better support for `QuakeValue` in Python by 1tnguyen in <https://github.com/NVIDIA/cuda-quantum/pull/809>
* Implement a loop peeling pass. by schweitzpgi in <https://github.com/NVIDIA/cuda-quantum/pull/824>
* Create qubit-mapping pass by boschmitt in <https://github.com/NVIDIA/cuda-quantum/pull/610>
* Incorporate new qubit-mapping pass for IQM backends by bmhowe23 in <https://github.com/NVIDIA/cuda-quantum/pull/837>
* Incorporate new qubit-mapping pass for OQC backends by bmhowe23 in <https://github.com/NVIDIA/cuda-quantum/pull/838>
* Add `error_mitigation` and `sharpen` configurations to IonQ backend by splch in <https://github.com/NVIDIA/cuda-quantum/pull/470>
* Allow for multiple controls and targets in rotation gates by anthony-santana in <https://github.com/NVIDIA/cuda-quantum/pull/835>
* Removing password prompt and other ergonomic changes for Docker images by bettinaheim in <https://github.com/NVIDIA/cuda-quantum/pull/820>
* Allow the environment variable to override the default target by khalatepradnya in <https://github.com/NVIDIA/cuda-quantum/pull/877>
* Publish cuda-quantum images only to NGC, removing pushes to GHCR by bettinaheim in <https://github.com/NVIDIA/cuda-quantum/pull/900>

New Contributors

* owen-oqc made their first contribution in <https://github.com/NVIDIA/cuda-quantum/pull/780>
* Omar-ORCA made their first contribution in <https://github.com/NVIDIA/cuda-quantum/pull/515>
* khalatepradnya made their first contribution in <https://github.com/NVIDIA/cuda-quantum/pull/842>

**Full Changelog**: <https://github.com/NVIDIA/cuda-quantum/compare/0.4.1...0.5.0>
Release created by workflow [6915068190](https://github.com/NVIDIA/cuda-quantum/actions/runs/6915068190).

0.4.1

The 0.4.1 release adds support for ARM processors in the form of multi-platform Docker images and aarch64 Python wheels. Additionally, all GPU-based backends are now included in the Python wheels as well as in the Docker image.

<!-- Release notes generated using configuration in .github/release.yml at 2694e6828368154e0b1ac916f9ecaa4d2f3ec7ee -->

What's Changed
Features and Enhancements 🎉
* Expose adjoint T and S gates to python builder API by anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/402
* Added kernel_builder functions for the hardware efficient ansatz 361 by johanneskuhlmann in https://github.com/NVIDIA/cuda-quantum/pull/451
* Adding nvidia backends to python wheels by bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/480
* Multi-platform Docker images and aarch64 wheels by bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/548
* Implement CUDA Quantum Kernel from State Vector. by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/568
* Enable std::vector<T> construction within kernels by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/593
Bug Fixes 🐛
* Support Volta+ arch in custatevec backend by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/696
* Accurately detect mx/my mid-circuit measurements by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/415
* Bug fix to support multiple single qubit allocations on quantum backends by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/474
* Fix missing support for R1 decomposition by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/471
* Fix 475: bug with measurement operations in value semantics by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/491
* Fix 303 - release build segfault by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/502
* Fixes bug with null_wire. by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/504
* Fix bug in bit flip noise channel by anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/528
* [Support] Closes 532: change backtrace error message by boschmitt in https://github.com/NVIDIA/cuda-quantum/pull/534
* Fix 523 and std::unique bug in CircuitSimulator by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/526
* Fix compiler crash when processing empty region by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/552
* Bug fixes for `nvq++` arguments by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/549
* Add spin_op::from_word(...) by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/555
* Add multi-control decomposition to IONQ pipeline by boschmitt in https://github.com/NVIDIA/cuda-quantum/pull/566
* Support QASM emission for CallOps by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/563
* Convert IonQ outputs to bit strings and correct order by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/575
* Canonicalizations for ConcatOp and ExtractRefOp by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/574
* [custatevec] `getStateData` to return data consistent with qpp and `cudaq::from_state` by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/582
* Allow more descriptive output names by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/580
* Fix for issue 603: QASM emission by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/604
* Fix bug when using gcc-11 header files. by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/613
* Fix issues with get_state() in Python by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/616
* [Opt] Fix use after free (erase) in mem2reg by boschmitt in https://github.com/NVIDIA/cuda-quantum/pull/628
* Fix for issue 641: QASM export by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/649
* Only enable optimization in non-empty kernels by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/656
* Add the ability to pass additional command line options by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/647
Documentation Updates ✏️
* Clarifying documentation for GPU-based simulators by bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/738
* Document CUDA library dependencies for Python wheels by anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/716
* Updating docs on built-in operations by bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/719
* Document GPU and CPU requirements by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/707
* Adding mqpu documentation by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/708
* Fixed code snippets using wrong kernel_builder APIs by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/479
* Cleanup the MLIR Pass advanced document, add a FileCheck test by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/547
* Refactor python documentation and update examples by anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/581
* Adding tutorials folder with example notebooks by zohimchandani in https://github.com/NVIDIA/cuda-quantum/pull/560
Other Changes
* Update unwind-lowering pass to be more general by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/389
* Improve synthesis. by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/401
* updating cuquantum and cutensor versions by bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/422
* Add environment variable allowing one to print the IR before remote submission by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/427
* Issue 274: Migrate the fixup-linkage script to C++ by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/497
* Add cudaq::set_random_seed() by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/477
* Python sample() and observe() implement broadcasting by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/495
* Add option to set the noise model when using the IonQ-hosted simulator by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/536
* Add all_gather function for MPI by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/516
* Enable one to progressively build a Kernel with the kernel_builder by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/558
* Implement spin_op::to_sparse_matrix(). by amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/567
* Rewrite the AST Bridge. by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/587
* Adjustments to support libc++ in the AST Bridge by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/594
* Improve reproducibility of results by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/617
* More precise representation of the dataflow in Quake value semantics by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/625
* Add get_random_seed() to make broadcast tests repeatable by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/648
* Modify Quake::ApplyOp to allow an indirect form of call in order to by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/663
* Improve measurement support for submissions to IonQ by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/661
* Add ctrl-t and ctrl-s decomposition via r1 conversion by 1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/672
* Introduce sample_options and observe_options for addl flexibility by bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/664
* Fix 633: Bump the LLVM version to 16.0.6. by schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/676

New Contributors
* orclassiq made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/394
* johanneskuhlmann made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/451
* jrhemstad made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/447
* kukushechkin made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/468
* ajschmidt8 made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/585
* jfriel-oqc made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/435
* zohimchandani made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/560

**Full Changelog**: https://github.com/NVIDIA/cuda-quantum/compare/0.4.0...0.4.1
Release created by workflow [6408359768](https://github.com/NVIDIA/cuda-quantum/actions/runs/6408359768).

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.