GitHub Repo
PyTorchコミュニティ、GB10のソースビルドの不具合を報告 FP8行スケーリング行列演算でCUDAコンテキストが無効化される可能性
PyTorchコミュニティは11月9日、12.1アーキテクチャのみを指定したビルドで、GB10の行スケーリングFP8行列演算がGPUエラーを引き起こす可能性を報告した。報告者はコンパイル条件の修正案を示し、テストの成功を報告したが、公式パッケージは影響を受けないとされ、修正のリリース状況は確認されていない。

PyTorchコミュニティは11月9日、NVIDIA GB10/DGX Sparkのソースビルドに影響する問題を報告した。TORCH_CUDA_ARCH_LIST=12.1を設定した後、行スケーリングを使うFP8のtorch._scaled_mmを初めて実行すると、デバイス側トラップが発生してCUDAコンテキストが無効化され、同じプロセスで後続のCUDA呼び出しも失敗する可能性がある。報告者によると、公式リリースのwheelは別のアーキテクチャ向けビルド経路を含むため、この問題の影響を受けない。問題報告
ポイントは、ハードウェアの能力とコンパイルターゲットの違いにある。NVIDIAの公式情報では、GB10のCompute Capabilityは12.1とされている。一方、CUDAのドキュメントによると、アーキテクチャ固有の命令を使うにはaサフィックス付きのコンパイルターゲットを選ぶ必要があり、基本のCompute Capabilityを指定するだけでは命令セット全体が有効にならない。そのため、「GPUがサポートされていること」と「特定のカーネルが正しくコンパイルされていること」は、別々に検証する必要がある。GPU一覧、CUDAアーキテクチャターゲットの説明
報告者の分析によると、cmake/Codegen.cmakeは従来、既存のフラグにcompute_120が含まれる場合に限り、関連ファイルにsm_121aを追加していた。そのため、12.1だけを指定すると、この処理が行われなかった。修正案では、条件がcompute_120とcompute_121の両方を認識するようにする。報告者は、同じマシンで修正を適用したところ、関連する行列演算テストで543件が成功し、失敗はなかったと報告した。これは投稿者が提示した結果であり、複数の環境で検証された結果ではない。ビルド分析とテスト結果
低精度推論環境を自らコンパイルするエンジニアにとって、この報告は、ビルドに成功した後も実際のFP8カーネルをテストし、比較できるようコンパイルフラグを記録しておく必要性を示している。現時点の証拠は、特定のGB10、CUDA 13.0、開発版環境に限られる。すべてのBlackwell製品やPyTorchのインストールに問題があると解釈することはできない。今後は修正がマージされるか、どのバージョンに含まれるか、単一アーキテクチャのビルドに回帰テストが追加されるかを確認する必要がある。