DrumsBench

Experiments / EXP-015

Matched baseline vs candidate comparison with drumsbench

Compare the QEMU/KVM warm-snapshot baseline with the custom rootfs candidate on the same workload, seeds, checker and declared guest resources, from two measured and reconciled runs, with a pre-registered statistical design.

plannedWritten and reviewed as code or protocol, but not executed. No numbers.
Date
2026-10-25
Hypothesis
Per valid attempt, the candidate differs from the baseline in environment time and reconciled cost; the direction and size are unknown and no target is set here.
Arms
qemu-kvm-warm-snapshot, drums-rootfs-criu
Workload
OSWorld smoke (EXP-007) first, then the frozen Experiment 2 task set
Benchmark
drumsbench compare (descriptive only)
Code
claude/ecstatic-archimedes-456go6 at d5247e2
Limitation
Neither arm has a measured run; compare emits claim null by construction and no statistical design (paired interval, minimum sample, equivalence margin, pre-registered threshold) is implemented.

In one paragraph

This is the record where a Drums number against a VM baseline would eventually go. Today it holds the rules only. drumsbench compare takes two summaries, refuses anything that is not labelled measured and reconciled against a provider receipt, and prints descriptive point estimates with claim: null, always. It does not pick a winner and does not extrapolate to training. Both arms must first exist as measured runs: the baseline has never been provisioned on a real KVM host by this work (EXP-007), and the candidate has never passed a restore (EXP-008, EXP-009). Beyond that, the statistical design that would let a difference be stated is not implemented, and the branch says so in its own words.

Setup

What both runs must satisfy before compare accepts them

What compare prints

Descriptive point estimates per arm: attempts, valid attempts, successes, invalid reasons, phase busy seconds, the harness window, the reconciled cost, and ratios between the two. Its claim field is null by construction and its status says that pre-registered statistical review is required. The README: "It never headlines a winner and never extrapolates to training."

What would be needed to state a difference

None of this exists yet; it is listed so the gap is visible:

What ran

Nothing. No measured run exists for either arm; no summary.json, reconciled.json or compare output is on the branch.

Results

None.

Failures and surprises

None recorded.

Limitations

Reproduce

python -m drumsbench run --workload W.json --arm baseline --baseline-config B.json --money M.json --out-dir runs/baseline-1 --execute
python -m drumsbench run --workload W.json --arm drums --arm-config D.json --money M.json --out-dir runs/drums-1 --execute
python -m drumsbench reconcile runs/baseline-1/summary.json baseline-billing.json --out runs/baseline-1/reconciled.json
python -m drumsbench reconcile runs/drums-1/summary.json drums-billing.json --out runs/drums-1/reconciled.json
python -m drumsbench compare runs/baseline-1/reconciled.json runs/drums-1/reconciled.json

The statistical design would be added as a pre-registered file hashed into the run before it starts, and compare would be extended to read it; neither change exists.

Sources