TPU の管理

このドキュメントで説明している gcloud コマンドは、両方の TPU 構成(TPU VM と TPU ノード)で使用できます。使用する gcloud コマンドは、使用する TPU 構成によって異なります。各 gcloud コマンドは、タブ付きのセクションに表示されます。使用する TPU 構成のタブを選択すると、対応する gcloud コマンドがウェブページに表示されます。TPU ノードを使用する必要がある場合を除き、TPU VM を使用することをおすすめします。TPU 構成の詳細については、システム アーキテクチャをご覧ください。

機械学習(ML)モデルを実行するには、Compute Engine VM リソースと Cloud TPU リソースが必要です。このページでは、次のツールを使用してリソースを管理する方法を説明します。

要件

以下の手順を実行するには、Google Cloud Platform(GCP)プロジェクトが設定されている必要があります。プロジェクトがない場合は、プロジェクトの作成と管理を参照してプロジェクトを設定してください。

gcloud コマンドを使用している場合、Google Cloud Shell を使用するか、gcloud コマンドをローカルにインストールします。Google Cloud Shell を使用すると、ソフトウェアをインストールしなくても Cloud TPU を操作できます。Google Cloud Shell は、一定期間操作がないと切断される可能性があります。そのため、長時間実行コマンドを実行する場合は、ローカルマシンに gcloud をインストールすることをおすすめします。gcloud コマンドは Cloud SDK の一部です。

  1. Cloud SDK をインストールします
  2. プロジェクトを使用するように gcloud を構成します。

    gcloud config set project project-name
    
  3. Cloud TPU リソースを作成する予定のゾーンを使用するように gcloud を構成します。例: us-central1-b

    $ gcloud config set compute/zone zone
    

gcloud コマンドの詳細については、gcloud リファレンスをご覧ください。

Cloud TPU の作成

Cloud TPU を作成するときは、Compute Engine VM リソースと TPU リソースを作成します。

gcloud を使用して Cloud TPU を作成する

Cloud Shell を使用する場合は、[Cloud Shell をアクティブにする] をクリックします。Cloud Shell を使用しない場合は、ローカル パソコンでコマンド プロンプトかターミナル ウィンドウを開きます。

Cloud TPU リソースを作成します。使用するコマンドは、TPU VM を使用しているか、TPU ノードを使用しているかによって異なります。詳細については、システム アーキテクチャをご覧ください。

TPU VM

$ gcloud compute tpus tpu-vm create tpu-name \
  --zone=zone \
  --accelerator-type=v3-8 \
  --version=v2-alpha

コマンドフラグの説明

zone
Cloud TPU を作成するゾーン

accelerator-type
作成する Cloud TPU のタイプ

version
Cloud TPU ランタイムのバージョン。サポートされているバージョンは、単一の TPU に対しては v2-alpha、Pod に対しては v2-alpha-pod です。

TPU ノード

$ gcloud compute tpus execution-groups create --name=tpu-name \
  --zone=zone \
  --tf-version=2.4.1 \
  --machine-type=n1-standard-1 \
  --accelerator-type=v3-8

コマンドフラグの説明

zone
Cloud TPU を作成するゾーン

tf-version
gcloud コマンドが VM にインストールする TensorFlow のバージョン。

machine-type
作成する Compute Engine VM のマシンタイプ

accelerator-type
作成する Cloud TPU のタイプ

Google Cloud Console での Cloud TPU の作成

  1. Google Cloud Console に移動します。
  2. 左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。
  3. [Create TPU Node] をクリックします。
  4. [名前] ボックスに TPU インスタンス名を入力します。
  5. [ゾーン] ボックスで、TPU を作成するゾーンを選択します。
  6. [TPU 構成] で、[TPU VM] または [TPU ノード] を選択します。TPU の構成により、TPU を TPU VM として作成するか、TPU ノードとして作成するかが決まります。詳細については、システム アーキテクチャをご覧ください。
  7. [TPU タイプ] で、作成する TPU タイプを選択します。
  8. [TPU ソフトウェア バージョン] で、ソフトウェア バージョンを選択します。Cloud TPU VM の作成時には、インストールされる TPU ランタイム バージョンは TPU ソフトウェア バージョンによって指定されます。Cloud TPU ノードを作成する際に、TPU ソフトウェア バージョンを使用すると、ノードの VM にインストールされている ML フレームワークを選択できます。その他の設定は必要ありません。詳細については、サポートされているモデルをご覧ください。
  9. [作成] をクリックしてリソースを作成します。

Cloud TPU VM への接続

デフォルトでは、TPU ノードの作成に使用する gcloud コマンドは、TPU ノードへの SSH 接続を自動的に試行します。TPU ノードを使用していて、gcloud コマンドで Compute Engine インスタンスに接続していない場合は、次の TPU ノードコマンドを実行すると接続できます。TPU VM を使用する場合は、次の TPU VM コマンドを使用して TPU に明示的に SSH 接続する必要があります。

TPU VM

$ gcloud compute tpus tpu-vm ssh tpu-name \
  --zone=zone

TPU ノード

$ gcloud compute tpus execution-groups compute ssh tpu-name\
  --zone=zone

Cloud TPU リソースの一覧表示

Cloud TPU は、指定したゾーン内にあるすべてを一覧表示できます。

gcloud を使用した Cloud TPU リソースの一覧表示

使用するコマンドは、TPU VM を使用しているか、TPU ノードを使用しているかによって異なります。詳細については、システム アーキテクチャをご覧ください。

TPU VM

$ gcloud compute tpus tpu-vm list --zone=zone

TPU ノード

$ gcloud compute tpus execution-groups list --zone=zone

このコマンドは、指定されたゾーン内の Cloud TPU リソースを一覧表示します。設定されたリソースがない場合、出力では VM と TPU にダッシュだけが表示されます。 一方のリソースがアクティブで、もう一方がアクティブでなければ、正常なステータスではないことを伝えるメッセージが表示されます。この場合、実行されていないリソースの起動または再起動が必要になります。

GCP Console を使用した Cloud TPU リソースの一覧表示

  1. Google Cloud Console に移動します。

  2. 左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。 コンソールに TPU ページが表示されます。

Cloud TPU に関する情報の取得

指定した Cloud TPU に関する情報を取得できます。

gcloud を使用して Cloud TPU に関する情報を取得する

使用するコマンドは、TPU VM を使用しているか、TPU ノードを使用しているかによって異なります。詳細については、システム アーキテクチャをご覧ください。

TPU VM

$ gcloud compute tpus tpu-vm describe tpu-name \
  --zone=zone

TPU ノード

$ gcloud describe tpu-name \
  --zone=zone

Google Cloud Console を使用して Cloud TPU に関する情報を取得する

  1. Google Cloud Console に移動します。
  2. 左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。 コンソールに TPU ページが表示されます。
  3. Cloud TPU の名前をクリックすると、Cloud TPU の詳細ページが表示されます。

Cloud TPU リソースの停止

単一の Cloud TPU を停止することで、VM の構成とソフトウェアを失うことなく課金を停止できます。TPU Pod の停止はサポートされていません。

gcloud による Cloud TPU の停止

Cloud TPU の停止に使用するコマンドは、TPU VM と TPU ノードのどちらを使用しているかによって異なります。詳細については、システム アーキテクチャをご覧ください。

TPU VM

$ gcloud compute tpus tpu-vm stop tpu-name \
--zone=zone

TPU ノード

$ gcloud alpha compute tpus stop tpu-name \
--zone=zone

GCP Console での Cloud TPU の停止

  1. Google Cloud Console に移動します。

  2. 左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。 コンソールに TPU ページが表示されます。

  3. Cloud TPU の横にあるチェックボックスをオンにして、[停止] をクリックします。

Cloud TPU リソースの起動

停止した Cloud TPU は再開できます。

gcloud を使用した Cloud TPU の起動

Cloud TPU の停止に使用するコマンドは、TPU VM と TPU ノードのどちらを使用しているかによって異なります。詳細については、システム アーキテクチャをご覧ください。

TPU VM

$ gcloud compute tpus tpu-vm start tpu-name --zone=zone

TPU ノード

$ gcloud alpha compute tpus start tpu-name --zone=zone

GCP Console での Cloud TPU の起動

  1. Google Cloud Console に移動します。

  2. 左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。 コンソールに TPU ページが表示されます。

  3. Cloud TPU の横にあるチェックボックスをオンにして、[開始] をクリックします。

Compute Engine VM および Cloud TPU リソースを削除する

Cloud TPU は、使用が終了すると削除できます。

gcloud を使用した Cloud TPU の削除

使用するコマンドは、TPU VM を使用するか、TPU ノードを使用するかによって異なります。詳細については、システム アーキテクチャをご覧ください。

TPU VM

$ gcloud compute tpus tpu-vm delete tpu-name \
  --zone=zone

コマンドフラグの説明

zone
Cloud TPU を作成するゾーン

TPU ノード

$ gcloud delete tpu-name \
  --zone=zone

コマンドフラグの説明

zone
Cloud TPU を作成するゾーン

GCP Console を使用した Cloud TPU の削除

  1. Google Cloud Console に移動します。

  2. 左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。 コンソールに TPU ページが表示されます。

  3. Cloud TPU の横にあるチェックボックスをオンにして、[削除] をクリックします。