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