sfSuperfermion docs
Reference

Performance Benchmarks

Benchmark results: MPS 21–33x vs Qiskit Aer, adjoint gradient up to 800x vs PennyLane.

Superfermion's Rust simulation core delivers significant speedups over popular quantum computing frameworks. All benchmarks are reproducible via the run_benchpress.py script.

Simulation Benchmarks

Statevector Simulation

vs Qiskit Aer AerSimulator (statevector method). Single-threaded comparison on an x86_64 CPU.

CircuitQubitsSuperfermionQiskit AerSpeedup
GHZ2012 ms38 ms3.2x
Quantum Volume2018 ms65 ms3.6x
Clifford (1000 gates)208 ms35 ms4.4x
Random SU(2)2022 ms68 ms3.1x

Stabilizer Simulation

Clifford-only circuits on the word-packed stabilizer backend.

CircuitQubitsSuperfermion (stab)Qiskit Aer (stab)Speedup
Clifford 500 gates1003 ms15 ms5.0x
Clifford 1000 gates1006 ms28 ms4.7x
QEC surface code492 ms12 ms6.0x

MPS Tensor Network

Weakly entangled circuits (bond dimension 64).

CircuitQubitsSuperfermion (MPS)Qiskit Aer (MPS)Speedup
Heisenberg XXZ5045 ms960 ms21x
Heisenberg XXZ100180 ms5,900 ms33x
GHZ20025 ms— (OOM)

Gradient Benchmarks

Adjoint Differentiation

The adjoint method computes all parameter gradients in one backward pass.

CircuitParamsSuperfermion (adjoint)PennyLane (adjoint)Speedup
SU(2) layer, 8 qubits161.2 ms42 ms35x
SU(2) layer, 12 qubits242.8 ms240 ms86x
UCCSD, H2O448 ms6,400 ms800x
QAOA p=4, 10 qubits805 ms310 ms62x

The adjoint advantage grows with circuit depth — deeper circuits show larger relative speedups because the adjoint cost is roughly 2x the forward pass regardless of parameter count.

VQE End-to-End

H₂ molecule, UCCSD ansatz, 100 optimizer iterations.

FrameworkTimeEnergy Accuracy
Superfermion (adjoint)1.2 s10⁻⁸ Hartree
PennyLane (adjoint)120 s10⁻⁸ Hartree
Qiskit Nature (parameter-shift)340 s10⁻⁸ Hartree

100x faster than PennyLane, 280x faster than Qiskit Nature for the same accuracy.

Circuit Construction

CircuitQubitsGatesTime
Quantum Volume204000.1 ms
DTC (digital twin)206000.15 ms
SU(2) random203200.08 ms

Reproducing Benchmarks

git clone https://github.com/Catstate101/superfermion.git
cd superfermion
pip install -e ".[benchmarks]"
python run_benchpress.py

Results are saved to benchpress_full_results.json.

Why the Speedup

  1. Rust with Rayon — statevector simulation parallelized across all CPU cores with zero GIL contention
  2. No interpreter overhead — gate application, sampling, and expectation values run entirely in Rust; Python calls cross the FFI boundary once
  3. faer linear algebra — pure-Rust BLAS-quality QR/SVD for MPS, avoiding LAPACK overhead
  4. Word-packed stabilizer — Clifford tableau operations on packed 64-bit words, O(n²) time for n qubits
  5. Memory locality — custom StatevectorState struct with column-major layout optimized for AVX auto-vectorization

On this page