Release Notes¶
cuQuantum Appliance 22.11¶
We are on NVIDIA/cuQuantum GitHub Discussions! For any questions regarding (or exciting works built upon) cuQuantum, please feel free to reach out to us on GitHub Discussions.
Bug reports should still go to our GitHub issue tracker.
The following components included in the container are updated:
New features¶
Driver requirements¶
This cuQuantum Appliance 22.11 container release is based on NVIDIA CUDA 11.8.0. The minimum driver requirement is 470.57.02 to run Cirq/qsim Qiskit/cusvaer simulators.
cuQuantum Appliance 22.07-Cirq¶
The following components included in the container are updated:
New features¶
Add a new option
gpu_network
to specify the topology of GPU data transfer network. By specifying this option, data transfers between GPUs are optimally scheduled for either networks with switch (DGX A100/DGX-2) or full mesh networks (DGX Station A100/V100).Add a new option
max_fused_diagonal_gate_size
to enable gate fusion for diagonal gates.Support multi-GPU noisy circuit simulation.
Driver requirements¶
This cuQuantum Appliance 22.07-Cirq container release is based on NVIDIA CUDA 11.5.1. The minimum driver requirement is 470.52 to run Cirq/qsim simulator.
cuQuantum Appliance 22.03-Cirq¶
The following components included in the container are updated:
Resolved issues¶
Multi-GPU expectation value computation with 4 GPUs (thanks to the BNL/CERN team for reporting)
cuQuantum Appliance 22.02-Cirq¶
The container image for NVIDIA cuQuantum Appliance 22.02 Cirq is available on NGC.
A new multi-GPU simulator backend optimized for NVIDIA DGX A100 with the following features:
Sampling the state vector
Performing a measurement on the state vector
Full state vector simulation
Contents of the cuQuantum Appliance 22.02-Cirq container¶
This container contains a modified version of Google’s qsim. It is pre-built and install in the default conda environment at the following location in the container:
/opt/conda/lib/python3.8/site-packages/qsimcirq
The container also includes the following:
Driver requirements¶
This cuQuantum Appliance 22.02-Cirq container release is based on NVIDIA CUDA 11.5.1, which requires NVIDIA Driver release 450 or later.
GPU Requirements¶
This cuQuantum Appliance 22.02-Cirq container release supports CUDA compute capability 7.0 and higher. This corresponds to GPUs in the NVIDIA Volta, Turing, and Ampere GPU architecture families. For a list of CUDA GPUs and their compute capabilities, please refer to this page. When using the multi-GPU backend, all GPUs involved must be mutually peer-accessible.
Known Limitations¶
When using the multi-GPU backend:
Results from the multi-GPU backend may be aggregated in Python using a single thread. In some cases, this leads to longer-than-expected runtimes.
The largest gate or observable in a quantum circuit must not exceed the size of the smallest state-vector partition (e.g.) a 3-qubit circuit with a 3-qubit gate where
n_subsvs > 1
will produce an error.Noisy elements of a quantum circuit are ignored. The corresponding noiseless circuit is passed to the simulator backend.
Hybrid simulation is disabled.
The NVIDIA cuQuantum Appliance is based on the NVIDIA CUDA base container, and the NVIDIA container relies on constraints
using the NVIDIA_REQUIRE_*
to support CUDA compatibility checks.
There is a known issue with how the variable is defined in CUDA 11.5 and users may encounter the following error:
nvidia-container-cli: requirement error: unsatisfied condition: cuda>=11.5, please update your driver to a newer version ...
The suggested workaround is to disable the constraint checks either by defining the following environment variable:
NVIDIA_DISABLE_REQUIRE=1
or by using an additional option to Docker’s CLI when running the container:
--env NVIDIA_DISABLE_REQUIRE=1