← /codedata 2026-05-30

solvers_

The staged cube-solver fleet: native analyzers (feeding the scramble distribution + per-comp precompute) and browser WASM (live solve on the gen page) — coverage, throughput, memory.

7native analyzers
~34GBpruning tables
3/7fully covered
0.9–390/sthroughput span

Backfill coverage

target 1,289,663
stdcomplete5 stages
1,289,663 / 1,289,663100%
eopartial5 stages
1,240,119 / 1,289,66396.2%
pseudocomplete4 stages
1,289,663 / 1,289,663100%
pseudo_paircomplete4 stages
1,289,663 / 1,289,663100%
pairpartial4 stages
112,841 / 1,289,6638.7%
f2leoseed4 stages
252 / 1,289,6630.02%
pseudo_f2leoseed4 stages
252 / 1,289,6630.02%

Throughput

16-core, full huge-table mode (log scale)
pseudo390 /s

slot-decoupled + strong pruning, fastest

std115 /s

strongest joint-table pruning, full 5 stages

pseudo_pair47 /s

corner/edge slot coupling, heavier search

f2leo7.4 /s

weak deep-stage pruning, no huge tables; 2 seed comps only

pseudo_f2leo7.4 /s

same as f2leo, 2 seed comps only

pair2 /s

off the default weekly run, full backfill ~165h

eo0.9 /s

xxxxcross full enumeration ~13M nodes/case — the long pole

Memory & tables

31.8GB physical RAM on the build host
huge
std / eo / pseudo / pseudo_pair / pair

GB-scale joint prune tables (CEE/CCE/C4C5C6) via mmap. eo peaks ~24GB working set but only ~0.1GB private — tables are read-only shared mmap.

small
f2leo / pseudo_f2leo

~40MB: mt_edge2/4 + corn + edge + pt_cross + on-the-fly BFS xcross pruning. No huge tables, so deep stages are slow.

parallelism

Each analyzer runs rayon par_iter over a whole chunk across all 16 cores; tables shared read-only via mmap. Running variants concurrently loads distinct GB-scale tables → blows past 32GB, so they run serially.

Browser WASM

live on gen page, per-worker small tables (mobile 2 / desktop 4)
std cross-steppt_cross_C4E0 (52MB/worker)cross instant
pairVariantSolverWasmall 4 stages ~0.04s
eoVariantSolverWasmdeep stages tens of seconds
pseudoVariantSolverWasm~5s
pseudo_pairVariantSolverWasmdeep stages tens of seconds
f2leo / pseudo_f2leosmall tables ~40MB/workercross ~2.8s

Browsers cannot hold GB-scale huge tables, so deep stages (xxxxcross) are orders of magnitude slower than native; no SharedArrayBuffer means workers do not share tables. Common comps are served instantly from comp_steps precompute — live solve is only a fallback for uncovered comps.

Coverage & date are live from distribution.json (refreshes only when the pipeline is run by hand — no schedule); throughput/memory are measured constants from 2026-05-30./code