[{"data":1,"prerenderedAt":466},["ShallowReactive",2],{"run:lego-sh3-30k":3,"run-findings:lego-sh3-30k":192},{"run":4,"config":17,"metrics":48,"curve":54,"assets":186},{"id":5,"title":5,"subtitle":6,"eyebrow":7,"date":8,"workspace":9,"commit":10,"tags":11,"verdict":16},"lego-sh3-30k","A.8 SH degree ablation — sh_degree=3 (DC only, no view-dependence)","Run summary · Phase 5","2026-05-22","splat","113b306",[12,13,14,15],"sh-ablation","lego-30k","sh-3","phase-5","partial",[18,21,24,27,30,33,36,39,42,45],{"key":19,"value":20},"dataset","\u002FUsers\u002Fotkrickey\u002Fdev\u002F3dgs-workspace\u002Fdatasets\u002Fnerf_synthetic\u002Flego",{"key":22,"value":23},"iterations","30,000",{"key":25,"value":26},"seed","42",{"key":28,"value":29},"capacity","1,000,000 splats",{"key":31,"value":32},"sh_degree","3",{"key":34,"value":35},"loss","L1Ssim",{"key":37,"value":38},"lambda","0.200",{"key":40,"value":41},"ssim","window=7 sigma=1",{"key":43,"value":44},"backend.backward","Simd",{"key":46,"value":47},"backend.loss_path","Gpu",{"psnr":49,"wallclock":50,"wallclock_regress":51,"splats":52,"final_loss":53},24.87872886657715,"23m 13s",false,83734,"2.325817e-2",{"loss":55,"splats":180},{"iters":56,"values":118},[57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117],1,500,1000,1500,2000,2500,3000,3500,4000,4500,5000,5500,6000,6500,7000,7500,8000,8500,9000,9500,10000,10500,11000,11500,12000,12500,13000,13500,14000,14500,15000,15500,16000,16500,17000,17500,18000,18500,19000,19500,20000,20500,21000,21500,22000,22500,23000,23500,24000,24500,25000,25500,26000,26500,27000,27500,28000,28500,29000,29500,30000,[119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179],0.3453388512134552,0.11787913739681244,0.10036688297986984,0.08209250867366791,0.057208940386772156,0.04563380032777786,0.04189000278711319,0.038237206637859344,0.03518235683441162,0.032660119235515594,0.03126656264066696,0.03157630190253258,0.02975877746939659,0.030238188803195953,0.028693070635199547,0.02829185500741005,0.027077343314886093,0.027929825708270073,0.028086300939321518,0.026469573378562927,0.026122812181711197,0.02632850781083107,0.027102988213300705,0.02605733461678028,0.026295151561498642,0.026127371937036514,0.02664172649383545,0.025870006531476974,0.025364812463521957,0.026380030438303947,0.025957943871617317,0.02443685755133629,0.02546783536672592,0.024762019515037537,0.025599896907806396,0.0254248958081007,0.024174226447939873,0.026081690564751625,0.024854574352502823,0.025711726397275925,0.025115804746747017,0.025431890040636063,0.024921180680394173,0.02467527613043785,0.023876767605543137,0.02432059869170189,0.025251824408769608,0.024873236194252968,0.024797800928354263,0.02421666868031025,0.024376273155212402,0.023208018392324448,0.024026796221733093,0.024264201521873474,0.024798937141895294,0.02309437282383442,0.023836204782128334,0.024612775072455406,0.023401588201522827,0.0231737419962883,0.02325817197561264,{"iters":181,"values":182},[57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117],[183,184,185,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52],5207,5494,21269,{"has_renders":187,"has_splat":51,"render_views":188},true,[189,190,191],"00","01","02",[193,222,242,261,277,296,310,326,341,361,380,398,431,449],{"id":194,"title":195,"date":196,"status":197,"polarity":198,"category":199,"axes":200,"tags":201,"task_code":208,"related_runs":209,"delta_psnr":217,"delta_wallclock":218,"rank":219,"verdict":16,"impact_summary":220,"detail_path":221},"a-4-nerf-synthetic-scene-results","A.4 NeRF Synthetic 他シーン展開 — 8 シーン complete 30k 結果","2026-05-24","stable","mixed","experiment",[57],[15,202,203,204,205,206,207],"nerf-synthetic","multi-scene","psnr","scene-dependency","evaluation","8-scenes","A.4",[5,210,211,212,213,214,215,216],"chair-30k","ficus-30k","drums-30k","hotdog-30k","mic-30k","materials-30k","ship-30k","-5.93 dB (8 シーン平均 18.95 vs lego 24.879、std ±6.0)","21-29 min (シーン非依存的、materials のみ +5 min)","high","8 シーン complete (lego + 7 新規) 30k 完遂。シーン依存性が PSNR で 17.6 dB の幅 (materials 12.71 〜 hotdog 30.29)、mean 18.95 ± 6.0 dB。本実装の brush SoTA 比 gap は scene-dependent で -7.4 dB (hotdog) 〜 -22.3 dB (ficus 含む)。共通要因仮説: SfM init.ply の sparsity (細い枝 \u002F マイク \u002F 反射 PBR で薄い) + refine grad_threshold の lego\u002Fhotdog tuning over-fit。卒論 evaluation で「lego baseline + multi-scene mean ± std」併記必須。","\u002Ffindings\u002Fa-4-nerf-synthetic-scene-results\u002F",{"id":223,"title":224,"date":196,"status":197,"polarity":225,"category":226,"axes":227,"tags":229,"task_code":236,"related_runs":237,"delta_psnr":238,"delta_wallclock":239,"rank":219,"verdict":225,"impact_summary":240,"detail_path":241},"p1-a-2-splat-eval-audit","P1.A.2 splat-rs eval audit — val split 100view・α 除外・rendered 黒背景の RGB-only PSNR","neutral","audit",[57,228],3,[230,231,232,233,234,226,235],"phase-1","brush-parity","eval","psnr-formula","convention-diff","self-trainer","P1.A.2",[5],"N\u002FA (本タスクでは PSNR を変えない、audit 結果のみ提示)","N\u002FA (audit のみ)","splat-rs trainer の eval は (1) val split 100 view・brush は test split 200 view、(2) PSNR は RGB のみ・α 除外、(3) rendered は raw f32 (clamp \u002F quantize なし)・brush 標準は u8 quant 後、(4) rendered は bg 合成なしで Σαi·Ti·ci のみ・target は white-bg pre-composite — の 4 つの diff 軸を持つ。training loss は 4ch (α 含む) で動くため、α 通り collapse が暗黙の white-bg 効果を作るが、convergence は不完全。P1.A.3 で 7 項目の切り分け reproducer を作り apparent gap (推定 −3〜−6 dB) を分離する。","\u002Ffindings\u002Fp1-a-2-splat-eval-audit\u002F",{"id":243,"title":244,"date":245,"status":197,"polarity":246,"category":199,"axes":247,"tags":248,"task_code":253,"related_runs":254,"delta_psnr":255,"delta_wallclock":256,"rank":257,"verdict":258,"impact_summary":259,"detail_path":260},"a-10-kahan-negative","A.10 Kahan summation — Metal compiler が compensator を最適化消去","2026-05-23","negative",[228],[15,249,250,251,252],"kahan","metal-compiler","variance","msl","A.10",[5],0,"+0.5% (overhead のみ)","low","rejected","Neumaier compensated summation の compensator term は MSL compiler の algebraic optimization で消去され、loss は bit-identical。Kahan は wallclock overhead だけ残し variance reduction 効果ゼロ。","\u002Ffindings\u002Fa-10-kahan-negative\u002F",{"id":262,"title":263,"date":245,"status":197,"polarity":246,"category":199,"axes":264,"tags":265,"task_code":253,"related_runs":269,"delta_psnr":273,"delta_wallclock":274,"rank":219,"verdict":197,"impact_summary":275,"detail_path":276},"a-10-variance-baseline","A.10 variance baseline — σ ±0.32 dB \u002F range 0.885 dB を実測",[228],[15,251,266,249,267,268],"gpu-non-determinism","atomic","apple-silicon",[5,270,271,272],"lego-variance-trial1-30k","lego-variance-trial2-30k","lego-variance-trial3-30k","σ ±0.32 dB \u002F range 0.885 dB","σ ±2.4% \u002F range 5.2%","M-3.x lego sh3 30k の PSNR variance は σ ±0.32 dB \u002F range 0.885 dB (4 run estimate)、wallclock variance は σ ±2.4% \u002F range 5.2%。原因は SIMD backward kernel の atomic_fetch_add 順序非決定性で、A.10 Kahan で消えない (compensator も bit-identical のところ)。卒論 finding として「Apple Silicon の variance band は数値精度の問題でなく GPU scheduler 由来」と確定。","\u002Ffindings\u002Fa-10-variance-baseline\u002F",{"id":278,"title":279,"date":245,"status":280,"polarity":225,"category":281,"axes":282,"tags":283,"task_code":289,"related_runs":290,"delta_psnr":-1,"delta_wallclock":291,"rank":292,"verdict":293,"impact_summary":294,"detail_path":295},"a-7-icb-batching-plan","A.7 #5.32 ICB \u002F per-iter command buffer commit reduction — 実装プラン","draft","spec",[228],[15,284,285,286,287,268,288],"icb","command-buffer","batching","metal","plan","A.7",[5],"target -10% (未検証)","mid","investigative","forward \u002F backward の各 chain を 1 cmd buffer に集約する simpler batching plan。期待効果 +15-30% wallclock 改善 (commit overhead 20-50% を集約)。スタイル A (Option\u003C&CommandBuffer> opt-in) で既存テスト 23 件を touch せず実装。target -10% wallclock \u002F PSNR drift \u003C 0.05 dB。","\u002Ffindings\u002Fa-7-icb-batching-plan\u002F",{"id":297,"title":298,"date":245,"status":197,"polarity":299,"category":199,"axes":300,"tags":301,"task_code":289,"related_runs":303,"delta_psnr":305,"delta_wallclock":306,"rank":292,"verdict":307,"impact_summary":308,"detail_path":309},"a-7-icb-batching-results","A.7 batched cmd buffer — wallclock -6.2% 改善 + PSNR drift -0.30 dB","positive",[228],[15,284,285,286,287,268,302],"results",[5,304],"lego-a7-batched-30k","-0.302 dB (24.577 vs 24.879)","-6.16% (1307.26s vs 1393s = -85.74s)","accepted","scope B 限定版 (forward 末尾の extract_offsets + rasterize.forward を 1 cmd buffer、backward chain の rasterize.backward + project_backwards を 1 cmd buffer) を env SPLAT_BATCHED_FORWARD=1 で活性化。30k bench で wallclock -6.2% \u002F PSNR drift -0.30 dB、Mildly positive。期待 -6〜-12% の下限、Apple Silicon の commit overhead が予想より小さい示唆。","\u002Ffindings\u002Fa-7-icb-batching-results\u002F",{"id":311,"title":312,"date":245,"status":197,"polarity":198,"category":199,"axes":313,"tags":314,"task_code":289,"related_runs":317,"delta_psnr":322,"delta_wallclock":323,"rank":219,"verdict":16,"impact_summary":324,"detail_path":325},"a-7-multi-scene-batched","A.7 × multi-scene — batching 効果は scene 依存 (-1.6% 〜 -18.6% で 12x の幅)",[228],[15,315,284,316,203,205,268],"a-7","batched",[210,318,211,319,212,320,213,321,5,304],"chair-batched-30k","ficus-batched-30k","drums-batched-30k","hotdog-batched-30k","+0.130 dB 〜 -0.828 dB (mean -0.21 dB)","-1.6% 〜 -18.6% (mean -7.0%)","A.7 batched cmd buffer の wallclock 改善は scene 依存で chair -18.6% \u002F hotdog -5.4% \u002F drums -3.4% \u002F ficus -1.6% \u002F lego -6.16% の 5 シーン (12x の幅)。chair の突出は splat 数最大 (~130k) + scene geometry の compute\u002Fcommit ratio が高いことが要因と推測。一方 ficus \u002F drums は variance 範囲内、独立 effect 断定不可。卒論で「A.7 effective ≠ universal、scene 選択 + workload analysis 必須」と honest framing。","\u002Ffindings\u002Fa-7-multi-scene-batched\u002F",{"id":327,"title":328,"date":245,"status":197,"polarity":246,"category":199,"axes":329,"tags":330,"task_code":334,"related_runs":335,"delta_psnr":337,"delta_wallclock":338,"rank":219,"verdict":258,"impact_summary":339,"detail_path":340},"a-9-f16-forward-negative","A.9 f16 forward — half3 accumulator が underflow + cast overhead で二重 negative",[228],[15,331,332,287,333,268],"f16","mixed-precision","underflow","A.9",[5,336],"lego-a9-f16-30k","-10.006 dB (14.873 vs 24.879)","+75.1% (2439.73s vs 1393s)","half3 per-pixel accumulator が low-T 領域 (alpha * T \u003C 6e-5) で underflow → 寄与 splat の累積消失で PSNR -10.0 dB。さらに half↔float cast が compute bound でも重く wallclock +75%。Apple Silicon SIMD は half と float が同 throughput、bandwidth bound でないので f16 化は loss-only。","\u002Ffindings\u002Fa-9-f16-forward-negative\u002F",{"id":342,"title":343,"date":245,"status":197,"polarity":198,"category":199,"axes":344,"tags":345,"task_code":351,"related_runs":352,"delta_psnr":357,"delta_wallclock":358,"rank":292,"verdict":16,"impact_summary":359,"detail_path":360},"e-5-iter-scaling","E.5 iter scaling — 10k で 96.7% 品質、kerbl_exp_decay artifact で non-monotonic",[228],[15,346,347,348,349,350],"e-5","iter-scaling","lr-schedule","kerbl-exp-decay","mobile","E.5",[353,354,355,356,5],"lego-iter10000","lego-iter15000","lego-iter20000","lego-iter25000","+0.000 〜 -0.966 dB (mean -0.41 dB from 30k baseline)","-70% 〜 -18% (iter 数に比例)","10k iter で PSNR 24.007 dB を達成、30k baseline (mean 24.834) の 96.7% 品質、wallclock 1\u002F3.4。15k → 23.932、20k → 23.868、25k → 24.623 と non-monotonic で kerbl_exp_decay lr schedule の max_steps 依存性 artifact が混入。卒論モバイル含意では「10k iter で十分、追加 iter は variance noise」と言える反面、E.5 として「fair な iter scaling 比較には固定 schedule での checkpoint 取得が必要」と spec 化が必要。","\u002Ffindings\u002Fe-5-iter-scaling\u002F",{"id":362,"title":363,"date":245,"status":197,"polarity":299,"category":199,"axes":364,"tags":365,"task_code":370,"related_runs":371,"delta_psnr":376,"delta_wallclock":377,"rank":219,"verdict":307,"impact_summary":378,"detail_path":379},"e-6-capacity-scaling","E.6 capacity scaling — 50k〜1M で PSNR variance band 内、本質的 splat 数 ≈ 85k で plateau",[228],[15,366,367,350,368,369],"e-6","capacity-scaling","plateau","regularization","E.6",[372,373,374,375,5],"lego-cap50000-30k","lego-cap100000-30k","lego-cap200000-30k","lego-cap500000-30k","±0.44 dB (variance band 内、有意差なし)","-3% 〜 -4% (capacity 小で僅かに速い)","lego では capacity 50k から 1M まで PSNR は 24.605 〜 25.275 dB で variance σ ±0.32 dB band 内、capacity effect は実質ゼロ。final splats は 50k 飽和 → 81k → 85k → 84k と「本質的 ~85k で plateau」を実証。モバイル制約下で capacity 50-100k を choose しても 1M と同等品質、卒論モバイル章の重要数値。capacity 大きいほど refine が無駄 split で variance noise を増やす副作用も観測。","\u002Ffindings\u002Fe-6-capacity-scaling\u002F",{"id":381,"title":382,"date":245,"status":197,"polarity":198,"category":199,"axes":383,"tags":385,"task_code":392,"related_runs":393,"delta_psnr":394,"delta_wallclock":395,"rank":219,"verdict":293,"impact_summary":396,"detail_path":397},"m4-brush-bench","M4 Max 上 brush (wgpu→Metal) の 30k baseline — wgpu 抽象は自作より速かった",[384],2,[386,387,388,389,390,391],"phase-2","brush","wgpu","baseline","m4-max","abstraction-cost","A.3",[5],"+11.13 dB (brush 比優位)","−65.6% (brush の方が速い)","wgpu 抽象は自作 native より遅いはず、という想定が逆。同一 M4 Max 上で brush (wgpu) が 9m08s \u002F 37.40 dB、自作 (Metal 直) が 26m32s \u002F 26.27 dB。第 2 軸 (抽象コスト定量化) の主張を再 framing する必要が確定。","\u002Ffindings\u002Fm4-brush-bench\u002F",{"id":399,"title":400,"date":8,"status":280,"polarity":198,"category":401,"axes":402,"tags":403,"task_code":410,"related_runs":411,"delta_psnr":427,"delta_wallclock":428,"rank":219,"verdict":16,"impact_summary":429,"detail_path":430},"final-ablation-table","A.5 Final Ablation Table — brush vs 自作 + パラメータ ablation","tables",[57,384,228],[15,404,405,406,407,203,387,408,409],"ablation","table","sh-degree","mcmc","cuda","resolution-scaling","A.5",[412,413,414,5,415,416,417,418,419,420,421,422,381,423,424,425,426],"lego-sh0-30k","lego-sh1-30k","lego-sh2-30k","lego-mcmc-30k","lego-res200-30k","lego-res400-30k","lego-res800-30k","chair-sh3-30k","ficus-sh3-30k","drums-sh3-30k","hotdog-sh3-30k","c32-brush-bench","c32-orig3dgs-bench","c32-gsplat-smoke","phase5-step31-x-30k","-12.6 dB (自作 24.84 vs brush 37.46)","brush は自作の 0.39× (= 2.59x 速い、同 M4 Max)","三層対比 (自作 M4 \u002F brush V100 \u002F CUDA V100) で wgpu→Vulkan が 37.46 dB \u002F 8m24s と CUDA orig (28.4) \u002F gsplat (32.9) より高 PSNR + 高速、自作 24.84 \u002F 23m40s に対し brush wgpu→Metal が 37.40 \u002F 9m08s。「wgpu 抽象は重い」の素朴予想が 2 機種で逆転し、第 2 軸の主張を『抽象コスト \u003C 実装最適化レベル』に再 framing 必須。","\u002Ffindings\u002Ffinal-ablation-table\u002F",{"id":432,"title":433,"date":8,"status":197,"polarity":246,"category":434,"axes":435,"tags":436,"task_code":445,"related_runs":446,"delta_psnr":-1,"delta_wallclock":-1,"rank":219,"verdict":307,"impact_summary":447,"detail_path":448},"negative-findings-chapter","§5.4 Negative findings — 失敗から得た 3 つの発見 (卒論章ドラフト)","chapter",[57,384,228],[437,438,434,439,407,440,441,442,443,444],"thesis-draft","negative-findings","scale-reg","argbuffer","queue-reuse","m3x","honest-reject","methodology","§5.4",[5],"3 ストーリー (scale_reg 3 連敗 \u002F MCMC 4 連敗 \u002F #5.31 ArgBuffer 却下 → M-3.x 偶発発見) を「事前 commit gate に基づく honest reject が engineering 上の時間配分を保護し、失敗の数字自体が次に必要な infrastructure の signal を encode する」という方法論として整理。M-3.x baseline と第 3 軸 (unified memory) narrative はいずれもこの経路で確定。","\u002Ffindings\u002Fnegative-findings-chapter\u002F",{"id":450,"title":451,"date":452,"status":197,"polarity":299,"category":453,"axes":454,"tags":455,"task_code":460,"related_runs":461,"delta_psnr":462,"delta_wallclock":463,"rank":219,"verdict":307,"impact_summary":464,"detail_path":465},"phase5-step31-x-gpu-loss","Phase 5 #5.31.x — GPU loss kernel + no-readback pipeline (wallclock -26.9% + variance 解明)","2026-04-30","speed",[228],[15,442,456,457,458,251,459,287],"gpu-loss","unified-memory","host-pump","no-readback","#5.31.x",[5],"variance 内 (band 25.0 ± 0.6 dB)","-26.9% (2k) \u002F -14〜-19% (30k, n=4)","host pump pipeline を排除し forward\u002Floss\u002Fbackward を GPU buffer で連結。2k iter wallclock -26.9% (42.5 → 31.07 ms\u002Fiter)、30k では n=4 variance test で wallclock -14〜-19% を再現。当初の PSNR -0.65 dB regression 主張は撤回 (band 25.0 ± 0.6 dB 内)。第 3 軸 (unified memory) narrative の核。","\u002Ffindings\u002Fphase5-step31-x-gpu-loss\u002F",1782449788239]