[論文レビュー] Synthesizing Optimal Parallelism Placement and Reduction Strategies on Hierarchical Systems for Deep Learning
本稿では、マルチレベルGPUシステムにおけるディープラーニングのための最適な並列処理配置と階層に配慮した削減戦略を合成するフレームワーク$P^{2}$を提示する。構造的行列を用いた並列処理のモデル化と、形式的意味論に基づく構文誘導型プログラム合成を活用することで、通信オーバーヘッドを低減し、全削減性能が最大448×向上し、69%のケースでデフォルト実装比で2.04×の高速化を達成する。また、シミュレータはトップ10性能を92%の精度で予測する。
We present a novel characterization of the mapping of multiple parallelism forms (e.g. data and model parallelism) onto hierarchical accelerator systems that is hierarchy-aware and greatly reduces the space of software-to-hardware mapping. We experimentally verify the substantial effect of these mappings on all-reduce performance (up to 448x). We offer a novel syntax-guided program synthesis framework that is able to decompose reductions over one or more parallelism axes to sequences of collectives in a hierarchy- and mapping-aware way. For 69% of parallelism placements and user requested reductions, our framework synthesizes programs that outperform the default all-reduce implementation when evaluated on different GPU hierarchies (max 2.04x, average 1.27x). We complement our synthesis tool with a simulator exceeding 90% top-10 accuracy, which therefore reduces the need for massive evaluations of synthesis results to determine a small set of optimal programs and mappings.
研究の動機と目的
- 複数の並列処理形態(例:データ並列、モデル並列)の非最適マッピングが引き起こす分散ディープラーニングにおける高い通信コストを解消すること。
- マッピングの階層に配慮した行列ベース表現を導入することで、有効な並列処理配置と削減戦略の探索空間を縮小すること。
- 形式的意味論とドメイン特化言語(DSL)を用いたプログラム合成フレームワークを開発し、最適化された集約通信シーケンスを生成すること。
- シミュレーションを活用した正確な性能予測を実現し、合成プログラムの本格的評価にかかるコストを最小限に抑えること。
- 多様なGPUトポロジーにおいて、標準の全削減実装を上回るカスタム削減戦略が、特に複雑な並列処理の組み合わせ下でも優れていることを示すこと。
提案手法
- 並列処理配置を、並列処理の軸(例:データ、モデル)をシステム階層レベル(例:ラック、サーバ、GPU)にマッピングする並列処理行列としてモデル化することで、探索空間を著しく縮小する。
- 階層的削減を表現するためのドメイン特化言語(DSL)を導入し、正当性を保証するための形式的意味論(ホアートリプルに基づく)を採用する。
- 構文誘導型合成手順により、形式的意味論に従って意味的に妥当なように、集約操作(例:AllReduce)のシーケンスをDSLから生成する。
- 並列処理行列を活用して、有効なプログラムが見逃されないよう、可能な削減戦略の探索空間をプルーニングし、効率性を向上させる。
- NIC、PCIe、NVLinkなどの異なるネットワークレイヤーの通信コストを、現実的な帯域幅仮定に基づいてモデル化するシミュレータを備える。
- XLAおよびNCCLと統合された合成パイプラインにより、標準的なディープラーニングワークロードを用いて実システム上で評価可能となる。
実験結果
リサーチクエスチョン
- RQ1表現力や完全性を損なわせることなく、階層的システムにおける並列処理配置の探索空間をどのように縮小できるか?
- RQ2異なる並列処理マッピングが、多様なGPUシステムトポロジーにおける全削減性能に与える影響は何か?
- RQ3形式的意味論とDSLベースのアプローチにより、高性能で階層に配慮した削減戦略を合成可能であり、デフォルトのAllReduce実装を上回るのか?
- RQ4シミュレーションは、合成された削減戦略の性能をどの程度正確に予測できるか?これにより、高価なハードウェア評価の必要性はどれほど削減できるか?
- RQ5並列処理行列のモデル化と構文誘導型合成の組み合わせは、ディープラーニングワークロードにおける最適な通信パターンの特定にどの程度有効か?
主な発見
- 1つのAllReduce演算の性能は、並列処理配置の違いにより最大448.5倍も変動し、マッピング選択の通信効率への顕著な影響を示している。
- 69%の並列処理配置において、合成された削減戦略がデフォルトのAllReduce実装を上回り、最大2.04倍の高速化、平均1.27倍の高速化を達成した。
- シミュレータは、最良の削減戦略を予測する際、トップ10の精度が92%に達し、本格的ハードウェア評価の必要性を顕著に低減した。
- 本フレームワークは、複雑なトポロジーにおいても近似的に最適なプログラムを効果的に特定でき、V100およびA100 GPUシステムにおける実験結果と予測結果が密接に一致した。
- XLAの最適化はシミュレーションの正確性に影響を与えることがあるが、$P^{2}$は依然として最適化されたプログラム(例:1つのAllReduceステップに簡略化されたもの)の性能を正しく予測できた。
- 形式的意味論と構文誘導型合成の活用により、生成されたすべてのプログラムが意味的に妥当であり、誤検出や最適解の見逃しは発生しなかった。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。