Benchmark Reference

Each benchmark application includes its own documentation describing the algorithm, circuit construction, and expected results. This page provides quick links to all benchmark documentation.

Level 1: Introductory

Benchmark Description
Deutsch-Jozsa Determines if a function is constant or balanced
Bernstein-Vazirani Finds a hidden bit string encoded in a function
Hidden Shift Finds a hidden shift between two functions

Level 2: Intermediate

Benchmark Description
Quantum Fourier Transform Quantum analog of the discrete Fourier transform
Grover's Search Unstructured database search with quadratic speedup

Level 3: Advanced

Benchmark Description
Phase Estimation Estimates eigenvalues of unitary operators
Amplitude Estimation Estimates probability amplitudes
HHL Linear Solver Solves linear systems of equations

Level 4: Application

Benchmark Description
Monte Carlo Quantum Monte Carlo sampling
Hamiltonian Simulation Trotterized quantum time evolution
HamLib Simulation Hamiltonian simulation using the HamLib library
VQE Variational Quantum Eigensolver for ground state energy
Shor's Algorithm Integer factoring via quantum order finding

Level 5: Hybrid Variational

Benchmark Description
MaxCut Graph optimization using QAOA
Hydrogen Lattice Molecular ground state energy estimation
Image Recognition Quantum-enhanced image classification

Other

Benchmark Description
Quantum Reinforcement Learning Reinforcement learning with parameterized quantum circuits

Programming Examples

Ready-to-use examples are provided in qedcbench/ showing how to run benchmarks from code:

Example Description
run_benchmark_example.py Minimal Python script — runs anywhere after pip install -e .
benchmarks-qiskit-modularized.ipynb Notebook: baseline three-part flow (get_circuits → run_circuits → plot_results)
benchmarks-qiskit-modularized-IBM.ipynb Notebook: custom execution on IBM hardware
benchmarks-qiskit-modularized-IQM.ipynb Notebook: custom execution on IQM hardware
benchmarks-qiskit-modularized-MQT.ipynb Notebook: custom circuit generation from MQT Bench

The modularized notebooks illustrate how to substitute custom code for any of the three parts. See the User Guide for details.