NVIDIA CUDA Quantum
0.3.0

Contents

  • Getting Started
    • Docker Image
      • Install the Docker Image
      • Use CUDA Quantum in a Terminal
      • Use CUDA Quantum in VS Code
    • Build CUDA Quantum from Source
    • Next Steps
  • Learn the Basics
    • CUDA Quantum Prerequisites
    • Compiling CUDA Quantum Programs
    • What is a CUDA Quantum Kernel?
    • Allocating Quantum Memory
    • Runtime Versus Compile-time Kernels
    • Generic Library Functions
    • Creating Kernels at Runtime
    • Variational Algorithms
    • Asynchronous Execution
    • Debugging and Verbose Logging
  • Advanced Topics
    • Create a new NVQIR Simulator
      • CircuitSimulator
      • Let’s see this in action
    • Downstream CMake Integration
    • Working with CUDA Quantum IR
    • Create an MLIR Pass for CUDA Quantum
  • Examples
    • CUDA Quantum in C++
      • Introduction
      • Computing Expectation Values
      • Multi-control Synthesis
      • Simulations with cuQuantum
    • CUDA Quantum in Python
      • Introduction
      • Bernstein-Vazirani
      • Variational Quantum Eigensolver
      • Quantum Approximate Optimization Algorithm
  • Simulator Backends
    • State Vector Simulators
      • cuQuantum single-GPU
      • cuQuantum multi-node multi-GPU
      • OpenMP CPU-only
    • Tensor Network Simulators
      • cuQuantum multi-node multi-GPU
  • Specifications
    • Language Specification
      • 1. Machine Model
      • 2. Namespace
      • 3. Quantum Types
        • 3.1. cudaq::qudit<Levels>
        • 3.2. cudaq::qubit
        • 3.3. Quantum Containers
      • 4. Quantum Operators
        • 4.1. cudaq::spin_op
      • 5. Quantum Operations
        • 5.1. Operations on cudaq::qubit
      • 6. Quantum Kernels
        • 6.1. Kernel Composability
        • 6.2. Allowed Kernel Classical Function Invocations
      • 7. Sub-circuit Synthesis
      • 8. Control Flow
      • 9. Just-in-Time Kernel Creation
      • 10. Quantum Patterns
        • 10.1. Compute-Action-Uncompute
      • 11. Platform
      • 12. Algorithmic Primitives
        • 12.1. cudaq::sample
        • 12.2. cudaq::observe
        • 12.3. cudaq::optimizer
        • 12.4. cudaq::gradient
      • 13. Example Programs
        • 13.1. Hello World - Simple Bell State
        • 13.2. GHZ State Preparation and Sampling
        • 13.3. Quantum Phase Estimation
        • 13.4. Deuteron Binding Energy Parameter Sweep
        • 13.5. Grover’s Algorithm
        • 13.6. Iterative Phase Estimation
    • QTX Specification
      • General Introduction
      • Motivation
      • QTX Types
  • API Reference
    • C++ API
      • Operators
      • Quantum
      • Common
      • Noise Modeling
      • Kernel Builder
      • Algorithms
      • Platform
      • Namespaces
    • Python API
      • Program Construction
        • make_kernel()
        • Kernel
      • Kernel Execution
        • sample()
        • sample_async()
        • observe()
        • observe_async()
        • vqe()
      • Backend Configuration
        • set_noise()
        • unset_noise()
        • set_qpu()
        • list_qpus()
      • Data Types
        • QuakeValue
        • qubit
        • qreg
        • SpinOperator
        • spin.i()
        • spin.x()
        • spin.y()
        • spin.z()
        • SampleResult
        • AsyncSampleResult
        • ObserveResult
        • AsyncObserveResult
        • OptimizationResult
        • Optimizers
        • Gradients
        • Noisy Simulation
  • Other Versions
    • 0.3.0
NVIDIA CUDA Quantum
  • CUDA Quantum
  • View page source

CUDA Quantum¶

Welcome to the CUDA Quantum documentation page! You are browsing the documentation for 0.3.0 version of CUDA Quantum. You can find documentation for all released versions here.

CUDA Quantum is a single-source, modern C++ programming model and compiler platform for the quantum acceleration of existing heterogeneous computing architectures.

Contents

  • Getting Started
    • Docker Image
    • Build CUDA Quantum from Source
    • Next Steps
  • Learn the Basics
    • CUDA Quantum Prerequisites
    • Compiling CUDA Quantum Programs
    • What is a CUDA Quantum Kernel?
    • Allocating Quantum Memory
    • Runtime Versus Compile-time Kernels
    • Generic Library Functions
    • Creating Kernels at Runtime
    • Variational Algorithms
    • Asynchronous Execution
    • Debugging and Verbose Logging
  • Advanced Topics
    • Create a new NVQIR Simulator
    • Downstream CMake Integration
    • Working with CUDA Quantum IR
    • Create an MLIR Pass for CUDA Quantum
  • Examples
    • CUDA Quantum in C++
    • CUDA Quantum in Python
  • Simulator Backends
    • State Vector Simulators
    • Tensor Network Simulators
  • Specifications
    • Language Specification
    • QTX Specification
  • API Reference
    • C++ API
    • Python API
  • Other Versions
    • 0.3.0
Next

© Copyright 2023, NVIDIA Corporation & Affiliates.

Built with Sphinx using a theme provided by Read the Docs.