Phase 0 〜 6 / 達成済の節目 4 件 / 3 軸貢献の整理。
2026-04-24 の L1 ピボットで「Apple Silicon native 実装 × wgpu 抽象コスト定量化 × ユニファイドメモリ活用」の 3 軸構成に確定。以下は時系列の Phase 進行。
GPU 在庫の把握 (V100×2 / A6000×3 / RTX 6000 Ada×4)、SSH 設定、Lab status script の整備。
既存実装 brush (Rust + wgpu) を M4 Max で動作させ、比較の上限基準値を取得。
全約 2,300 行のシェーダ群を読み解き、アーキテクチャノートを作成。自作実装の設計参考に。
types / SH / projection / tile / PLY / scene / main を段階構築。brush 互換 PLY の描画まで到達。
HAC / Compressed 3DGS / On-the-fly Splatting / 3DGS.zip Survey / SUCCESS-GS を読解。卒論の positioning 用。
A6000 / RTX 6000 Ada で brush + 原著 3DGS + gsplat を実行。「CUDA (抽象なし) vs wgpu vs Metal 直」の対比で第 2 軸を補強。VPN 接続が必要、次月着手予定 (1〜2 週)。
GPU projection (AoS → SoA path)、tile binning (emit_pairs + radix sort)、深度ソート (64-bit packed key) を順次実装。
自作 backward (rasterize / project の VJP)、Adam optimizer、LR ExpDecay、Refine (clone/split/prune)、学習ループ orchestration を実装。
SSIM 係数・窓・近傍点数・初期化範囲を sweep。MCMC 移植は 4 連敗で future work 化、scale 正則化 4 種も -7 dB 級劣化で future work 化 (卒論の negative findings 章で活用)。
Metal System Trace で律速箇所 (逆伝播ラスタライズ 52.1%) を同定し、3 段階で最適化。引数バッファは却下したがその調査が M-3.x の発見につながった。Unified memory zero-copy 検証も完了。
Phase A〜E の独立 loop。convention coupling 発見 (gt_convention=premultiplied 1 行で +14.54 dB shift)、Phase D opacity decay の universal win-win-win (全 8 scene で PSNR + splats + wallclock 同時改善)、axis 1 ROI 上限を clean profile で実測 (emit_pairs -14% / radix_sort -13% が future work)。
#5.34 SSIM タイルシェーダ (TBDR imageblock_data、3〜5 時間)、#5.32 MTLIndirectCommandBuffer、補助最適化 (project_soa SH eval SIMD、radix_hist 改善、buffer caching)。axis 1 future work と統合検討。
3 軸統合 + future work 章 + §5.4 negative findings 章 (P1 セッション 6 subsection 統合済、436 行 draft)。Phase 2 CUDA baseline が揃った段階で本格化。
| 節目 | 内容 | PSNR | 時間 |
|---|---|---|---|
| M-1 | Phase 4 後続の最終 (パラメータ探索 sweep 統合) | 25.59 dB | 37m48s |
| M-2 | 逆伝播ラスタライズの SIMD 集約化 (kernel 2.43×) | 25.79 dB | 30m00s (-20.7 %) |
| M-3 | 命令キュー (MTLCommandQueue) の再利用 | 26.27 dB | 26m32s (-13.7 %) |
| M-3.x | 損失計算の GPU カーネル化、CPU 読み戻し排除 | 25.30 dB* | 22m14s (-14〜-19 %) |
| P1.M5 | brush parity loop 完遂 — Lego val brush +4.07 dB、8 scene mean brush +0.63 dB (2026-05-25) | 36.106 dB | 41m54s / chain 5h 5m (-61%) |
* 4 試行平均。25.0 ± 0.6 dB の分散帯内で従来手法と統計的に同等。brush Lego 参考値は 37.38 dB (paper) / 32.04 dB (M4 Max val、本実装と同じ convention)。P1.M5 は brush val を Lego 単独で +4.07 dB、8 scene mean で +0.63 dB 上回り。
docs/thesis/chapter-5-4-negative-findings.md に完成済)。本文取り込みと Chapter 4.2 三層対比の Phase 2 数字確保が次の節目。p1-profiling-clean で実測した share shift: emit_pairs 14.2% (新第 1 候補、-14% 上限) / radix_sort 13.6% (旧 27% から下方修正、-13% 上限) / backward_raster 13% / ssim_fusion 7〜8%。Phase 5 (full) の #5.34 SSIM TBDR と統合検討。imageblock_data) を使って SSIM 7×7 畳み込みを高速化。学習時間 〜3 % 改善 + Apple 固有の論述強化。第 3 軸 + axis 1 future work の補強。