Skip to main content

PyTorch Quantum Machine Learning with cuQuantum - Fast Adjoint Differentiation

Project description

torchqml

PyTorch Quantum Machine Learning with cuQuantum - Fast Adjoint Differentiation

Features

  • Adjoint Differentiation: O(G) gradient calculation using cuQuantum's custatevec and optimized C++ kernels.
  • PyTorch Native: Fully integrated with torch.autograd and torch.nn.
  • High Performance: Custom C++/CUDA extension reusing cuStateVec/cuBLAS handles for minimize overhead.

Performance

TorchQML outperforms PennyLane's lightning.gpu backend significantly on NVIDIA GPUs (measured on T4):

Qubits Layers TorchQML (ms) PennyLane (ms) Speedup
4 5 5.72 16.99 3.0x
8 10 13.18 48.69 3.7x
12 10 24.29 69.65 2.9x

Installation

pip install .

Usage

import torch
import torchqml as tq

# Build circuit
qc = tq.QuantumCircuit(2)
qc.h(0)
qc.ry(0, param_index=0)
qc.cx(0, 1)

# Parameters
params = torch.tensor([[0.5]], requires_grad=True)

# Expectation
exp_val = qc.expectation(params, tq.Z(0))

# Backward
exp_val.backward()
print(params.grad)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

torchqml-0.1.3.tar.gz (16.4 kB view details)

Uploaded Source

File details

Details for the file torchqml-0.1.3.tar.gz.

File metadata

  • Download URL: torchqml-0.1.3.tar.gz
  • Upload date:
  • Size: 16.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for torchqml-0.1.3.tar.gz
Algorithm Hash digest
SHA256 f2ba1be1aab82d26e1d5341b9670e244e0182517ff71460bd9406c9ac6f46446
MD5 0edae7004521e57a913e0a4ca9316799
BLAKE2b-256 61adb5e9ec4bbdfe9941ce38dac7aa773f4acd6681ff4ad801cb5230a56aec80

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page