Files
gamedev-the-steward/docs/benchmarks/REGIONAL_SCALE_BASELINE_01.md
T
2026-08-12 21:38:10 +02:00

69 lines
2.9 KiB
Markdown

# Regional scale baseline 01
This is the first reviewed capture of workload schema 1,
`regional_records_scheduler_v1`. It is a structural headless baseline for the
regional record and deterministic due-job contracts—not a claim about rendered
gameplay or the complete economy.
The machine-readable report is in
[`regional_scale_baseline_01.json`](regional_scale_baseline_01.json). It was
captured with Godot 4.7 on the `Apple_M1_Max_64_GB` development host, seed
424242, three default-budget samples, and parity runs at budgets one and
unlimited.
## Fixed workload
- five locations, settlements, polities, and ring routes;
- 20 caravans with 12 named members each;
- 2,000 persistent named people;
- five aggregate cohorts totaling 50,000 residents;
- 2,025 keyed deterministic due jobs;
- maximum active-presentation metadata of 40;
- 736,115 bytes of canonical regional state and 540,942 bytes of initial
scheduler state.
All records round-tripped through their primitive-only schemas. The fixture
contained 52,000 people and 2,734 cargo units without duplicate global IDs or
membership errors. Budget one, budget eight, and unlimited execution drained
the backlog to zero in exactly the same order and produced final checksum
`57c8a8eb9dd48bbea309cdb5654ce508f6e4965b07228217aa55fc43de699a25`.
## Results
| Phase | Median | Samples |
| --- | ---: | --- |
| Fixture construction | 273.79 ms | 272.37, 273.79, 282.07 ms |
| Canonical roundtrip | 255.86 ms | 255.33, 255.86, 266.03 ms |
| Scheduler construction | 74.10 ms | 73.66, 74.10, 76.50 ms |
| Drain 2,025 jobs (budget 8) | 57.47 ms | 55.52, 57.47, 59.51 ms |
| Complete measured run | 785.65 ms | 776.58, 785.65, 808.22 ms |
Budget eight drained the queue in 254 batches. Budget one used 2,025 batches;
unlimited used one. Their execution-order, fixture, and final checksums were
identical.
## Interpretation
The baseline proves that the target record counts fit in a small canonical
payload and that job-budget changes do not alter outcomes. It intentionally
constructs only 2,025 event-boundary jobs, so the 57.47 ms drain is not a
30-day simulation-time throughput result. It also excludes scene loading,
navigation, rendering, dialogue/situation queries, market transactions,
conflict, event rollups, chunked disk I/O, and live caravan transfers.
The next benchmark must run scheduled settlement and caravan domain handlers
over 30 simulated days. Separately, a recorded weak-PC active-world capture
must measure the Low presentation tier with at most 40 detailed visuals and two
new navigation requests per frame. These measurements cannot be inferred from
this development-host structural result.
## Capture command
```bash
/Applications/Godot.app/Contents/MacOS/Godot \
--headless --path "$PWD" \
--script res://tools/benchmark_regional_scale.gd -- \
--host-label=Apple_M1_Max_64_GB \
--output=res://docs/benchmarks/regional_scale_baseline_01.json
```