[論文レビュー] Design and Operation of Shared Machine Learning Clusters on Campus
TACCは、4層のワークフロー抽象化(スキーマ、コンパイラ、スケジューリング、実行)を通じて、大規模な機械学習ワークロードの効率的でスケーラブルかつ再現可能な実行を可能にするフルスタッククラウドインfrastrucureです。これにより、最小限のコード変更でシステム最適化を動的に統合でき、分散DNN学習、最適化されたネットワーキング、専用ハードウェアのサポートをシームレスに提供し、デプロイの簡素化とML学習の高速化を実現します。
Amid the rapid advancements in large machine learning (ML) models, universities worldwide are investing substantial funds and efforts into GPU clusters. However, managing a shared GPU cluster poses a pyramid of challenges, from hardware configuration to resource allocation among users. This paper introduces SING, a full-stack solution designed to streamline the management of shared GPU clusters in academic institutions. Motivated by the pressing need for efficient resource sharing and the challenges posed by limited staffing, we present a comprehensive view of SING's architecture and design choices, which achieves operational efficiency (i.e., low maintenance cost and high resource utilization). We also share experience and insights from the real-world operations of SING, including analysis of its usage patterns and management of incidents and failures. This paper is part of our ongoing effort to improve the management of shared ML clusters. We open-source relevant resources to facilitate the development and operation of similar clusters for ML.
研究の動機と目的
- 専用MLシステムと汎用クラウドプラットフォームの間のギャップを埋め、両者の長所を統合した1つのインfrastrucureとして提供すること。
- 共有されたキャンパスクラスタ上で、多様なMLワークロードを効率的で動的かつ再現可能に実行すること。
- 最新のMLシステム研究(例:通信スケジューリング、ハードウェアアクセラレーション)の統合を生産環境に簡素化すること。
- 細粒度のリソース割り当てとクロスプラットフォームのポータビリティを備えたマルチテント、オンデマンドタスク送信をサポートすること。
- ML研究者が軽量なCLIツール(tcloud)を通じて、タスク送信、監視、デバッグをサーバess-likeな体験で行えるようにすること。
提案手法
- タスクスキーマ、コンパイラ、スケジューリング、実行の4層のワークフローにMLタスク実行を抽象化し、最適化手法をモノリシック実行から分離する。
- 再現性を確保するため、計算、ネットワーク、QoS、コード、依存関係、ランタイム設定を統合した自己完結型のタスクスキーマを定義する。
- コンパイラ層を用いてタスク記述を解析し、ランタイム環境を準備し、静的特徴(例:言語、タスクサイズ)に基づいて最適化された実行計画を生成する。
- 実行時要因(例:タスクの年齢、サイズ、予想実行時間、ネットワークトポロジー)に基づいて、最適なランタイムシステムを選択する動的スケジューリング層を採用する。
- RDMA接続されたGPU、共有ファイルシステム、スマートNICなど、異種バックエンド上で、フェイルセーフなスイッチングとランタイム選択を可能にする。
- BytePS、FlexFlow、Tiaraなどの既存のシステム最適化を透明に統合し、ユーザーがゼロまたは最小限のコード変更で利用可能になるようにする。
実験結果
リサーチクエスチョン
- RQ1異種のMLワークロードに対して、通信スケジューリングやハードウェアアクセラレーションなどの多様なシステム最適化を動的に組み合わせて適用するにはどうすればよいか?
- RQ2新規のMLシステム研究の知見を生産クラスタに最小限の工数でシームレスに統合できる抽象化レイヤーの設計はどのようなものか?
- RQ3共有キャンパスMLクラスタは、細粒度のリソース割り当てと再現性を備えたオンデマンドでマルチテントのタスク実行をどのようにサポートできるか?
- RQ4異種のハードウェアとオペレーティングシステム間で、効率的でスケーラブルかつポータブルなタスク管理を実現するメカニズムは何か?
- RQ5パフォーマンスや柔軟性を損なわずに、専用MLシステムと汎用クラウドプラットフォームの目標を統合するクラウドインfrastrucureはどのように設計できるか?
主な発見
- TACCの4層抽象化により、多様なMLワークロードに対して最適化を動的かつ組み合わせ可能に適用でき、適応性とパフォーマンスが向上する。
- tcloud CLIツールはクロスプラットフォーム互換性を備え、SSHアクセス可能な任意のシステムからタスク送信と分散デバッグをサーバess-likeな体験で可能にする。
- 自己完結型のタスクスキーマにより、TACCはすべての実行パrameterをカプセル化することで、再現可能なタスク実行を実現し、インスタンス間で一貫した振るまいを保証する。
- パラメータサーバーのチューニング、RDMA、ネットワーク内計算などの高度な最適化を活用するためのユーザーのコード変更がゼロまたは最小限で可能になる。
- TACCのスケジューリング層は、予想実行時間やネットワークトポロジーを含む、実行時タスクおよびシステムの特性に基づいて、下位のランタイムシステムを適応的に選択できる。
- TACCは、FlexFlow、BytePS、Tiaraからの既存のシステムレベル最適化を統合的に統合し、研究者が導入にかかる摩擦を低減できる拡張性のあるプラットフォームを提供している。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。