# テンソル並列
## 定義
テンソル並列(tensor parallelism, TP)は、単一のレイヤー内の行列演算(GEMM)を複数の GPU/アクセラレータに分割して並行実行するモデル並列化の方式である。レイヤー間を分割するパイプライン並列と対比して「レイヤー内モデル並列(intra-layer model parallelism)」とも呼ばれる。
Megatron-LM([[@2019__arXiv__Megatron-LM Training Multi-Billion Parameter Language Models Using Model Parallelism]])が提案した実装が標準的な設計として普及しており、Transformer の MLP ブロックと多頭自己注意ブロックそれぞれに固有の分割を適用する。
### MLP ブロックの列-行分割
2 層 MLP の第一重み行列 $A$ を列方向に分割($A = [A_1, A_2]$)することで、GeLU 非線形を各 GPU が独立に適用できる。
$[Y_1, Y_2] = [\text{GeLU}(XA_1), \text{GeLU}(XA_2)]$
第二 GEMM を行方向に分割し、出力を all-reduce することで同期する。順伝播 1 回・逆伝播 1 回の計 **2 回の all-reduce** で MLP 全体の分散実行が完結する。
### 多頭注意ブロックのヘッド単位分割
多頭注意の K/Q/V 射影 GEMM を列並列に分割し、各 GPU が担当ヘッドを独立に計算する。即時通信なしで自己注意を完遂でき、後段の出力射影 GEMM を行並列とすることで all-reduce だけで同期する。注意ブロックでも **2 回の all-reduce** で完結する。
### 1 レイヤーあたりの通信量
Transformer の 1 レイヤーで MLP + 注意の計 **4 回の all-reduce**(順伝播 2 回・逆伝播 2 回)のみで実現する(Megatron-LM の実装)。
## 横断的知見
- **テンソル並列はノード内高帯域を前提とする**: Megatron-LM は TP をノード内(NVLink/NVSwitch、ノード内 300 GB/秒)に限定し、8-way 並列で 77% のスケーリング効率を達成する。ノード間(IB、100 GB/秒)への拡張は通信律速になり、MegaScale・SAKURAONE・DeepSeek-V3 等の実システムも「TP はノード内」という配置原則を守っている。([[@2019__arXiv__Megatron-LM Training Multi-Billion Parameter Language Models Using Model Parallelism]], [[@2024__NSDI__MegaScale - Scaling Large Language Model Training to More Than 10,000 GPUs]], [[@2026__MLSys2026__SAKURAONE - An Open Ethernet-Based AI HPC System]])
- **テンソル並列を使わずパイプライン並列で代替する設計もある**: [[DeepSeek-V3]] の DualPipe は計算と通信を完全にオーバーラップさせることでノード内高帯域 TP を不要にし、PP16 + EP64 + DP 構成でテンソル並列ゼロを実現した。通信を隠蔽できれば TP なしで大規模訓練が可能であることを示す。([[@2024__arXiv__DeepSeek-V3 Technical Report]])
- **1-D TP から多次元 TP への発展**: Megatron-LM の 1-D 分割を基礎に、後続研究は 2-D(Optimus)、2.5-D(Tesseract)、3-D テンソル並列と発展した。サーベイ [[@2026__Vicinagearth__Efficient Training of Large Language Models on Distributed Infrastructures - A Survey]] §4 はこれらを Hybrid Parallelism の「Tensor Parallelism」次元として体系化している。
- **TP はバックエンド移行時の重み layout 非互換を引き起こす**: FSDP→Megatron 移行時に FFN 重みの layout 変化が Tensor Core の 128B アラインメント不適合を招き FLOPS が 65.3% 低下した事例がある。TP の分割方式が物理 layout と密結合しているため、フレームワーク間の移行には注意を要する。([[@2025__arXiv__XPUTimer - Anomaly Diagnostics for Divergent LLM Training in GPU Clusters of Thousand-Plus Scale]])
## 未解決の問い
- TP 並列度(ノード内 GPU 数)の上限を NVLink 世代のみで決まるか、それとも GEMM サイズの最小化(計算効率低下)も制約するか。Megatron-LM は 8-way を実用上の上限と示唆するが、NVLink 5th 世代(H100 NVSwitch: 900 GB/秒)ではどこまで拡大できるか。
- Megatron-LM の 1-D TP と 2-D/2.5-D/3-D TP は、モデルサイズ・GPU 数・ノード構成のどの組み合わせで優位が入れ替わるか。
- DualPipe/通信計算オーバーラップで TP を不要化する設計は、密モデル(dense)と MoE モデルで同様に成立するか。MoE では EP が TP の役割を一部代替するが、密モデルでの TP ゼロ設計は一般化できるか。
- TP の all-reduce は順伝播と逆伝播で各 2 回必要だが、sequence parallelism と組み合わせた場合(Megatron-SP)の通信量とオーバーラップ設計はどう変わるか。
## 関連
- ソース: [[@2019__arXiv__Megatron-LM Training Multi-Billion Parameter Language Models Using Model Parallelism]] / [[@2026__Vicinagearth__Efficient Training of Large Language Models on Distributed Infrastructures - A Survey]] / [[@2024__NSDI__MegaScale - Scaling Large Language Model Training to More Than 10,000 GPUs]] / [[@2024__arXiv__DeepSeek-V3 Technical Report]] / [[@2025__arXiv__XPUTimer - Anomaly Diagnostics for Divergent LLM Training in GPU Clusters of Thousand-Plus Scale]]
- 概念: [[並列化戦略]] / [[LLM分散学習]] / [[集合通信]] / [[Mixture-of-Experts]]
- エンティティ: [[Megatron-LM]] / [[Mohammad Shoeybi]] / [[NVIDIA]] / [[DeepSeek-V3]]
- 関連 MOC: [[分散深層学習 - MOC]]
## 出典
- [[@2019__arXiv__Megatron-LM Training Multi-Billion Parameter Language Models Using Model Parallelism]](提案元。MLP 列-行分割・注意ヘッド分割・1 レイヤー 4 all-reduce・512 GPU 76% スケーリング効率・Pre-LayerNorm)
- [[@2026__Vicinagearth__Efficient Training of Large Language Models on Distributed Infrastructures - A Survey]](§4 Tensor Parallelism: 1-D から 3-D への発展の体系化)
- [[@2024__NSDI__MegaScale - Scaling Large Language Model Training to More Than 10,000 GPUs]](TP=8 ノード内限定・通信オーバーラップ設計・175B / 530B の本番構成)
- [[@2024__arXiv__DeepSeek-V3 Technical Report]](DualPipe によるテンソル並列ゼロの設計)
- [[@2025__arXiv__XPUTimer - Anomaly Diagnostics for Divergent LLM Training in GPU Clusters of Thousand-Plus Scale]](FSDP→Megatron 移行時の layout 非互換による FLOPS 低下の事例)