Home/SDKs/Compare

Compare Quantum SDKs

Side-by-side feature matrix for every major free quantum computing framework — find the right tool for your use case.

Full Feature Matrix

Feature
Qiskit
Cirq
PennyLane
Braket
CUDA-Q
Main Language
PythonPythonPythonPythonPython/C++
Local CPU sim
GPU simulator
CUDA acceleration
~ (aer-gpu)~ (lightning)✓✓
Max sim qubits
statevector, local
30+ (CPU)~2525+25 local34+ (GPU)
Differentiable
autograd/backprop
~ (partial)~ (TF)✓✓~ (plugin)~
QML support
~ (qiskit-ml)✓✓~~
Built-in VQE/QAOA
~~~
Noise modeling
✓✓✓✓
Pulse control
hardware-level
~
HLQuantum support
Best for
IBM hardwareGoogle AI / noiseQML / researchAWS ecosystemGPU performance

✓ = full support · ~ = partial/plugin · ✗ = not supported · * = via HLQuantum integration

Which SDK Should I Use?

Based on your primary use case:

First quantum project

Qiskit has the largest community, most tutorials, and free IBM QPU access. It's where most beginners start.

Quantum machine learning

PennyLane is purpose-built for QML — differentiable circuits with PyTorch, JAX, and TensorFlow integration.

Maximum simulation speed

CUDA-Q runs on NVIDIA GPUs and is 100–10,000× faster than CPU simulators for 20+ qubit circuits.

VQE / quantum chemistry

Qiskit Nature + PennyLane both have excellent VQE support. PennyLane's differentiability makes gradient-based optimization easier.

Best gate fidelity QPU

IonQ's trapped-ion systems offer the highest 2-qubit gate fidelities available, with all-to-all qubit connectivity.

AWS / cloud-native workflow

Braket integrates seamlessly with the AWS ecosystem. Supports multiple QPU providers and managed cloud simulators.

Google hardware or noise research

Cirq is purpose-built for NISQ circuits with detailed noise modeling. Direct access to Google Quantum AI hardware (by application).

Run on multiple backends

HLQuantum gives you a single API for all SDKs. Write one circuit, run on any backend with a flag change.

💡

Use all backends from one API

Instead of choosing, use HLQuantum to target Qiskit, Cirq, PennyLane, Braket, CUDA-Q, and IonQ from a single circuit. Switch with a flag — no rewrites.

python
result = hlq.run(qc, backend="qiskit") # IBM Aer result = hlq.run(qc, backend="cudaq") # NVIDIA GPU result = hlq.run(qc, backend="ionq", device="aria-1") # Real QPU