[{"data":1,"prerenderedAt":202},["ShallowReactive",2],{"run:lego-bench-calib-checkpoints":3,"run-findings:lego-bench-calib-checkpoints":130},{"run":4,"config":21,"metrics":75,"curve":81,"assets":129},{"id":5,"title":5,"subtitle":6,"eyebrow":7,"date":8,"workspace":9,"commit":10,"tags":11,"verdict":20},"lego-bench-calib-checkpoints","P2 bench harness calibration — 3-regime (iter1000\u002F5000\u002Ffinal) checkpoint 生成用 (lego-gap-baseline-12500 と同一 recipe、save_ply_at 追加のみ)","Run summary · P1 Phase G.5 final Pareto integration","2026-08-16","splat","c8e5881",[12,13,14,15,16,17,18,19],"p1-g","phase-g","early-stop","sh-progressive","stacked","lego-15k","brush-compat","premultiplied","partial",[22,25,28,31,34,37,40,43,46,49,52,55,58,61,64,67,70,72],{"key":23,"value":24},"dataset","\u002FUsers\u002Fotkrickey\u002Fdev\u002F3dgs-workspace\u002Fdatasets\u002Fnerf_synthetic\u002Flego",{"key":26,"value":27},"gt_convention","Premultiplied",{"key":29,"value":30},"iterations","12,500",{"key":32,"value":33},"seed","42",{"key":35,"value":36},"capacity","1,000,000 splats",{"key":38,"value":39},"sh_degree","3",{"key":41,"value":42},"loss","L1Ssim",{"key":44,"value":45},"lambda","0.200",{"key":47,"value":48},"ssim","window=7 sigma=1",{"key":50,"value":51},"backend.backward","Simd",{"key":53,"value":54},"backend.loss_path","Gpu",{"key":56,"value":57},"backend.emit_pairs","Original",{"key":59,"value":60},"backend.forward","F32",{"key":62,"value":63},"backend.dispatch","PerStage",{"key":65,"value":66},"backend.radix_scan","Cpu",{"key":68,"value":69},"backend.target_cache","true",{"key":71,"value":69},"backend.shader_fast_math",{"key":73,"value":74},"os_build","26.5.2 (25F84)",{"psnr":76,"wallclock":77,"wallclock_regress":78,"splats":79,"final_loss":80},36.225929260253906,"6m 0s",false,409660,"5.445814e-3",{"loss":82,"splats":113},{"iters":83,"values":98},[84,85,86,87,88,89,90,91,92,93,94,95,96,97],1,1000,2000,3000,4000,5000,6000,7000,8000,9000,10000,11000,12000,12500,[99,100,101,102,103,104,105,106,107,108,109,110,111,112],0.593845009803772,0.05451086908578873,0.01389236655086279,0.008171129040420055,0.007175527513027191,0.006419516168534756,0.006131632253527641,0.005925753153860569,0.005737404339015484,0.005717330612242222,0.005559184588491917,0.005539752077311277,0.005418809596449137,0.0054458137601614,{"iters":114,"values":115},[84,85,86,87,88,89,90,91,92,93,94,95,96,97],[116,117,118,119,120,121,122,123,124,125,126,127,128,79],5207,8224,180327,295166,347707,373933,389192,398082,403027,405578,406605,407525,408871,{"has_renders":78,"has_splat":78},[131,155,180],{"id":132,"title":133,"date":8,"status":134,"polarity":135,"category":136,"axes":137,"tags":139,"task_code":148,"related_runs":149,"delta_psnr":-1,"delta_wallclock":150,"rank":151,"verdict":152,"impact_summary":153,"detail_path":154},"p2-bench-harness-calibration","splat bench harness 実装 + calibration — σ_replay 0.83%、full run 比 ~6x ノイズ削減","stable","positive","tooling",[84,138],3,[140,141,142,143,144,145,146,147],"bench-harness","calibration","variance","reproducibility","c7","fixed-workload","gate-infra","lego","splat bench harness (2026-08-16 GPU 専有タスク)",[5],"σ_replay 0.83% (n=10, final-scale workload) vs full run 実測 ~10% — 約 6x ノイズ削減","high","accepted","`splat bench --config bench.toml` を実装し、同一 config n=10 replay で \u003Cstrong>σ_replay = 0.234 ms\u002Fiter (mean 28.339 ms 比 0.83%)\u003C\u002Fstrong> を実測。full training run で観測されていた ~10% 分散に対し \u003Cstrong>約 6x のノイズ削減\u003C\u002Fstrong>。3-regime (iter 1000 \u002F 5000 \u002F final checkpoint、各 n=5) でも σ 1.2-4.6% の範囲に収まり、splat 数が少ない早期 regime ほど相対分散が大きい傾向を確認。有意判定閾値を \u003Ccode>max(2σ, 1%)\u003C\u002Fcode> と規約化し、以後の gate 判定をこの harness の計測に載せ替える。付随して `--parity` (kernel variant 間の勾配 \u002F binning 一致検証) と `[output] save_ply_at` (checkpoint 保存) を実装、parity mode の実測で production-scale シーンの `sorted_idx` tie-order 非決定性 (~0.2%、真の非決定性であって variant 差ではない) を発見し gate から除外した。","\u002Ffindings\u002Fp2-bench-harness-calibration\u002F",{"id":156,"title":157,"date":8,"status":134,"polarity":158,"category":159,"axes":160,"tags":161,"task_code":171,"related_runs":172,"delta_psnr":174,"delta_wallclock":175,"rank":176,"verdict":177,"impact_summary":178,"detail_path":179},"p2-c3-tile-counting","C3 per-tile counting sort — parity PASS \u002F PSNR guard PASS だが replay 有意差なしで棄却 (数値つき)","negative","experiment",[84],[162,163,164,165,166,167,168,169,140,147,170],"gap-sweep","phase-2","c3","tile-binning","counting-sort","bitonic-sort","gpu-gate","rejected","determinism","C3 per-tile counting sort worktree 統合 + GPU gate (2026-08-16 GPU 専有タスク)",[173,5],"lego-c3-tile-counting-12500","12.5k full run PSNR guard: 36.226 → 36.190 dB = -0.036 dB (±0.1 dB guard 内、PASS)","replay bench final n=10: GlobalRadix 32.383ms\u002Fiter (σ2.23%) vs TileCounting 33.403ms\u002Fiter (σ4.60%) = **+3.15% (非有意、閾値 4.45%)**。iter5000 n=3: +0.38% (非有意)。radix_sort kernel 単体: final n=10 で 5721us→6151us (+7.5%)。full run 単体 (n=1): 360.96s→329.11s (-8.8%、非有意判定と矛盾、confound と判断し不採用)","medium","rejected-no-significant-speedup-flag-retained","別 worktree で実装済みだった C3 (per-tile counting sort) を main の util.rs 分割後の構造 (bench harness commit fe68cfa 由来) に手で移植し統合。smoke compile + unit test 6 本 + 既存 106 test 全 pass、build warning 0。\u003Ccode>splat bench --parity\u003C\u002Fcode> で数学的正しさを確認 (tile_offsets byte-exact、5 grad buffer tol 1e-4 以内 PASS)。しかし fixed-workload replay (final checkpoint n=10) では \u003Cstrong>+3.15%\u003C\u002Fstrong> ― 閾値 max(2σ,1%)=4.45% 未満で有意な高速化なし。radix_sort kernel 単体も +7.5% 遅い。12.5k full run の PSNR guard は通過 (-0.036 dB) したが、同じ full run の wallclock は -8.8% と replay の非有意判定に矛盾しており、これは既知の full-run 分散 confound と判断し gate 判定には採用しない (むしろ bench harness の存在意義を裏付ける実例)。default flip は見送り、TileCounting は BackendConfig flag として保持 (正しさは証明済みなので将来 CPU scan を GPU 化する等の改良余地があれば再挑戦可能)。副次効果として sort key \u003Ccode>(depth_bits&lt;&lt;32)|splat_idx\u003C\u002Fcode> により depth-tie 非決定性を解消した。","\u002Ffindings\u002Fp2-c3-tile-counting\u002F",{"id":181,"title":182,"date":8,"status":134,"polarity":135,"category":159,"axes":183,"tags":184,"task_code":191,"related_runs":192,"delta_psnr":197,"delta_wallclock":198,"rank":151,"verdict":199,"impact_summary":200,"detail_path":201},"p2-s1-pipeline-resident","S1 pipeline 全域 resident 化 — replay bench -22.9% (final regime) で採用 (Tier A\u002FB\u002FC)",[84,138],[162,163,185,186,187,188,168,189,140,147,190],"s1","resident","alloc-audit","unified-memory","adopted","attribution","S1 pipeline 全域 resident 化 worktree 統合 + GPU gate (2026-08-16 GPU 専有タスク)",[193,194,195,196,5],"lego-s1-resident-12500","lego-s1-resident-12500-rep2","lego-s1-resident-12500-rep3","lego-gap-baseline-12500","12.5k full run PSNR guard: 基準 36.19 前後 (歴代同 recipe 7 run 分布 36.138-36.226) に対し rep1 36.051 (-0.14、guard 外) \u002F rep2 36.168 \u002F rep3 36.224 dB → n=3 mean 36.148 dB = -0.04 dB (±0.1 dB guard 内、PASS)。rep1 は歴代最低値だが S1 は数学的同値 (parity test 群で証明) のため run 分散の tail と判定","replay bench final regime n=3: 28.630 → 22.059 ms\u002Fiter = **-22.9%** (閾値 max(2σ,1%)=2.05%)。iter5000 regime n=3: 26.113 → 20.405 ms\u002Fiter = **-21.9%** (閾値 1.29%)。12.5k full run: 公式 336.33s → rep1 272.36s \u002F rep2 257.55s \u002F rep3 254.73s = mean 261.55s (**-22.2%**)","adopted-unconditional-no-flag","別 worktree で実装済みだった S1 (pipeline 全域 resident 化) を main へ統合。C3 統合後の tile_bin.rs と conflict したため手 merge し、C3 (rejected flag) との新規相互作用 (S1 の buffer 直結が C3 の panic guard に当たる) はフォールバック + regression test で解決。build warning 0、MSL smoke compile (adam.metal binding 変更) + 新規 S1 test 9 本 (resident byte-stability \u002F grow path \u002F ForwardState parity \u002F Vec vs raw parity \u002F C3 fallback) 含む workspace 全 test pass。replay bench は \u003Cstrong>final regime -22.9% \u002F iter5000 -21.9%\u003C\u002Fstrong> と Phase 2 単一項目として C0 に次ぐ効果で、attribution 計測 (S1 で新設した DispatchAttribution 4 点) が alloc 成分の消滅を直接証明 — C0 の「主犯は first-touch page fault」結論の pipeline 全域への一般化。12.5k full gate は PSNR rep1 が guard 外 (36.051) に出たが n=3 escalation で tail variance と確定 (rep2 36.168 \u002F rep3 36.224、歴代同 recipe 分布 36.14-36.23)。採用 — flag なしの無条件変更として default 化。","\u002Ffindings\u002Fp2-s1-pipeline-resident\u002F",1790227323956]