AI・機械学習
上級

FlashAttention-3(フラッシュアテンションスリー)

NVIDIA Hopper(H100/H200)アーキテクチャの非同期計算・FP8精度・WGMMA命令を活用したアテンション計算最適化。FlashAttention-2比で最大2倍の高速化を達成する。

0 回閲覧
0 いいね
2026/6/8 更新
関連タグ
FlashAttention
H100最適化
アテンション高速化
Hopper GPU
FP8推論

FlashAttention-3とは

StanfordのTri Daoらが2024年に発表した、NVIDIA Hopper GPU(H100/H200)向けの高度に最適化されたアテンション計算カーネル。FlashAttention-2の設計思想(HBMアクセス最小化・SRAMタイリング)を継承しつつ、Hopperアーキテクチャ固有の機能を最大限活用して大幅な高速化を実現。

FlashAttention進化の経緯

FA-1(2022): HBM最小化・タイリング → A100で2〜4倍高速化。 FA-2(2023): ワークパーティション・GQA対応 → A100でFLOPS利用率70%。 FA-3(2024): Hopper専用・非同期・FP8対応 → H100でFLOPS利用率75%超。

H100(Hopper)アーキテクチャ活用

Tensor Memory Accelerator(TMA)

H100が新たに搭載したTMAは、グローバルメモリ(HBM)からシェアードメモリへのデータ転送を非同期で実行できるハードウェア機能。FA-3はTMAを使用してメモリ転送とGEMM計算を重ね合わせ(パイプライン化)、転送待ち時間を隠蔽する。

FA-2では同期実行だったメモリ転送と行列計算を、FA-3では非同期パイプラインで並列実行する。HBM帯域とTensorCore使用率が同時に最大化される。

WGMMA命令(Warpgroup Matrix Multiply Accumulate)

Hopperの新命令WGMMAはSM単位ではなくWarpgroup(4 Warp = 128スレッド)単位で大規模な行列乗算を実行。FA-2で使用していたH/WMMA命令より大きなタイルを1命令で処理でき、命令発行オーバーヘッドを削減。

FP8テンソルコア対応

HopperのFP8テンソルコアはBF16の2倍のスループット。FA-3はFP8精度でのアテンション計算をサポートし、推論時のメモリ帯域使用量を半減させながら高いFLOPS利用率を維持する。

性能ベンチマーク(2024年公開)

H100 SXM5、seqlen=8192、head_dim=128、BF16での測定:

  • FA-2: 約650 TFLOPs(FLOPS利用率約60%)
  • FA-3: 約740〜780 TFLOPs(FLOPS利用率75%超)
  • 改善率: 約20〜25%

FP8での更なる向上: FP8はBF16比でテンソルコアスループット2倍のため、精度許容範囲内での使用でFP8 FA-3はBF16 FA-2比で最大2倍のスループット。

インストールと使用

pip install flash-attn --no-build-isolation でインストール。H100環境では自動的にFA-3カーネルが選択される。flash_attn_func(q, k, v, causal=True) で標準使用可能。

他のアテンション実装との比較

PyTorch SDPA: 全GPU対応、FP16/BF16、FA-2をバックエンドで使用。FlashAttention-2: A100/A10対応、現在の主流。FlashAttention-3: H100/H200のみ、FP16/BF16/FP8対応、2024〜最新。SageAttention: A100/H100対応、INT8/FP8量子化特化。

まとめ

FlashAttention-3はH100/H200のHopperアーキテクチャ専用に設計された高性能アテンションカーネル。TMA非同期転送・WGMMA命令・FP8サポートにより、FA-2比で15〜25%(FP8では最大2倍)の高速化を達成。vLLM・SGLang・Transformersなど主要フレームワークがH100環境でFA-3を採用しており、2025年の大規模LLM推論・学習の標準的な基盤技術となっている。

この記事について
カテゴリーAI・機械学習
難易度上級
作成日2026/6/8