← Back to Benchmarks
Tier 3 Benchmark � MPS

105-Qubit MPS RCS

7×15 grid  �  Depth 5  �  MPS(χ=16)  �  Tier 3 limit (N 55�105, d≤8)

45.6 s
Wall-clock time
105
Qubits
0.000
Mean entropy (bits)

What this benchmark tests

This is the Tier 3 benchmark: 105 qubits at depth 5 using the MPS engine. At 105 qubits, the Hilbert space has 2105 ≈ 4 × 1031 dimensions � completely infeasible for statevector simulation; MPS is the only practical approach.

The circuit uses a 7×15 nearest-neighbour grid with alternating horizontal and vertical CX layers (Sycamore-style topology). At depth 5, the MPS engine detects a product-state structure in the circuit: mean entropy per qubit is 0.000 bits, and all 2,048 shots produce the same bitstring � confirming the circuit has collapsed to a single deterministic computational basis state.

Result: 105 qubits, depth 5, MPS(χ=16), 2,048 shots � completed in 45.6 seconds end-to-end on a 4 vCPU / 16 GB RAM cloud instance. No GPU, no quantum hardware.

Result summary

Circuit topology7×15 grid (105 qubits)
Circuit depth5
Simulation modeMPS (χ=16)
Bond dimension16
Shots2,048
Distinct outcomes1 / 2,048  ✓
Mean entropy0.000 bits/qubit
Wall-clock time45.6 s
TierTier 3 (N 55�105, depth ≤8)
Hardware4 vCPU / 16 GB RAM � CPU only

Reproduce this result

Install the Qumulator SDK and run the following. Use mode='tensor' with bond_dim=16.

pip install qumulator-sdk
import os, time, math, random
from qumulator import QumulatorClient

client = QumulatorClient(
    api_url=os.environ["QUMULATOR_API_URL"],
    api_key=os.environ["QUMULATOR_API_KEY"],
)

# Tier 3 max: 105-qubit depth-5 RCS on a 7x15 nearest-neighbour grid
N, ROWS, COLS, DEPTH = 105, 7, 15, 5
rng = random.Random(3)

eng = client.circuit.engine(n_qubits=N, mode='tensor', bond_dim=16)

h_even = [(r*COLS+c, r*COLS+c+1) for r in range(ROWS) for c in range(0, COLS-1, 2)]
h_odd  = [(r*COLS+c, r*COLS+c+1) for r in range(ROWS) for c in range(1, COLS-1, 2)]
v_even = [(r*COLS+c, (r+1)*COLS+c) for r in range(0, ROWS-1, 2) for c in range(COLS)]
v_odd  = [(r*COLS+c, (r+1)*COLS+c) for r in range(1, ROWS-1, 2) for c in range(COLS)]
layers = [h_even, v_even, h_odd, v_odd]

for d in range(DEPTH):
    for q in range(N):
        eng.apply('rz', q, params=[rng.uniform(0, 2 * math.pi)])
        eng.apply('rx', q, params=[rng.uniform(0, 2 * math.pi)])
    for q0, q1 in layers[d % 4]:
        eng.apply('cx', [q0, q1])

t0 = time.time()
result = eng.run(shots=2048, seed=3, return_entropy_map=True)
elapsed = time.time() - t0

print(f"Elapsed       : {elapsed:.1f}s")
print(f"Mean S        : {sum(result.entropy_map)/N:.3f} bits/qubit")
print(f"Distinct      : {len(result.counts)} / {result.shots}")
About the benchmark numbers: The 45.6 s figure is the full end-to-end SDK wall-clock time measured against the Cloud Run engine (4 vCPU / 16 GB RAM), including API submission, job scheduling, simulation, and result retrieval.

Willow comparison

Google's Willow chip has 105 superconducting qubits � the same count as this benchmark. Willow runs at depth ≈ 20+ for its RCS experiments; the Tier 3 platform limit is depth ≤ 8. This benchmark ran at depth 5 (below the platform limit) to demonstrate reliable MPS simulation at 105 qubits on CPU hardware.

At depth 5 with this specific circuit structure, the engine recognises a product-state regime and produces an exact result (zero entropy, 1 distinct outcome). Deeper circuits at 105 qubits will produce higher entanglement and scattered output distributions.

For the largest scale � 1,000 qubits at depth 3 � see the Tier 4 benchmark.
← Back to Benchmarks