TPU の管理
TPU VM と TPU ノードの両方の TPU 構成で、このドキュメントで説明している gcloud
コマンドを使用できます。使用する gcloud
コマンドは、使用する TPU 構成によって異なります。各 gcloud
コマンドは、タブ付きのセクションに表示されます。使用する TPU 構成のタブを選択すると、対応する gcloud
コマンドがウェブページに表示されます。TPU ノードを使用する必要がある場合を除き、TPU VM を使用することをおすすめします。TPU 構成の詳細については、システム アーキテクチャをご覧ください。
機械学習(ML)モデルを実行するには、Compute Engine VM リソースと Cloud TPU リソースが必要です。このページでは、次のツールを使用してリソースを管理する方法を説明します。
- Google Cloud CLI、Google Cloud Platform(GCP)でメインとなる CLI ツールです。
- コンソール。GCP リソースに統合型の管理コンソールを提供します。
前提条件
以下の手順を実行するには、Google Cloud Platform(GCP)プロジェクトが設定されている必要があります。プロジェクトがない場合は、プロジェクトの作成と管理を参照してプロジェクトを設定してください。
gcloud
コマンドを使用する場合、Google Cloud Shell を使用するか、gcloud
コマンドをローカルにインストールします。Google Cloud Shell を使用すると、ソフトウェアをインストールせずに Cloud TPU を操作できます。非アクティブな状態が一定期間続くと Google Cloud Shell の接続が解除されるため、長時間実行コマンドを実行する場合は、ローカルマシンに gcloud
をインストールすることをおすすめします。gcloud
コマンドは、Google Cloud CLI の一部です。
- Google Cloud CLI をインストールする。
プロジェクトを使用するように
gcloud
を構成します。gcloud config set project project-name
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=tpu-vm-tf-2.8.0
TPU ノード
$ gcloud compute tpus execution-groups create --name=tpu-name \
--zone=zone \
--tf-version=2.8.0 \
--machine-type=n1-standard-1 \
--accelerator-type=v3-8
標準のインストール スクリプトの実行
TPU VM の作成時に --metadata startup-script
パラメータを指定すると、各 TPU VM で起動スクリプトを実行できます。TPU VM で startup-script
を使用する例を次に示します。
$ gcloud compute tpus tpu-vm create tpu-name \
--zone=zone \
--accelerator-type=tpu-type \
--version=tpu-vm-tf-2.8.0 \
--metadata startup-script='#! /bin/bash
pip3 install numpy
EOF'
TPU VM を作成したら、SSH
を使用して TPU VM に接続し、次のコマンドを実行します。これにより、起動スクリプトからログを表示できます。
$ cat /var/log/syslog | grep startup-script
Google Cloud Console での Cloud TPU の作成
- Google Cloud Console に移動します。
- 左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。
- [Create TPU Node] をクリックします。
- [名前] ボックスに TPU インスタンス名を入力します。
- [ゾーン] ボックスで、TPU を作成するゾーンを選択します。
- [TPU 構成] で、[TPU VM] または [TPU ノード] を選択します。TPU の構成に応じて、TPU を TPU VM として作成するか、TPU ノードとして作成するかが決まります。詳細については、システム アーキテクチャをご覧ください。
- [TPU タイプ] で、作成する TPU タイプを選択します。
- [TPU ソフトウェア バージョン] で、ソフトウェア バージョンを選択します。Cloud TPU VM の作成時には、インストールされる TPU ランタイム バージョンが TPU ソフトウェア バージョンによって指定されます。Cloud TPU ノードを作成するときに、TPU ソフトウェア バージョンを使用すると、ノードの VM にインストールされている ML フレームワークを選択できます。その他の設定は必要ありません。詳細については、サポートされているモデルをご覧ください。
- [作成] をクリックしてリソースを作成します。
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 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 リソースの一覧表示
Google Cloud Console に移動します。
左側のナビゲーション メニューから、[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 compute tpus execution-groups describe tpu-name \
--zone=zone
Google Cloud Console を使用して Cloud TPU に関する情報を取得する
- Google Cloud Console に移動します。
- 左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。 コンソールに TPU ページが表示されます。
- 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 compute tpus stop tpu-name \
--zone=zone
GCP Console での Cloud TPU の停止
Google Cloud Console に移動します。
左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。 コンソールに TPU ページが表示されます。
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 compute tpus start tpu-name --zone=zone
GCP Console での Cloud TPU の起動
Google Cloud Console に移動します。
左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。 コンソールに TPU ページが表示されます。
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 compute tpus execution-groups delete tpu-name \
--zone=zone
コマンドフラグの説明
zone
- Cloud TPU を作成するゾーン。
GCP Console を使用した Cloud TPU の削除
Google Cloud Console に移動します。
左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。 コンソールに TPU ページが表示されます。
Cloud TPU の横にあるチェックボックスをオンにして、[削除] をクリックします。