3. AWS Batch、GPU学習ジョブの新しいQuota Managementを公開
技術記事公開:10月29日|新スケジューリング機能
AWSが、SageMaker Trainingジョブ向けの新しいGPUリソース管理機能「Quota Management」を紹介しました。
複数チームが共通のGPU計算資源を利用する場合に、チームごとの利用枠を設定し、使われていないGPUを別チームへ自動的に貸し出せます。
さらに、優先度の高いジョブが投入された場合、実行中の低優先度ジョブを中断してGPUを再割り当てする機能にも対応しています。公式出典
なぜ重要か
LLMのファインチューニングや強化学習では、高価なGPUを効率よく使う必要があります。
チームごとにGPUを固定的に割り当てると、一方が使用していない間も、別チームがGPU不足になることがあります。
今回の機能は、GPUの利用率とチーム間の公平性を両立するための仕組みです。
技術・実装ポイント
Quota Shareには3種類のリソース共有方式があります。
| 設定 | 動作 |
|---|---|
RESERVE | 割り当てた容量を確保 |
LEND | 未使用容量を他チームへ貸し出す |
LEND_AND_BORROW | 貸し出しと借り入れの両方を許可 |
例えば、3つのチームにそれぞれGPUインスタンス1台分の利用枠を設定します。
チームAがGPUを使用していない場合、チームBはAの空き容量を借りて学習できます。
その後、チームAが学習を開始すると、AWS Batchが貸し出した容量を回収します。
API・料金・利用条件
SDK: SageMaker Python SDK v3。
API・設定: Scheduling Policy、Service Environment、Job Queue、Quota Shareを使用。
実装例: ml.g5.xlargeインスタンスを使用したサンプルコードを公開。
料金: AWS Batch自体に追加料金はありません。GPUインスタンスや関連AWSサービスの利用料金が発生します。
注意点: プリエンプションで学習ジョブが中断されるため、長時間学習ではチェックポイント保存と再開処理が重要です。
公式情報:AWS公式実装ガイド / AWS Batch料金