cuQuantum Appliance

type access

  • Operating System:

  • Terminal:

  • Shell:

  • Editor:

  • Package Manager:

  • Programming Language:

  • Database:

  • NVIDIA Libraries:

  • Extension:

type access

  • Operating System:

  • Terminal:

  • Shell:

  • Editor:

  • Package Manager:

  • Programming Language:

  • Database:

  • NVIDIA Libraries:

  • Extension:

type access

  • Operating System:

  • Terminal:

  • Shell:

  • Editor:

  • Package Manager:

  • Programming Language:

  • Database:

  • NVIDIA Libraries:

  • Extension:

NVIDIA cuQuantum Appliance is a highly performant multi-GPU quantum circuit simulation stack that enables developers to create and test quantum algorithms on classical computers, with the ability to simulate up to 60 qubits.

The toolkit contains NVIDIA’s cuStateVec and cuTensorNet libraries which optimize state vector and tensor network simulation, respectively. The cuTensorNet library functionality is accessible through Python for Tensor Network operations. With the cuStateVec libraries, NVIDIA provides the following simulators:

  • IBM’s Qiskit AER (Acoustic and Electric Resonator) frontend via cusvaer, NVIDIA’s distributed state vector backend solver.

  • A multi-GPU-optimized Google Cirq frontend via qsim, Google’s state vector simulator.

In addition to C APIs, cuQuantum also provides Python APIs via cuQuantum Python.

Note

Simulating quantum circuits using cuQuantum on NVIDIA GPUs enables algorithms research with performance and scale far beyond what can be achieved on quantum processing units (QPUs) today. The number of GPUs and the number of processes should be always power-of-2. This design is chosen for the optimal performance.

For basic usage of the integrated notebook environment, check the JupyterLab application.

Initialization

For information on how to use the Initialization parameter, please refer to the Initialization: Bash Script, Initialization: Conda Packages, and Initialization: PyPI Packages section of the documentation.

Run a Script in Batch Mode

The optional Batch mode parameter is used to run a Bash script (.sh) when the job starts. In this case the job ends immediately after the program runs.

Tutorials and Examples

Example scripts and Jupyter notebook tutorials to get started with Qiskit and Cirq are available in the default user's home folder.

Additional material is made available online by IBM Quantum Learning and Google Quantum AI.

Performance Benchmarks

The app integrates NVIDIA cuQuantum Performance Benchmark Suite. Both API-level and circuit benchmarks are available via command-line, e.g.:

$ cuquantum-benchmarks circuit --frontend cirq --backend qsim --benchmark qft --nqubits 16

For more details check here.