VM と TPU のリソース管理

概要

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

  • ctpu ユーティリティ。このユーティリティは、Cloud TPU リソースの管理用に設計された CLI を提供します。
  • gcloud commands コマンドライン ツール。Google Cloud Platform(GCP)に対するメインの CLI です。
  • Cloud Console。GCP リソースの統合管理コンソールです。

Compute Engine VM と Cloud TPU のリソースを設定する

VM リソースと TPU リソースを割り当てて起動するには、ctpu ユーティリティ、gcloud コマンド、または Cloud Console を使用します。

ctpu

Cloud Shell で、次のコマンドを実行します。ctpu ユーティリティにより、Compute Engine VM リソースと Cloud TPU リソースがまとめて作成されて同じ名前が付けられます。

$ ctpu up [optional: --name --zone --tpu-size --machine-type --disk-size-gb]

gcloud コマンド

Cloud SDK は、Cloud Shell コマンドラインから GCP とのやり取りに使用できるツールのセットです。

  1. Cloud SDK を使用して gcloud コマンドライン ツールをインストールします。
  2. gcloud コマンドライン ツールを使用して、GCP プロジェクトを指定します。
    $ gcloud config set project [YOUR-CLOUD-PROJECT]
    
  3. Compute Engine VM リソースと Cloud TPU リソースを作成するゾーンを指定します。この例では「us-central1-b」ゾーンを使用します。
    $ gcloud config set compute/zone [YOUR-ZONE]
    

    参考情報: Cloud TPU は次のゾーンで利用できます。

    米国

    Cloud TPU v2 およびプリエンプティブ v2 us-central1-b
    us-central1-c
    us-central1-fTFRC プログラムのみ)
    Cloud TPU v3 およびプリエンプティブ v3 us-central1-a
    us-central1-b
    us-central1-f
    TFRC プログラムのみ)
    Cloud TPU v2 Pod(アルファ版) us-central1-a

    ヨーロッパ

    Cloud TPU v2 およびプリエンプティブ v2 europe-west4-a
    Cloud TPU v3 およびプリエンプティブ v3 europe-west4-a
    Cloud TPU v2 Pod(アルファ版) europe-west4-a

    アジア太平洋

    Cloud TPU v2 およびプリエンプティブ v2 asia-east1-c

  4. Cloud TPU とやり取りする Compute Engine VM を作成します。

    前のコマンドでゾーンを指定したので、そのゾーン内に VM インスタンスが作成されます。

    $ gcloud compute instances create [YOUR-VM/TPU-NAME]\
       --zone=[YOUR_ZONE]
       --machine-type=n1-standard-2 \
       --image-project=ml-images \
       --image-family=tf-1-13 \
       --scopes=cloud-platform
    

    このコマンドにより、次のような出力が生成されます。

    NAME         ZONE           MACHINE_TYPE    PREEMPTIBLE INTERNAL_IP  EXTERNAL_IP    STATUS
    demo-vm-tpu  us-central1-b  n1-standard-1               10.138.0.2   35.247.15.162  RUNNING
    
  5. 新しい Cloud TPU リソースを作成します。
    $ gcloud compute tpus create [YOUR-VM/TPU-NAME] \
          --zone=[YOUR_ZONE] \
          --network=[YOUR_NETWORK_ID or default] \
          --accelerator-type=[YOUR-TPU-VERSION] \
          --range=[RANGE] \ # for example 192.168.0.0/29 \
          --version=1.13
    

    このコマンドにより、次のような出力が生成されます。

    NAME         ZONE           ACCELERATOR_TYPE NETWORK_ENDPOINT  NETWORK  RANGE         STATUS
    demo-vm-tpu  us-central1-b  v2-8             10.240.1.2:8470   default  10.240.1.0/29 READY
    
  6. リモートから Compute Engine VM に接続します。
    $ gcloud compute ssh --zone=[YOUR_ZONE] [YOUR-VM/TPU-NAME]
    
  7. TPU の名前が含まれる環境変数を作成します。
    $ export TPU_NAME=[YOUR-VM/TPU-NAME]
    

Cloud Console

  1. VM を作成して起動します。
    1. 左側のナビゲーション バーで [Compute Engine] > [VM インスタンス] に移動し、[インスタンスを作成] をクリックします。
    2. [インスタンスの作成] ページで、インスタンス名、リージョン、マシンタイプを指定します。
  2. 作成して起動したら、Cloud TPU に接続します。
    1. 左のナビゲーション バーで [Compute Engine] > [TPU] に移動し、[TPU ノードを作成] をクリックします。
    2. [Cloud TPU の作成] ページで、TPU リソース名、ゾーン、Cloud TPU で使用する内部 IP アドレスを指定します。
    3. [Compute Engine] > [VM インスタンス] に移動します。設定した VM 名のインスタンスを見つけて、[SSH] をクリックして接続します。

Compute Engine VM と Cloud TPU のリソースを表示する

このセクションでは、ctpu ユーティリティ、gcloud コマンド、または Cloud Console を使用して、現在アクティブな VM リソースと TPU リソースを表示する方法を説明します。

ctpu

ctpu status コマンドを実行し、Compute Engine VM リソースと Cloud TPU リソースが設定されたゾーンを指定します。

$ ctpu status --zone=[YOUR-ZONE]

このコマンドにより、指定したゾーン内の Compute Engine VM および Cloud TPU リソースのステータスが表示されます。

Your cluster is running!
Compute Engine VM:  RUNNING
Cloud TPU:          RUNNING

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

gcloud コマンド

  1. Cloud Shell で次のコマンドを実行して、特定のゾーン内で利用可能な Compute Engine VM リソースを一覧表示します。次の例では、us-central1-b 内と europe-west4-a 内にある VM リソースが表示されます。

    $ gcloud compute instances list --filter="zone:( us-central1-b europe-west4-a )"
    

    上記のコマンドにより、作成した VM リソースの詳細が出力されます。次に例を示します。

    NAME      ZONE           MACHINE_TYPE   PREEMPTIBLE  INTERNAL_IP  EXTERNAL_IP     STATUS
    demo-tpu  us-central1-b  n1-standard-1               10.128.0.33  35.232.214.205  RUNNING
    
    
  2. Cloud Shell で次のコマンドを実行して、指定したゾーン内で利用可能な Cloud TPU リソースを一覧表示します。次に、us-central1-b をゾーンとして選択した場合の例を示します。

    $ gcloud compute tpus list --zone=us-central1-b
    

    us-central1-b 内にある Cloud TPU リソースが表示されます。

    NAME       ZONE           ACCELERATOR_TYPE  NETWORK_ENDPOINT   NETWORK  RANGE          STATUS
    demo-tpu   us-central1-b  v2-8              10.240.1.2:8470    default  10.240.1.0/29  READY
    

Cloud Console

  1. 左側のナビゲーション メニューから、[Compute Engine] > [TPU] を選択します。

    すべてのアクティブな Compute Engine リソースのリストが表示されます。

  2. 左側のナビゲーション メニューから、[Compute Engine] > [VM インスタンス] を選択します。

    すべてのアクティブな Compute Engine リソースのリストが表示されます。

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

VM リソースと TPU リソースは、ctpu ユーティリティ、gcloud コマンド、Cloud Console を使用して削除できます。

ctpu

Cloud Shell で、次のコマンドを実行します。ctpu ユーティリティにより、Compute Engine VM リソースと Cloud TPU リソースがまとめて削除されます。

$ ctpu delete [optional: --zone]

gcloud コマンド

このセッションでプロジェクトとゾーンを設定していない場合は、この時点で設定します。

(vm)$ gcloud config set project [YOUR-CLOUD-PROJECT]
(vm)$ gcloud config set compute/zone [YOUR-ZONE]

続いて、次のクリーンアップ手順を行います。

  1. Compute Engine VM インスタンスを終了します。
    (vm)$ exit
    
  2. Compute Engine インスタンスを削除します。
    $ gcloud compute instances delete [YOUR-VM/TPU-NAME]
    
  3. Cloud TPU リソースを削除します。
    $ gcloud compute tpus [YOUR-VM/TPU-NAME]
    
  4. Cloud TPU 設定の一環として Google によって自動作成された VPC ネットワークを削除します。

    Google Cloud Platform Console の [VPC ネットワーク] ページに移動します。

  5. VPC ネットワークを選択します。ネットワーク エントリの ID は、cp-to-tp-peering で始まります。

    ページの上部にある [削除] をクリックして、選択した VPC ネットワークを削除します。

  6. データの検証が完了したら、gsutil コマンドを使用して、作成した Cloud Storage バケットをすべて削除します。YOUR-BUCKET-NAME の部分は、Cloud Storage バケットの名前に置き換えてください。
    $ gsutil rm -r gs://[YOUR-BUCKET-NAME]
    

Cloud Console

  1. VM を削除します。
    1. 左側のナビゲーション バーで [Compute Engine] > [VM インスタンス] に移動
    2. します。
    3. リストから VM インスタンスを選択します。ページの上部にあるゴミ箱アイコンをクリックします。
  2. Cloud TPU を削除します。
    1. 左側のナビゲーション バーで、[Compute Engine] > [TPU] に移動します。
    2. リストから TPU リソースを選択します。ページの上部にあるゴミ箱アイコンをクリックします。
このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...