> ## Documentation Index
> Fetch the complete documentation index at: https://docs.classiq.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Predefined Benchmarks

The predefined benchmarks let you measure and compare how well quantum backends run a set of
well-established quantum circuits. You pick a benchmark, a range of problem sizes,
and a set of backends; Classiq runs every combination, scores each result, and
returns a table and a scalability chart you can use to decide which hardware fits
your workload.

You run benchmarks from the **Classiq IDE** — a no-code interface on the Execution
page. It's ideal for interactive hardware evaluation and for comparing devices
without writing any code.

## Supported benchmarks

Each benchmark targets a different circuit family and scales with a single
**problem size** parameter. Every benchmark returns a **score** between 0 and 1,
where higher is better and lower values reflect hardware noise and errors. For most
benchmarks 1 corresponds to ideal, noiseless behavior; for some (such as Dynamical
Localization) the ideal noiseless value can itself be lower than 1. The score is
defined per benchmark:

| Benchmark                  | What it measures                                               | Problem size         | Score                                                          |
| -------------------------- | -------------------------------------------------------------- | -------------------- | -------------------------------------------------------------- |
| **GHZ**                    | Ability to create and preserve a maximally entangled GHZ state | Number of qubits     | Fidelity of the prepared GHZ state                             |
| **Adder**                  | Correctness of in-circuit modular addition                     | Register size (bits) | Probability of measuring the correct sum                       |
| **QFT**                    | Accuracy of the Quantum Fourier Transform output distribution  | Number of qubits     | 1 − total-variation distance from the ideal distribution       |
| **State Preparation**      | Accuracy of preparing a target (linear-amplitude) state        | Number of qubits     | 1 − total-variation distance from the ideal distribution       |
| **Dynamical Localization** | Preservation of localization dynamics under repeated kicks     | System size          | Normalized localization peak (geometric mean over kick counts) |

<Note>
  Some benchmarks enforce a minimum problem size (for example, GHZ and Adder start
  at 3). The IDE enforces these limits in the configuration form.
</Note>

## Benchmarking in the Classiq IDE

Open the **Execution** page in the IDE and switch the mode toggle from **Quantum
Program** to **Benchmark**.

### Configure the run

Select a benchmark type. A short description and its problem-size parameter are
shown. Then set:

* **Problem sizes** — the range of sizes to sweep, as **min / max / step** (for
  example, GHZ at 4, 8, 16). Each size runs as its own job.
* **Backends** — multi-select from the available backends (up to **10** per
  session). Includes QPUs, hardware emulators, and simulators.
* **Shots** — number of shots per job (default: 1,000).
* **Run via Classiq** — per-backend toggle. When on, the job runs against your
  Classiq-allocated budget using Classiq's provider credentials, so you don't need
  your own account with that provider.
* **Emulate** — run against the target hardware's noise model without consuming
  real QPU time or credits.
* **Name** — an optional name for the benchmark session.

Click **Run Benchmark** to submit.

### Cancel, history, and the Jobs page

**Cancel** stops the session: jobs that already finished (Done or Failed) stay in
the table and chart; jobs still Pending or Running are set to Cancelled.

Reopening a past session re-hydrates its full chart and table.
