本研究では、NeuronaBoxと呼ばれる分散型 DNN トレーニングワークロードのエミュレーションアプローチを提案している。NeuronaBoxは、実際のノードの一部を実行し、ネットワーク実行環境とコレクティブ通信操作をエミュレートすることで、パフォーマンスを正確に観察することができる。
NeuronaBoxの設計では、使いやすさと並列化戦略の柔軟性・独立性の2つの原則に従っている。ワークフローでは、まずユーザーが訓練スクリプトと構成を提供する。次に、NeuronaBoxはエミュレーション環境を初期化し、ネットワークトポロジーを合成し、コレクティブ操作のための遅延時間を計算する通信モデルを構築する。最後に、訓練スクリプトが起動され、反復時間やリソース利用率などのパフォーマンスメトリックが収集される。
NeuronaBoxは、ノード間の相互作用がコレクティブ通信レイヤーのみを通じて行われるという仮定に基づいている。これにより、エミュレーションする必要のある接続数とデータ転送量が少なくなり、NeuronaBoxのスケーラビリティが向上する。
NeuronaBoxのプルーフオブコンセプト実装では、PyTorchフレームワークとNCCLライブラリを使用している。実験の結果、NeuronaBoxは2ノードの環境でデータ並列化を行う際に1%未満の誤差で正確にエミュレーションできることを示した。また、CPUの使用率も低下することがわかった。これは、NeuronaBoxの軽量で効率的な実装によるものと考えられる。
さらに、NeuronaBoxを使用して、BERT モデルの訓練時間に対するオールリデュース遅延の影響を分析する「what-if」分析を行った。その結果、2ミリ秒未満の遅延では、計算と通信の重複により、エンドツーエンドのパフォーマンスへの影響が小さいことがわかった。このような洞察は、NeuronaBoxを使用することで得られる可能性がある。
To Another Language
from source content
arxiv.org
Önemli Bilgiler Şuradan Elde Edildi
by Banruo Liu,M... : arxiv.org 05-07-2024
https://arxiv.org/pdf/2405.02969.pdfDaha Derin Sorular