核心概念
深層学習ジョブは、リソースの変更に柔軟に対応できるよう、動的に並列化の設定を変更する必要がある。TENPLEX は、ジョブの状態を並列化可能なテンサーコレクションとして表現し、リソース変更時に効率的に状態を変換することで、この課題に取り組む。
要約
深層学習(DL)ジョブは、データ並列化、モデル並列化、パイプライン並列化などの多次元並列化を組み合わせることで、大規模なGPUクラスターを効率的に活用している。しかし、長期間実行されるDLジョブでは、リソースの変更が必要になることがある。例えば、クラスターの弾力性によりGPUリソースが追加/削除される、ハードウェアメンテナンスのためにGPUが変更される、あるいはGPU障害により実行に使えるGPUが減少する、などの理由がある。
現在のDLフレームワークでは、ジョブがGPUに固定されているため、これらのシナリオに柔軟に対応できない。特に、実行中のジョブの並列化設定を効率的かつモデル非依存的に変更することはできない。
TENPLEX は、DLシステムの状態を並列化可能なテンサーコレクション(PTC)として表現し、リソース変更時にPTCを変換することで、ジョブの並列化設定を動的に変更できる。PTCは、データセットの状態とモデルの状態を階層的に表現する。リソース変更時、TENPLEX はPTCの変換計画を立て、データとモデルの状態を並列に再構成する。これにより、DLジョブの並列化設定を効率的に変更できる。
統計
DLジョブの実行時間は175億パラメータのGPT-3モデルで538分に及ぶ。
GPUリソースの変更は平均35分ごとに行われる。
引用
"DLジョブは、リソースの変更に柔軟に対応できるよう、動的に並列化の設定を変更する必要がある。"
"現在のDLフレームワークでは、ジョブがGPUに固定されているため、リソース変更に柔軟に対応できない。"