On this page
Linked approachRust bitboard engine
Dates
Created
Updated
Record idEX-20260825-central-frontier-scheduler-check-df116702

No explanation has been written for this record yet.

Technical recordThe registered protocolEX-20260825-central-frontier-scheduler-check-df116702
Hypothesis
At fixed completed depth, seven chance strata, policy seed, leaf, and deterministic reduction order, a central prefix-frontier scheduler will return bit-identical per-column values and actions to the existing root-column scheduler while exposing at least 32 runnable tasks per worker. On the local host at depth 5 it will reduce median decision wall time by at least 10% and sustain at least 75% worker busy time at the maximum available worker count. This is a CHECK-tier engineering comparison only; logical work may differ because private worker tables see a different schedule, and no policy-strength or 192-core performance claim follows until the same frozen harness is run on that x86 host.
Arms
ArmNameEntry pointManifest
Candidaterust-central-frontier-schedulerapproaches/fair-expectimax/rust-engine/src/parallel.rs
Comparatorrust-root-column-schedulerapproaches/fair-expectimax/rust-engine/src/bin/decide.rs
Classification
engineering
Information boundary
public-policy
Benchmark tier
CHECK
Lifecycle
preregistered
Primary metric
Bit-identical per-column f64 values and selected actions versus the sequential Rust search and existing root-column scheduler, followed by median end-to-end decision wall-time ratio frontier/root at depth 5, seven strata, the same roots, worker count, compiler, cache capacity, and machine profile.
Secondary metrics
  • frontier task count and exactly-once completion count
  • worker busy fraction, per-worker busy seconds, task-count spread, and tail idle core-seconds
  • logical work, nodes, leaf calls, move calls, and cache hits, reported rather than assumed equal
  • scaling at 1, 2, 4, 8, and every locally available logical CPU, bounded by detected availability
  • planner construction time, task execution time, reduction time, initialization time, and peak resident memory
  • projected table memory and explicit thread/cache settings for a later 192-core x86 run
Statistical unit
root
Uncertainty method
Exact equality for values/actions/tasks; three interleaved timing repeats per scheduler and worker count, reporting all repeats and the median.
Data role
no-gameplay
Seed leases
none recorded
Whole-origin split
yes
Reuse disclosure
No new seed is opened. Correctness and timing use only realistic roots regenerated from the already-opened Rust gate sub-block 0xa5276000-0xa5276fff of SEEDLEASE-A52-FAST, plus seed-free constructed unit fixtures. These roots are reusable development diagnostics and cannot support a strength claim.
Pass criteria
  1. Across at least 8 realistic d4s7 roots, sequential, root-column, and frontier schedulers have identical legal-column lists, identical f64 value bits for every column, and identical selected actions at 1 and maximum local workers, with 0 missing or duplicate frontier tasks.
  2. Three repeated frontier runs return byte-identical values/actions at each tested worker count; worker count changes no value or action.
  3. At maximum local workers on at least 3 realistic d5s7 roots, the frontier scheduler's median wall time is at least 10% lower than the root-column scheduler's median, and aggregate worker busy seconds divided by workers times task-phase wall seconds is at least 0.75.
  4. The command line accepts an explicit 192-worker configuration, rejects zero or memory-unsafe settings before allocation, bounds the prefix frontier, reports per-worker table memory and total projected table memory, and never silently reduces depth or chance strata.
  5. Cargo release tests, the existing Rust/C++ search-value gate, determinism/reflection checks, npm test, and make test pass; pre-existing repository-validator failures from missing gitignored historical artifacts remain disclosed separately.
On pass
Record valid + pass at mechanics-only tier, make the frontier scheduler the Rust decide binary's default with an explicit root-scheduler fallback, and provide the frozen scaling command for the 192-core x86 host. Open no gameplay cohort and make no strength claim.
On fail
Record valid + fail for the exact scheduler configuration, keep the existing root scheduler as default, and open no gameplay cohort. A parity failure stops timing immediately.
Gate fixed before controlled data
yes
Resources
Wall seconds7200
CPU threads12
Max host bytes8589934592
Max GPU bytes
GPU devices
Stop conditions
  1. Stop timing on any rules, information-boundary, legality, determinism, reflection, value-bit, action, or exactly-once task failure.
  2. Stop the local run at 2 hours wall, 8 GiB peak host memory, or any worker panic; record partial rather than weakening the gate.
  3. Do not access protected/final seeds or any new seed range; do not tune split depth on a gameplay-strength cohort.
  4. Do not claim 192-core saturation from the 12-logical-CPU arm64 workstation; that requires a separate retained machine profile and execution of the frozen scaling harness on the target x86 server.
Expected artifacts
Amendments
none recorded
Technical recordResults recorded against this protocol1 record
valid runoutcome: passsupported-as-testedtier: mechanics-onlyRS-20260825T052959Z-1b3ed9a5

A deterministic central-frontier scheduler replaced at-most-seven root-column jobs with a bounded shared registry of continuation subtrees while retaining ordered floating-point reduction and the old root scheduler as a fallback. On one retained 12-logical-CPU arm64 profile, exact root/frontier comparisons had zero value, action, or task mismatches. The preregistered D5/S7 bounded split reduced the three-repeat median for three roots from 22.034955 s to 19.410905 s (1.1352x) with 0.8823 median worker busy fraction; D4/S7 over eight roots improved from 4.076978 s to 3.232507 s (1.2612x) with 0.9951 busy fraction. A deliberately over-expanded D5 prefix reached 0.9963 busy fraction but created about 41% more logical work and achieved only 1.0102x, which falsified that split and motivated the adaptive coarse split for expensive continuations. This supports the refactor strategy locally but is not a 192-core saturation or policy-strength result.

What it had to pass
  • Sequential/C++-equivalent, root-column, and central-frontier values and actions are exact across at least eight realistic D4/S7 roots at one and maximum local workers, with every task completed exactly once. — observed: Eight strict-FP C++/Rust roots had 0 mismatches. Root/frontier comparisons covered 24 paired decisions at one worker and 24 at 12 workers with 0 value/action/task mismatches; registered and completed task counts matched in every row.
  • Three repeats are value/action deterministic at each tested worker count. — observed: Three repeats at one and 12 workers produced 0 semantic mismatches; worker count changed timing and task placement only.
  • At maximum local workers on at least three D5/S7 roots, median wall time improves at least 10% and worker busy fraction is at least 0.75. — observed: Three roots x three repeats: 22.034955 s root median versus 19.410905 s bounded-frontier median, 1.1352x speedup and 0.8823 median busy fraction.
  • The scheduler safely expresses 192 workers, bounds the frontier and memory, and rejects unsafe memory before allocation. — observed: The allocation-free D7/S7 192-worker plan selected split 1, bounded the worst frontier at 2,401 tasks and projected 2,418,377,728 bytes under an 8 GiB cap. A 16,777,216-entry cache per worker was rejected at 154,618,822,656 bytes; the Rust unit test covers the same fail-closed path.
  • Release Rust tests, native parity, determinism/reflection, npm test, and repository test integration pass or any pre-existing artifact failure is disclosed. — observed: Cargo release tests passed 22/22 after the analytics reflection test was added; npm test passed 137 with 1 unrelated native-binary skip and exercised the Rust decision binary. `make test` stopped at `research-validate`: after this run record was completed, 72 pre-existing gitignored historical artifacts remain absent in this checkout, so the aggregate target cannot reach later steps. The default arm64 C++ build also differed by 1-3 ULP on 7/20 roots because of contraction; the retained -ffp-contract=off comparison passed 8/8 with no action changes in the default build.
Technical recordRecorded metricsRS-20260825T052959Z-1b3ed9a5
d4s7Threads12
rootsPerRepeat
8
repeats
3
rootMedianSeconds
4.0770
frontierMedianSeconds
3.2325
speedup
1.2612
frontierBusyMedian
0.9951
pairedDecisions
24
mismatches
0
d5s7Threads12BoundedSplit
rootsPerRepeat
3
repeats
3
rootMedianSeconds
22.0350
frontierMedianSeconds
19.4109
speedup
1.1352
frontierBusyMedian
0.8823
pairedDecisions
9
mismatches
0
d5s7Threads12OverExpandedSplit
rootMedianSeconds
24.9596
frontierMedianSeconds
24.7075
speedup
1.0102
frontierBusyMedian
0.9963
rootLogicalWork
381,642,037
frontierLogicalWorkMedian
539,523,663
d4s7Threads1
rootsPerRepeat
8
repeats
3
rootMedianSeconds
13.7221
frontierMedianSeconds
13.5473
pairedDecisions
24
mismatches
0
Limitations
  • Mechanics-only CHECK result on one shared 12-logical-CPU arm64 workstation; no x86 or 192-core timing was performed.
  • The timing corpus is eight reusable diagnostic roots at D4 and three at D5, not complete games or a strength cohort.
  • Private worker tables make logical work schedule-dependent. Fine granularity is not monotonically better: the over-expanded D5 arm increased logical work about 41% and failed the speed gate.
  • Worker busy fraction measures timed search-task occupancy and excludes coordinator planning, initialization, and reduction; end-to-end wall time is the primary speed metric.
  • Peak RSS and CPU seconds were not retained. Memory values are exact table-layout projections plus a conservative planner allowance.
  • The default arm64 C++ compiler contracted floating operations; bit-exact native parity on this host required -ffp-contract=off. Actions did not change in the default 20-root diagnostic.

Open the result record

Agent contextHow to extend this record

To add a reader-facing explanation, write web/content/research/EX-20260825-central-frontier-scheduler-check-df116702.mdx; it renders above this record on the next request. The registered protocol itself is in the technical record above.

Record file: research/experiments/EX-20260825-central-frontier-scheduler-check-df116702.json, validated against research/schemas/experiment-v1.schema.json. Protocol hash: 97eb46930709425d1abedfd45ee9700d31d19369698b738fe391d5c93fda942a.

Registered by Codex / unknown (root).