このガイドでは、カレンダー モードで将来の予約を使用して Tensor Processing Unit(TPU)のプロビジョニングを最適化する方法について説明します。カレンダー モードの将来の予約は、TPU 容量を見つけて事前に計画するのに役立つ、カレンダー アドバイザーとレコメンダーが組み込まれています。指定した開始時間と期間(1 ~ 90 日)の容量をリクエストすると、Recommender から候補の日付が提示されます。
このガイドは、バッチ ワークロードの実行に Kubernetes コンテナ オーケストレーション機能を使用することを検討している ML エンジニア、プラットフォーム管理者、オペレーター、データおよび AI のスペシャリストを対象としています。 Google Cloud のコンテンツで使用されている一般的なロールとタスクの��の詳細については、一般的な GKE Enterprise ユーザーロールとタスクをご覧ください。
詳細については、カレンダー モードでの将来の予約についてをご覧ください。
ユースケース
カレンダー モードの将来の予約は、トレーニングや、リクエストされた開始時間に高可用性を必要とするバッチ推論モデルなど、スケジュール設定された短期間の需要の高いリクエストがあるワークロードに最適です。
ワークロードに、長期の予約や複雑な割り当て管理なしで、最大 7 日間、必要に応じて動的にプロビジョニングされたリソースが必要な場合は、Flex Start の使用を検討してください。詳細については、Flex Start での GPU と TPU のプロビジョニングについてをご覧ください。
始める前に
始める前に、次の作業が完了していることを確認してください。
- Google Kubernetes Engine API を有効にする。 Google Kubernetes Engine API の有効化
- このタスクに Google Cloud CLI を使用する場合は、gcloud CLI をインストールして初期化する。すでに gcloud CLI をインストールしている場合は、
gcloud components update
を実行して最新のバージョンを取得する。
- 次のいずれかがあることを確認します。
- バージョン 1.28.3-gke.1098000 以降を実行している既存の Standard クラスタ。
- バージョン 1.30.3-gke.1451000 以降を実行している既存の Autopilot クラスタ。
TPU のカレンダー モードで将来の予約をリクエストする
カレンダー モードで将来の予約を使用して TPU をリクエストするプロセスは、次の手順で構成されていま��。
- VM の作成時に予約の一部ではないリソース(ディスクや IP アドレスなど)に十分な割り当てがあることを確認します。カレンダー モードの将来の予約リクエストには、Compute Engine の割り当ては必要ありません。
- カレンダー モードでリクエストを作成するの手順を完了します。手順は次のとおりです。
- TPU の今後の可用性を確認する。
- TPU のカレンダー モードで将来の予約リクエストを作成して送信します。
- Google Cloud がリクエストを承認するまで待ちます。
- 予約を使用する TPU ノードプールを作成します。
ノードプールを作成
このセクションの内容は、Standard クラスタにのみ適用されます。
予約は、単一ホストまたはマルチホストの TPU スライス ノードプールの作成時に使用できます。たとえば、Google Cloud CLI を使用して単一ホスト TPU スライス ノードプールを作成できます。
gcloud container node-pools create NODE_POOL_NAME \
--location=LOCATION \
--cluster=CLUSTER_NAME \
--node-locations=NODE_ZONES \
--machine-type=MACHINE_TYPE \
--reservation-affinity=specific \ This is required
--reservation=RESERVATION
次のように置き換えます。
NODE_POOL_NAME
: 新しいノードプールの名前。LOCATION
: 使用する TPU バージョンに基づくゾーンの名前。使用可能なロケーションについては、GKE での TPU の可用性をご覧ください。CLUSTER_NAME
: クラスタの名前。NODE_ZONES
: GKE がノードプールを作成する 1 つ以上のゾーンのカンマ区切りリスト。MACHINE_TYPE
: ノードに使用するマシンのタイプ。TPU 互換マシンタイプの詳細については、TPU バージョンを選択するの表をご覧ください。RESERVATION
: 使用するカレンダー予約の名前。
指定できるすべてのフラグの一覧については、gcloud container clusters create
リファレンスをご覧ください。
カレンダー予約を使用してノードプールを作成したら、他の TPU ノードプールと同様にワークロードをデプロイできます。たとえば、予約済みの TPU を使用する TPU ノードプールを指定する Job を作成できます。
次のステップ
予約した TPU リソースを使用する生成 AI モデルの GKE デプロイ例を試す。
GKE AI Labs で、GKE を活用して AI/ML イニシアチブを加速するための試験運用版のサンプルを確認します。