Skip to content

Benchmarks private exchange

Steven Enamakel edited this page Sep 7, 2026 · 1 revision

Benchmarks: private exchange

What a private exchange between two members of a desk is worth, and what it costs. The mechanism is described in Private asides; this page is the measurement.

Every arm below writes the same words to the same peers. They differ only in what the exchange costs and when it happens, which is what makes them a matched set rather than unrelated experiments.

A room where everyone reads everything is a group chat. Asides let two members say something the desk cannot read (Private asides), and the natural question is whether that makes the room decide better. Measured properly, the first answer was no, and badly — and the reason turned out not to be privacy at all.

Every arm below writes the same words to the same peers; they differ only in what the exchange costs and when it happens. Hidden profile, budget 40, 2000 rooms, paired bootstrap against the same rooms without the move:

arm what it is vs hive+ model calls/ep
hive+fact one check, spending a floor turn -16.9 [-18.9, -15.1]
hive+mute the same turn, answer discarded -15.7 [-17.6, -13.8]
hive+along the same check riding alongside a turn +0.5 [+0.1, +0.9]
hive+share the same, spent continuously +1.4 [+0.4, +2.4]
hive+rounds exchange rounds off the floor +3.2 [+1.8, +4.5] 45.0
hive+quiet those rounds, saying nothing +0.0 [+0.0, +0.0] 45.0
hive+pooled every reading and fact, free — the ceiling +30.8 [+28.9, +32.9]

Four things fall out, and each is a control rather than an argument.

The loss was the turn, not the exchange. hive+mute writes the identical words on the identical turns and throws the answer away. It loses more than the arms that keep it. Whatever an aside costs, it costs it before a word changes hands — because under one message, one turn, a member asking is a member not depositing while the room accumulates support for the option it stepped away to ask about.

Peer information is worth more than anything else here. The free-pooling ceiling beats a tuned room by thirty points, in fewer turns. The intuition that agents reading each other should make a hive mind smarter is correct; the protocol was simply charging more for it than it was worth.

So the accounting changed. An aside now rides alongside the turn that authored it — one turn, two rows, and the episode provably cannot see the second (ADR 0011). That is a seventeen-point swing bought by changing nothing about the exchange. Taking the floor out of it entirely — members contacting each other in rounds between turns, bounded by an explicit host-set budget (ADR 0012) — reaches +3.2 at forty-five model calls an episode. That price is displayed in a column of its own rather than folded into cost/ep: a round is n model calls, and a mechanism whose cost a table hides would be worse than one that loses.

Writing the rows moves nothing by itself. A private row buys no trace, no standing and no budget, but it does consume a sequence number, and salience decays over raw sequence distance — so an exchange could in principle change who speaks next without its content mattering. hive+quiet and hive+hush write the identical rows and discard every answer: both are +0.0 [+0.0, +0.0], at up to forty-five model calls an episode. Every point gained is information.

Uniform rooms are a null throughout. Every exchange arm sits inside its interval at both budgets. A room whose members differ only by independent noise holds no concentrated information for a contact to move, and the fold across five members already does the averaging. The gains above are a hidden-profile effect: they are what happens when one member knows something the others cannot derive.

What is still unreached is the gap between +3.2 and the +30.8 ceiling. It is not accounting and not the carrier — both were removed and measured — but reach and timing: no arm contacts more than one peer per round, and none exchanges before the room opens. Full write-up in docs/experiments/2026-09-07-why-asides-lose.md.

Reproducing

B="cargo run --release -p tinyhivemind-hive --example bench --"
$B --episodes 5000                                                    # uniform, budget 15
$B --budget 40 --episodes 2000                                        # uniform, budget 40
$B --hidden-profile --blind-evidence --budget 40 --episodes 2000      # the table above
$B --hidden-profile --blind-evidence --budget 40 --episodes 2000 --exchange-cap 8
$B --hidden-profile --blind-evidence --budget 40 --episodes 500 --aside-cap 0 --exchange-cap 0

The last line is the identity check: with both budgets at zero every arm is bit-identical to hive+, which is what makes the comparisons above differences in one thing rather than in two.

Clone this wiki locally