3 research outputs found

    CUDA Quantum

    No full text
    <p>CUDA Quantum is now available <a href="https://pypi.org/project/cuda-quantum/">on PyPI</a>! For the initial PyPI release, the NVIDIA multi-gpu and tensornet backends are not yet included. Check out our Docker images <a href="https://catalog.ngc.nvidia.com/orgs/nvidia/containers/cuda-quantum">on NGC</a> to obtain the fully featured version, or build it from source using the release assets. With 0.4.0 we have added support for quantum kernel execution on Quantinuum and IonQ backends. For more information, see our <a href="https://nvidia.github.io/cuda-quantum/latest/using/hardware.html">docs</a>. As always, we welcome questions and feedback in the form of <a href="https://github.com/NVIDIA/cuda-quantum/issues/new/choose">issues</a> and <a href="https://github.com/NVIDIA/cuda-quantum/discussions">discussions</a> on this repository.</p> <!-- Release notes generated using configuration in .github/release.yml at b2abbaa6b021ffa5c9619dcf0530c1284b9c2208 --> What's Changed Features and Enhancements <ul> <li>Implement cudaq::control() taking a free function as argument by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/35">https://github.com/NVIDIA/cuda-quantum/pull/35</a></li> <li>Add reset to kernel_builder in C++ and python. by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/18">https://github.com/NVIDIA/cuda-quantum/pull/18</a></li> <li>Add for_loop to cudaq::kernel_builder and cudaq.Kernel by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/19">https://github.com/NVIDIA/cuda-quantum/pull/19</a></li> <li>Optimization: do not add control qubits to compute/uncompute steps of compute_action idiom. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/63">https://github.com/NVIDIA/cuda-quantum/pull/63</a></li> <li>Expose for_each_term and for_each_pauli to python by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/56">https://github.com/NVIDIA/cuda-quantum/pull/56</a></li> <li>Implement spin_op::to_matrix() by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/31">https://github.com/NVIDIA/cuda-quantum/pull/31</a></li> <li>Add support for negate operator (operator!) to cudaq::control. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/81">https://github.com/NVIDIA/cuda-quantum/pull/81</a></li> <li>Improve the ExecutionManager Extension Point by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/33">https://github.com/NVIDIA/cuda-quantum/pull/33</a></li> <li>Performance enhancements: observe_n and sample_n broadcast functions by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/74">https://github.com/NVIDIA/cuda-quantum/pull/74</a></li> <li>spin_op performance enhancement by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/115">https://github.com/NVIDIA/cuda-quantum/pull/115</a></li> <li>Implement chemistry domain sub-package. by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/112">https://github.com/NVIDIA/cuda-quantum/pull/112</a></li> <li>[optimizer] Decomposition pass by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/143">https://github.com/NVIDIA/cuda-quantum/pull/143</a></li> <li>Increase performance of quantum allocation and deallocation in simulation by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/167">https://github.com/NVIDIA/cuda-quantum/pull/167</a></li> <li>Basis translation pass by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/144">https://github.com/NVIDIA/cuda-quantum/pull/144</a></li> <li>Implement runtime quantum operation tracing by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/92">https://github.com/NVIDIA/cuda-quantum/pull/92</a></li> <li>[optimizer] Multicontrol decomposition by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/194">https://github.com/NVIDIA/cuda-quantum/pull/194</a></li> <li>Add Server Helper for Quantinuum backends by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/176">https://github.com/NVIDIA/cuda-quantum/pull/176</a></li> <li>Expose SWAP gate to c++ and python builder by @anthony-santana in <a href="https://github.com/NVIDIA/cuda-quantum/pull/200">https://github.com/NVIDIA/cuda-quantum/pull/200</a></li> <li>[opt] Add memtoreg and regtomem passes. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/233">https://github.com/NVIDIA/cuda-quantum/pull/233</a></li> <li>Added forward difference gradient evaluation. by @poojarao8 in <a href="https://github.com/NVIDIA/cuda-quantum/pull/107">https://github.com/NVIDIA/cuda-quantum/pull/107</a></li> <li>Local emulation of remote qpu execution by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/262">https://github.com/NVIDIA/cuda-quantum/pull/262</a></li> <li>Implement MPI support in CUDA Quantum by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/237">https://github.com/NVIDIA/cuda-quantum/pull/237</a></li> <li>[pass] Add a loop normalization pass. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/313">https://github.com/NVIDIA/cuda-quantum/pull/313</a></li> <li>Linux support for pip installation by @anthony-santana in <a href="https://github.com/NVIDIA/cuda-quantum/pull/304">https://github.com/NVIDIA/cuda-quantum/pull/304</a> ### Bug Fixes </li> <li>Add overload to handle the case when the user writes: by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/32">https://github.com/NVIDIA/cuda-quantum/pull/32</a></li> <li>Do not allow operator! on target qubits. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/6">https://github.com/NVIDIA/cuda-quantum/pull/6</a></li> <li>Temporary fix for AST visitor reentrancy bugs. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/22">https://github.com/NVIDIA/cuda-quantum/pull/22</a></li> <li>Fix bug 69, no expval attached to <code>observe_result</code> when shots aren't provided by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/70">https://github.com/NVIDIA/cuda-quantum/pull/70</a></li> <li>Fix <code>QuakeValue</code> Lifetime Bug and <code>kernel_builder::to_quake</code> Handling by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/67">https://github.com/NVIDIA/cuda-quantum/pull/67</a></li> <li>Adding r-val overload (QuakeValue &&) for kernel_builder adjoint modifier by @1tnguyen in <a href="https://github.com/NVIDIA/cuda-quantum/pull/99">https://github.com/NVIDIA/cuda-quantum/pull/99</a></li> <li>[CircuitCheck] Handle qvec as controls by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/128">https://github.com/NVIDIA/cuda-quantum/pull/128</a></li> <li>[common-ops] Fixes some matrices (row-major vs col-major) issues by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/133">https://github.com/NVIDIA/cuda-quantum/pull/133</a></li> <li>[quake] Fixes some matrices (row-major vs col-major) issues by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/140">https://github.com/NVIDIA/cuda-quantum/pull/140</a></li> <li>Fix #129, Make kernel_builder::qalloc(1) explicitly return a qvec. by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/136">https://github.com/NVIDIA/cuda-quantum/pull/136</a></li> <li><code>QuakeBridgeVisitor</code> to handle <code>cphase</code> by @1tnguyen in <a href="https://github.com/NVIDIA/cuda-quantum/pull/132">https://github.com/NVIDIA/cuda-quantum/pull/132</a></li> <li>cudaq-ensmallen not export BLAS symbols by @1tnguyen in <a href="https://github.com/NVIDIA/cuda-quantum/pull/185">https://github.com/NVIDIA/cuda-quantum/pull/185</a></li> <li>Fixed a subtle bug in <code>QppCircuitSimulator::observe</code> by @1tnguyen in <a href="https://github.com/NVIDIA/cuda-quantum/pull/189">https://github.com/NVIDIA/cuda-quantum/pull/189</a></li> <li>Bind r1 gate to python by @anthony-santana in <a href="https://github.com/NVIDIA/cuda-quantum/pull/198">https://github.com/NVIDIA/cuda-quantum/pull/198</a></li> <li>Fixed <code>QppCircuitSimulator</code> shots <code>ExecutionResult.expectationValue</code> by @1tnguyen in <a href="https://github.com/NVIDIA/cuda-quantum/pull/208">https://github.com/NVIDIA/cuda-quantum/pull/208</a></li> <li>Fixing segfault crashes when using measure/reset ops. by @1tnguyen in <a href="https://github.com/NVIDIA/cuda-quantum/pull/217">https://github.com/NVIDIA/cuda-quantum/pull/217</a></li> <li>Fix #250: linkage of top-level (global) function. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/267">https://github.com/NVIDIA/cuda-quantum/pull/267</a></li> <li>Reset and parametric gates in <code>kernel_builder</code> by @1tnguyen in <a href="https://github.com/NVIDIA/cuda-quantum/pull/269">https://github.com/NVIDIA/cuda-quantum/pull/269</a></li> <li>Fix #251: Base profile should handle single qubit allocations. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/273">https://github.com/NVIDIA/cuda-quantum/pull/273</a></li> <li>Fix #281: let canonicalization pattern work with IndexType. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/282">https://github.com/NVIDIA/cuda-quantum/pull/282</a></li> <li>Fix #286: Add canonicalization to hoist invariants cc.loop arguments. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/289">https://github.com/NVIDIA/cuda-quantum/pull/289</a></li> <li>Fix #296: issue processing if-statements in JIT compilation by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/298">https://github.com/NVIDIA/cuda-quantum/pull/298</a></li> <li>[pass] Fix #291: don't erase non-controlled ops by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/292">https://github.com/NVIDIA/cuda-quantum/pull/292</a></li> <li>Fix #325: Bridge had some bugs with callable instances. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/326">https://github.com/NVIDIA/cuda-quantum/pull/326</a></li> <li>Fix issue with qreg of dynamic size and disappearing instructions by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/358">https://github.com/NVIDIA/cuda-quantum/pull/358</a></li> <li>Fix #344 - add support for std::uint8_t kernel argument by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/356">https://github.com/NVIDIA/cuda-quantum/pull/356</a></li> <li>Fix kernel_builder nested function call bug, #332 by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/334">https://github.com/NVIDIA/cuda-quantum/pull/334</a></li> <li>Fix #338: Work on implementation of cudaq::adjoint. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/374">https://github.com/NVIDIA/cuda-quantum/pull/374</a> ### Breaking Changes </li> <li>Remove qpud by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/91">https://github.com/NVIDIA/cuda-quantum/pull/91</a></li> <li>Delete qtx-translate and references to same. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/102">https://github.com/NVIDIA/cuda-quantum/pull/102</a></li> <li>Remove outdated functions from cudaq.py by @anthony-santana in <a href="https://github.com/NVIDIA/cuda-quantum/pull/105">https://github.com/NVIDIA/cuda-quantum/pull/105</a></li> <li>[CircuitCheck] Remove QTX support by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/118">https://github.com/NVIDIA/cuda-quantum/pull/118</a></li> <li>[quake] Universally replace the QRef type name with Ref. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/160">https://github.com/NVIDIA/cuda-quantum/pull/160</a></li> <li>[quake] Universal conversion of QVec to Veq. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/163">https://github.com/NVIDIA/cuda-quantum/pull/163</a></li> <li>Removes the QTX dialect by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/157">https://github.com/NVIDIA/cuda-quantum/pull/157</a></li> <li>NVQ++ Targets by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/147">https://github.com/NVIDIA/cuda-quantum/pull/147</a></li> <li>Update python command line flags by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/187">https://github.com/NVIDIA/cuda-quantum/pull/187</a></li> <li>[nfc] Remove the raise to affine (stub) pass. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/235">https://github.com/NVIDIA/cuda-quantum/pull/235</a> ### Documentation Updates ✏️</li> <li>Refer to GitHub for building from source instructions, by @bettinaheim in <a href="https://github.com/NVIDIA/cuda-quantum/pull/40">https://github.com/NVIDIA/cuda-quantum/pull/40</a></li> <li>Documentation update for control qubit negation by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/86">https://github.com/NVIDIA/cuda-quantum/pull/86</a></li> <li>Fixes to common operations definitions by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/120">https://github.com/NVIDIA/cuda-quantum/pull/120</a></li> <li>Update circuit simulator documentation to reflect the latest refactoring by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/90">https://github.com/NVIDIA/cuda-quantum/pull/90</a></li> <li>Update the documentation to reflect the new unified dialect by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/153">https://github.com/NVIDIA/cuda-quantum/pull/153</a></li> <li>Make the CC ops documentation more uniform. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/150">https://github.com/NVIDIA/cuda-quantum/pull/150</a></li> <li>[docs] Small fixes to quake dialect example by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/165">https://github.com/NVIDIA/cuda-quantum/pull/165</a> ### Other Changes</li> <li>Revert change to disable jump branching. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/5">https://github.com/NVIDIA/cuda-quantum/pull/5</a></li> <li>Replace the old deallocation pass. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/30">https://github.com/NVIDIA/cuda-quantum/pull/30</a></li> <li>Make use of the various math dialect power operations. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/71">https://github.com/NVIDIA/cuda-quantum/pull/71</a></li> <li>[nvq++] Add RPATH flags only to the final binary by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/52">https://github.com/NVIDIA/cuda-quantum/pull/52</a></li> <li>CircuitSimulator Refactor by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/12">https://github.com/NVIDIA/cuda-quantum/pull/12</a></li> <li>Add a wire type to the quake dialect. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/101">https://github.com/NVIDIA/cuda-quantum/pull/101</a></li> <li>Add new ops to quake. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/109">https://github.com/NVIDIA/cuda-quantum/pull/109</a></li> <li>Link to correct version of custatvec libs by @hamidelmaazouz in <a href="https://github.com/NVIDIA/cuda-quantum/pull/88">https://github.com/NVIDIA/cuda-quantum/pull/88</a></li> <li>[CircuitCheck] Run canonicalizer before checking by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/122">https://github.com/NVIDIA/cuda-quantum/pull/122</a></li> <li>Convert the quake dialect ops to support both memory and register forms. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/124">https://github.com/NVIDIA/cuda-quantum/pull/124</a></li> <li>Change qextract to extract_ref everywhere. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/138">https://github.com/NVIDIA/cuda-quantum/pull/138</a></li> <li>Add types for structs and arrays to CC by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/146">https://github.com/NVIDIA/cuda-quantum/pull/146</a></li> <li>[quake] OperatorInterface method to get negated controls by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/154">https://github.com/NVIDIA/cuda-quantum/pull/154</a></li> <li>[CircuitCheck] Handle negated controls by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/159">https://github.com/NVIDIA/cuda-quantum/pull/159</a></li> <li>Fold constant into extract_ref op by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/164">https://github.com/NVIDIA/cuda-quantum/pull/164</a></li> <li>[CircuitCheck] Handle raw index in ExtractRefOp by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/168">https://github.com/NVIDIA/cuda-quantum/pull/168</a></li> <li>[cc] Start adding some LLVM-like operations. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/192">https://github.com/NVIDIA/cuda-quantum/pull/192</a></li> <li>[CircuitCheck] Handle local qubits by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/190">https://github.com/NVIDIA/cuda-quantum/pull/190</a></li> <li>[quake, cc] Improved alloca ops by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/193">https://github.com/NVIDIA/cuda-quantum/pull/193</a></li> <li>Fixes for macOS by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/213">https://github.com/NVIDIA/cuda-quantum/pull/213</a></li> <li>[bridge, runtime] Replace use of LLVM-IR dialect in the bridge and python interface with CC dialect operations. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/201">https://github.com/NVIDIA/cuda-quantum/pull/201</a></li> <li>[cc] Add a folder to compute_ptr op. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/220">https://github.com/NVIDIA/cuda-quantum/pull/220</a></li> <li>[cg] Move GenKernelExecution to CC dialect. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/225">https://github.com/NVIDIA/cuda-quantum/pull/225</a></li> <li>Remove the use of the MLIR Memref dialect. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/226">https://github.com/NVIDIA/cuda-quantum/pull/226</a></li> <li>Load available simulators and platforms lazily in Python by @amccaskey in <a href="https://github.com/NVIDIA/cuda-quantum/pull/239">https://github.com/NVIDIA/cuda-quantum/pull/239</a></li> <li>[opt] Expand loop unrolling to autodetect counted loops. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/265">https://github.com/NVIDIA/cuda-quantum/pull/265</a></li> <li>[pass] Decompose aggregate quantum allocations into multiple individual qubit allocations by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/280">https://github.com/NVIDIA/cuda-quantum/pull/280</a></li> <li>[opt] Flag to raise an error if cannot unroll a loop by @boschmitt in <a href="https://github.com/NVIDIA/cuda-quantum/pull/295">https://github.com/NVIDIA/cuda-quantum/pull/295</a></li> <li>Preserve the line information in the source code for JIT compilation. by @schweitzpgi in <a href="https://github.com/NVIDIA/cuda-quantum/pull/299">https://github

    CUDA Quantum

    No full text
    <p>The 0.7.0 release adds support for using NVIDIA Quantum Cloud, 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 documentation to learn more about the new Python syntax support we have added, and follow our blog to learn more about the new setup and its performance benefits.</p> <h2>What's Changed</h2> <h3>Features and Enhancements </h3> <ul> <li>NVCF integration by @1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1148</li> <li>Enable CUDA Quantum language specification in Python by @khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/1312</li> <li>Support for composable aggregate argument types, such as e.g. vectors of structs by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1080</li> <li>Kernel builder JIT cache optimizations by @bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1206</li> <li>Optimize LLVM JIT for large circuits by @bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1261</li> <li>Unitary circuit drawing by @amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1299</li> </ul> <h3>Bug Fixes </h3> <ul> <li>Fix issue with argument checking on kernel_builder apply_call by @amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1131</li> <li>Don't throw fatal exception during 'import cudaq' if missing dependencies by @bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1152</li> <li>Fixes for the <code>remote-mqpu</code> platform by @1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1158</li> <li>Fix incorrect warning for IonQ command line parameters by @bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1173</li> <li>Fix non-created custatevec handle edge case by @1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1160</li> <li>Fix tensornet bug with async python functions by @amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1177</li> <li>Change <code>__global__</code> register bit ordering for target mode to match library mode by @bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1027</li> <li>Fix issue with handling nested <code>cudaq::adjoint</code> by @boschmitt in https://github.com/NVIDIA/cuda-quantum/pull/1217</li> <li>Handle LLVM errors via C++ exceptions in the REST server implementation by @1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1263</li> <li>Decode orca-url by @Omar-ORCA in https://github.com/NVIDIA/cuda-quantum/pull/1270</li> <li>Refresh remote seeds for executions within a client session by @1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1318</li> <li>Miscellaneous bug fixes for argument and return values by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1326</li> </ul> <h3>Breaking Changes </h3> <ul> <li>UCCSD API changes by @bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1386</li> </ul> <h3>Documentation Updates ✏️</h3> <ul> <li>Copy edits to the C++ examples on the website by @mmvandieren in https://github.com/NVIDIA/cuda-quantum/pull/951</li> <li>Copy edits made to Advanced sections and Tutorials by @mmvandieren in https://github.com/NVIDIA/cuda-quantum/pull/964</li> <li>Python example copy edits by @mmvandieren in https://github.com/NVIDIA/cuda-quantum/pull/947</li> <li>Build and install guide update by @bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/1188</li> <li>MPI related docs and commit update by @bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/1191</li> <li>Build from source guide - Python wheels by @bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/1220</li> </ul> <h3>Other Changes</h3> <ul> <li>Change internal qubit ordering by @boschmitt in https://github.com/NVIDIA/cuda-quantum/pull/1082</li> <li>Add support for CURL_CA_BUNDLE environment variable by @bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1213</li> <li>Options for OQC Toshiko machine by @owen-oqc in https://github.com/NVIDIA/cuda-quantum/pull/1195</li> <li>Optimize logger implementation by @bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1254</li> </ul> <h2>New Contributors</h2> <ul> <li>@justinlietz made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/960</li> </ul> <p><strong>Full Changelog</strong>: https://github.com/NVIDIA/cuda-quantum/compare/0.6.0...0.7.0 Release created by workflow <a href="https://github.com/NVIDIA/cuda-quantum/actions/runs/8332091498">8332091498</a>.</p>If you use this software, please cite it as below

    CUDA Quantum

    No full text
    <p><!-- Release notes generated using configuration in .github/release.yml at e0fb95f99b955acca530fcedeb3acd109d9d0183 --></p> <p>The 0.6.0 release contains improved support for various HPC scenarios. We have added a <a href="https://nvidia.github.io/cuda-quantum/0.6.0/install.html#distributed-computing-with-mpi">plugin infrastructure</a> for connecting CUDA Quantum with an existing MPI installation, and we've added a <a href="https://nvidia.github.io/cuda-quantum/0.6.0/using/cudaq/platform.html#remote-mqpu-platform">new platform target</a> that distributes workloads across multiple virtual QPUs, each simulated by one or more GPUs.</p> <p>Starting with 0.6.0, we are now also distributing <a href="https://nvidia.github.io/cuda-quantum/0.6.0/install.html#pre-built-binaries">pre-built binaries</a> for using CUDA Quantum with C++. The binaries are built against the <a href="https://www.gnu.org/software/libc/">GNU C library</a> version 2.28. We've added a detailed <a href="https://nvidia.github.io/cuda-quantum/0.6.0/data_center_install.html">Building from Source</a> guide to build these binaries for older <code>glibc</code> versions.</p> <h2>What's Changed</h2> <h3>Features and Enhancements </h3> <ul> <li>C++17 support by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/973</li> <li>MPI support as plugins by @1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/966</li> <li>Support for recursive vector arguments and other data types by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1051</li> <li>Allow user to directly specify mapping topology file by @bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/1084</li> <li>Pre-built binaries, installer, and building from source guide by @bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/1010</li> <li>Introducing <code>remote-mqpu</code> REST Server-Client platform by @1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1012</li> </ul> <h3>Bug Fixes </h3> <ul> <li>Make C++ ASTBridge specification adherent for operation broadcasting by @amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/876</li> <li>Fix missing ctrl-swap support by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/918</li> <li>Fix WireType compliance issues with qubit-mapping pass by @bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/932</li> <li>Reduce GPU memory usage when using reset(q) in user programs by @bmhowe23 in https://github.com/NVIDIA/cuda-quantum/pull/942</li> <li>Fix for misleading CUDA not found message by @khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/986</li> <li>Fixes for <code>tensornet</code> backend not picking up MPI by @1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/974</li> <li>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</li> <li>Fix ghost qubit bug #981 by @amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/998</li> <li>Hide error message while checking for GPUs in Python workflow by @khalatepradnya in https://github.com/NVIDIA/cuda-quantum/pull/995</li> <li>Fix density matrix qubit ordering bug by @anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/1033</li> <li>Fix library mode qubit ordering bug. by @amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1044</li> <li>Patch density matrix bug in release mode by @anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/1053</li> <li>Fix issue 1064: bug in bridge when lambda argument contains a loop. by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1069</li> <li>Improve thread-safety of CUDAQ static variables by @1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1078</li> <li>Chemistry related bug fixes by @amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1099</li> <li>Fix bug 1108 - race condition in sample_async by @amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1114</li> </ul> <h3>Documentation Updates ✏️</h3> <ul> <li>Fixing typos and copy editing for docs by @mmvandieren in https://github.com/NVIDIA/cuda-quantum/pull/896</li> <li>Add documentation and test for mixed language project by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1085</li> <li>MPI plugin docs by @1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1095</li> <li>Adding a section on updating CUDA Quantum to docs by @bettinaheim in https://github.com/NVIDIA/cuda-quantum/pull/1112</li> </ul> <h3>Other Changes</h3> <ul> <li>Add new pass, linear-ctrl-form by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/853</li> <li>Add a MeasureType to Quake by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/869</li> <li>Deprecate builder ctrl gates that are not specification compliant by @anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/935</li> <li>Add ability to create shared library to the driver by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/985</li> <li>Improved support for kernel return values by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1009</li> <li>Deprecating qreg and qspan by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/983</li> <li>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</li> <li>Ability to pass custom passes from <code>nvq++</code> by @1tnguyen in https://github.com/NVIDIA/cuda-quantum/pull/1034</li> <li>Add support for vectors of vectors to the bridge. by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1036</li> <li>Support controlled-SWAP's in kernel builder by @anthony-santana in https://github.com/NVIDIA/cuda-quantum/pull/924</li> <li>Partial support for passing/return POD struct values. by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1054</li> <li>Process initializer lists for struct types in the bridge. by @schweitzpgi in https://github.com/NVIDIA/cuda-quantum/pull/1068</li> <li>Enable use of single-term spin_op with kernel_builder::exp_pauli by @amccaskey in https://github.com/NVIDIA/cuda-quantum/pull/1071</li> </ul> <h2>New Contributors</h2> <ul> <li>@mmvandieren made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/896</li> <li>@jjacobelli made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/832</li> <li>@Yaraslaut made their first contribution in https://github.com/NVIDIA/cuda-quantum/pull/1038</li> </ul> <p><strong>Full Changelog</strong>: https://github.com/NVIDIA/cuda-quantum/compare/0.5.0...0.6.0</p> <p>Release created by workflow <a href="https://github.com/NVIDIA/cuda-quantum/actions/runs/7702894514">7702894514</a>.<br/>GitHub commit <a href="https://github.com/NVIDIA/cuda-quantum/tree/e0fb95f99b955acca530fcedeb3acd109d9d0183">e0fb95f99b955acca530fcedeb3acd109d9d0183</a></p>If you use this software, please cite it as below
    corecore