PascalからBlackwellまで、ワープ分岐の実態を解明

Characterizing Warp Divergence from Pascal to Blackwell

PascalからBlackwellまで、ワープ分岐の実態を解明

VoltaでIndependent Thread Scheduling(ITS)が導入されて以来、NVIDIA GPUのワープ分岐は固定された方法で処理されると広く考えられてきた。本研究では、Pascalをベースラインとし、Ampere、Hopper、そしてデータセンター向け・コンシューマ向けのBlackwell GPUでこの仮定を検証。サイクル精度のマイクロベンチマーク、ハードウェアカウンタ、コンパイラ生成SASSの静的解析を組み合わせ、安定した挙動とアーキテクチャの変化を分離した。全世代で、分岐パスはパス数kに比例して直列化され、T(k)≈skとなり、超線形の再収束ペナルティは見られない。ワープ実行効率は32/kに低下し、ペナルティは占有率に依存せず、予測は直列化コストを排除する。同じ挙動がPascalにも見られ、このプログラマから見えるコストモデルはITSより前から存在する。一方、コンパイラが生成する再収束機構は大きく変化しており、PascalのSSY/SYNC命令スタックから、後の世代ではバリアレジスタ命令へと移行。即時ポストドミネータを超える遅延再収束はAmpereの29件からBlackwellでは2件に減少。Blackwellは2層の収束バリア分類、均一分岐命令、明示的部分マスクワープ同期を導入するが、これらはAmpereやHopperにはない。制御ビット反転実験により、新しいバリアクラスは静的なコンパイラ分類であり、実行時効果は観測されないことが示された。

分岐は、NVIDIAの制御フローISAと再収束機構が進化し続ける中でも、安定した予測可能な性能コストを維持している。

同じ日のその他の記事

2026-08-03