Skip to content

Commit e4cf947

Browse files
committed
test: add surface d=11 r=11 benchmark above the old 128-qubit cap
Adds a Catch2 [bench] case that exercises a ~274-qubit surface code (d=11, r=11, p=1e-3). The previous PR0 baseline benches all stayed under kMaxInlineQubits=128 because that's all the old build supported; this fixture covers the regime the migration unlocks. The bench takes ~20 ms per 1000 shots locally (Release). Assisted-by: Claude (Opus 4.7) <noreply@anthropic.com>
1 parent f8d7843 commit e4cf947

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

tests/test_benchmarks.cc

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,22 @@ TEST_CASE("Bench: surface d7 r7 p1e-3 sampling 10000 shots", "[bench]") {
142142
};
143143
}
144144

145+
// ---------------------------------------------------------------------------
146+
// Surface code d=11 r=11 p=1e-3: large-n QEC throughput benchmark above the
147+
// old kMaxInlineQubits=128 cap (~274 qubits). Validates that the runtime-
148+
// width arena migration preserves throughput on circuits that previously
149+
// required a custom build.
150+
// ---------------------------------------------------------------------------
151+
TEST_CASE("Bench: surface d11 r11 p1e-3 sampling 1000 shots", "[bench]") {
152+
auto mod = compile_text(surface_code_text(11, 11, 1e-3));
153+
REQUIRE(mod.peak_rank == 0);
154+
REQUIRE(mod.num_qubits > 128);
155+
156+
BENCHMARK("surface-d11-r11 p=1e-3 x1000 shots") {
157+
return sample(mod, 1000, 0);
158+
};
159+
}
160+
145161
// ---------------------------------------------------------------------------
146162
// Surface code d=5 r=5 with high physical noise (p=0.05): forces most NOISE
147163
// sites to fire, exercising the APPLY_PAULI / NOISE full-mask XOR + popcount

0 commit comments

Comments
 (0)