Compute Engine の TPU リソース

TPU は、Compute Engine リソースを使用して作成、管理できます。このページでは、Compute Engine で TPU を使用する際のコンセプトの概要について説明します。TPU のコンセプトを Compute Engine リソースにマッピングし、Compute Engine への移行プロセスの概要を説明します。

TPU と Compute Engine のコンセプト

Compute Engine 内で TPU リソースを管理するには、TPU と Compute Engine の主なコンセプトを理解しておくと役立ちます。

  • TPU VM: TPU ハードウェアに直接接続する仮想マシン。単一の TPU VM は、単一ホストのスライスと同じです。
  • TPU スライス: 相互接続された TPU チップの論理グループ。1 つ以上の TPU VM を介してアクセスされます。スライスには次のいずれかのスコープがあります。
    • 単一ホストスライス: 1 つのホストマシンで構成されるスライス。単一ホストスライスは、単一の TPU VM を指す別の方法です。
    • マルチホスト スライス: 高速チップ間相互接続(ICI)を使用して相互接続された複数の TPU VM で構成されるスライス。

Compute Engine で TPU リソースを作成して管理するには、次の Compute Engine リソースを使用します。

  • VM インスタンス: Compute Engine 仮想マシン。単一ホストの TPU スライスは、個別の VM インスタンスとして作成されます。以前の Cloud TPU API では、1 つの TPU スライスが Node REST オブジェクトで表されます。
  • マネージド インスタンス グループ(MIG): 単一のユニットとして管理される VM インスタンスのコレクション。マルチホスト TPU スライスは、ワークロード ポリシーで指定されたアクセラレータ トポロジを持つ MIG として作成されます。以前の Cloud TPU API では、1 つ以上のスライスが QueuedResource または Node REST オブジェクトを使用して表されます。

TPU と Compute Engine のコンセプト マップ

次の表に、TPU のコンセプトが Compute Engine リソースにどのようにマッピングされるかを示します。

TPU のコンセプト Compute Engine リソース リソースの詳細 ユースケース
TPU VM VM インスタンス TPU ハードウェアに直接アクセスできる Compute Engine VM。 個々の VM タスク、SSH コマンドの実行、デバッグ
TPU 単一ホストまたはサブホスト スライス 単一の VM を含む VM インスタンスまたは MIG 1 台の物理ホストマシンで構成される構成。 自動スケーリングを使用した推論
TPU マルチホスト スライス ワークロード ポリシーでアクセラレータ トポロジが指定されている MIG ICI を使用して相互接続され、単一の論理ユニットとして管理される TPU VM のグループ。 アトミック プロビジョニングを必要とする大規模な分散トレーニング

Cloud TPU API から移行する

Cloud TPU API の新規開発は終了しています。これには、Cloud TPU API 用の Google Cloud CLI と Cloud TPU API 用の Cloud クライアント ライブラリが含まれます。Cloud TPU API には、バグの修正とセキュリティ アップデートのみが適用されます。TPU7x(Ironwood)以降の新しいハードウェア世代は、Compute Engine または Google Kubernetes Engine(GKE)でのみサポートされます。最新の機能と最新の TPU バージョンのサポートを利用するには、以前の Cloud TPU API 呼び出しを Compute Engine または GKE の同等の呼び出しに置き換えて移行します。

オーケストレーションとワークロードの要件に応じて、次のいずれかのパスを選択します。

  • Compute Engine: VM レベルの直接制御またはカスタム OS イメージが必要なユーザーにおすすめです。Compute Engine で TPU のプロビジョニングを開始するには、クイックスタート: TPU VM を作成するをご覧ください。
  • GKE: コンテナ化されたワークロード、自動スケーリング、大規模なオーケストレーションにおすすめです。GKE で TPU を使用する方法については、GKE の TPU についてをご覧ください。
  • Batch: コンテナ化されたワークロードまたはスクリプトベースのワークロードを実行するためのフルマネージド サービスが必要なユーザーにおすすめです。Batch で TPU を使用する方法については、TPU を使用する Batch ジョブを作成して実行するをご覧ください。

既存の TPU リソース

Cloud TPU API(Node または QueuedResource REST オブジェクト)を使用して作成された TPU リソースは、Compute Engine および GKE と互換性がありません。Compute Engine または GKE の使用を開始するには:

  • Cloud TPU API を使用するスクリプトを、Compute Engine API または GKE API を使用するように書き換えます。
  • Cloud TPU API を使用してリソースを削除し、Compute Engine API または GKE API を使用してリソースを再作成します。

制限事項

Compute Engine の TPU には次の制限があります。

  • TPU バージョン: Compute Engine は v5p、v6e、TPU7x をサポートしています。
  • マルチスライス: 相互接続されたマルチホスト TPU スライスのグループの作成は、Compute Engine では使用できません。マルチスライスを使用するには、Google Kubernetes Engine(GKE)を使用する必要があります。詳細については、GKE に TPU マルチスライスをデプロイするをご覧ください。
  • コレクション: Compute Engine ではコレクションのスケジュール設定は使用できません。コレクション スケジューリングを使用するには、GKE を使用する必要があります。詳細については、GKE ドキュメントのコレクション スケジューリングをご覧ください。

次のステップ