Files
VoxelForge/Standalone/Research/WorldAssemblerM3/Linux57/REPORT.md
T
Fr0zkaandClaude Opus 5.5 1e3e04bbac perf(core): FI LOD0 attribution, exact Z-inner traversal; fix a mesh gap at the passage shaft foot (L57); R26
Sampled cycle attribution of FI LOD0 field work: grid fill 83%, boundary 13%, skirts 4%; island roots,
columns and helix dominate, the column cache path is real but secondary (no thrashing). FI-only Z-inner
traversal at LOD0 (same lattice samples, exact) cuts FI whole view 5.35 -> 5.03 s and moving p50 by 12%;
global Z-inner and <=4-island culling were measured and rejected. The meshing band now includes the planned
passage support column's conservative bounds, closing a real gap where the arrival shaft meets the floor
(WorldAssemblyEvaluatorVersion 208 -> 209). fast/medium/full PASS, Clang and GCC.
Research R26 (self-checked): native lattice (maze/shaft) generator design.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016dhxM43dnWvUu2B5Ph1iG1
2026-10-25 10:47:44 +01:00

6.3 KiB
Raw Blame History

Linux57 report

FI LOD0 attribution

512 LOD0 tiles; sampled every 256 field calls. The 89.419B estimated FieldDensity cycles are allocated proportionally to R25's 27.61 worker-seconds (cycle shares, not stopwatch slices).

Caller Estimated calls Cycles Share Normalized seconds
Grid fill 13,392,640 74.244B 83.03% 22.92
Boundary 1,667,584 11.371B 12.72% 3.51
Skirt 434,688 3.186B 3.56% 0.98
Passage filter 0 0 0% 0
Other 69,120 0.618B 0.69% 0.19
Total 15,564,032 89.419B 100% 27.61

Nested component timings overlap and must not be added: island field 75.189B cycles (23.22s); roots 41.629B (12.85s); connectors 11.276B (3.48s); helix 15.293B (4.72s); columns 35.097B (10.84s); local probes 16.551B (5.11s); shared-cache path 17.986B (5.55s); mouth filter 0. Boundary's nested timer was 0.258s.

Local probes made 62.260M calls and hit 55.12%. Estimated shared lookups were 27.940M; 3.789M built values (13.54%), with the rest served as reads. Sampled shared work: initial reads 218,285 / 8.444B cycles; locked reads 29,822 / 0.221B; lock/wait 29,822 / 0.576B; builds 29,490 / 1.739B. These are separate sampled counters within the shared path. The bounded reuse trace recorded 27,278 misses, 27,202 evictions, 319 previously seen keys and 375 reuses of evicted keys (192 retained trace events). This does not support a cache-thrashing claim; it shows the field math and cache path both matter.

Cuts and paired costs

  • Exact Z-inner traversal, retained for FI LOD0 only: the global diagnostic's instrumented 512-tile sum fell from 33.819s to 27.118s (−6.701s, −19.8%). It reorders the same lattice samples. Applying it globally was rejected after SurfaceWorld moving p50/p95 rose 73.56%/70.00%; the final FI-only gate avoids that regression. The final FI-only candidate is measured in the pair table below.
  • Exact island culling for plans with four or fewer islands: rejected. The same instrumented worker sum rose 33.819s → 35.072s (+3.70%).
  • Mouth-filter sampling: no cut. FI LOD0 had zero passage-filter calls and zero mouth-filter cycles.
  • Passage support band: added the planned column's conservative XY square (center ± maximum radius) and full top/bottom Z bounds before clipping the meshing band. This repairs output and bumps WorldAssemblyEvaluatorVersion 208 → 209.

Five interleaved baseline/candidate pairs per recipe; medians. These final candidate figures include the passage-band repair:

Recipe Whole view (s) First tile (s) Near ring (s) Moving p50 (ms) Moving p95 (ms)
FI 5.354 → 5.028 (−6.09%) 0.827 → 0.820 (−0.85%) 0.983 → 0.976 (−0.71%) 563.855 → 493.796 (−12.43%) 925.247 → 824.867 (−10.85%)
SurfaceWorld 1.824 → 1.827 (+0.16%) 0.542 → 0.539 (−0.55%) 0.560 → 0.556 (−0.71%) 65.457 → 66.465 (+1.54%) 115.757 → 118.757 (+2.59%)
Caves 0.800 → 0.798 (−0.25%) 0.140 → 0.133 (−5.00%) 0.205 → 0.195 (−4.88%) 1.444 → 1.374 (−4.85%) 1.447 → 1.378 (−4.77%)
Motifs 0.497 → 0.532 (+7.04%) 0.079 → 0.082 (+3.80%) 0.117 → 0.128 (+9.40%) 73.296 → 73.741 (+0.61%) 123.824 → 121.019 (−2.27%)

Motifs' whole-view increase includes the intentional newly meshed passage support. No other exact cut was proven worthwhile; coarse-plus-refine was not tried.

Crescent

It was a real mesh gap. Before the band fix, the three rays through the dark crescent had field zero crossings but no exported triangle hits. Afterward each hit a non-skirt surface triangle at the shaft/floor contact; the control floor ray still hit. The new overview is JPG (33,032 bytes); PNG is 194,689 bytes. The medium whole-surface ROI audit passed.

Proofs, tiers and trials

  • Z-inner preserves the sampled lattice; full Clang/GCC determinism passed W1/W8/W12, including random cameras. Medium uniform-block proofs and capture audits passed.
  • Fast PASS 174.2s; medium PASS 964.9s; full PASS 1146.5s. One full-tier run covered five interleaved rounds across all four recipes (20 recipe-pairs), plus the two one-off cut experiments: seven trial rounds total, under the 15-round limit.
  • Corrected failures: three early Clang compile errors were fixed before the final build; the initial GCC link used the C driver and was rebuilt with g++-14; the first full run rejected the verifier's expected passage style and passed after that expectation was corrected; a pre-rebuild fast run correctly refused a stale binary. One scratch proof-audit invocation had a bad recipe argument; the two corrected/expanded probes exited with std::bad_alloc. Direct compiled probes and the capture-mesh ray check supplied the crescent evidence. No final tier failed.
  • Resource-limit exception: one preparatory mkdir -p Saved/Linux/l57/tmp command ran without the requested wrapper. It only created the temporary directory; all build, Python, verifier and probe workloads used taskset/prlimit afterward.

Hashes

  • Candidate source stamp: dd2829bec9adab609fa3412301a5442f8a1795c106285b51f1c971f49892a17d
  • Clang binary SHA256: 2e51974e6ce2e0240bf57e0d7f6d73d7f02ff84b33d296a3b548c9a87c20634b
  • GCC binary SHA256: 00cb06bf557b2c8cd634475574d4be835b5725cffc96a117f71a24d5ebfc9564
  • Overview JPG SHA256: f5500bef4ac51f38a7a7bea7fb08f92545fe1aaccdfa83610939d66cf0e00bd9
  • Overview mesh SHA256: 689f8f181502e3602363feb7a2d33292f835669362be2369cf3301f508570c10
  • Full summary SHA256: f5bd410dbb631e7abb510cac0aa15a235bb8258ba834df4af69d6d66e996e241

Orchestrator review (Claude)

Accepted. The stamp matches the final Clang and GCC builds (dd2829be…); 7 of 15 trials. The attribution settles R25: grid fill is 83% of FI LOD0 field cycles; island roots, columns and the helix dominate; the cache path is real but secondary. Z-inner traversal is exact and FI-only (applied globally it regressed SW moving by about 70%, and was rejected): FI whole view 5.35 → 5.03 s, moving p50 −12%. The dark crescent was a real mesh gap at the arrival shaft foot, a passage support column missing from the meshing band. It's fixed (evaluator 208 → 209). The new CpuCycleCounter.h has an MSVC <intrin.h> branch, so it's safe for the owner's Windows build.