CTPU リファレンス

概要

オープンソースの ctpu ツールは、Compute Engine VM と 1 つ以上の Cloud TPU デバイスで構成される一連のコンピューティング リソースの作成に使用されます。ctpu ツールは Cloud Shell にプリインストールされています。

ctpu のドキュメントとコードは GitHub 上に用意されています。

ctpu ツールは次の構文を使用します。

ctpu <subcommand> <flags> <subcommand> <subcommand args> 

ctpu のサブコマンドは次のとおりです。

auth

説明
Cloud TPU の承認情報を設定または表示します。
使用方法
ctpu auth <flags> <subcommand> <subcommand args>
ctpu auth list --project="my-project" --zone=us-central1-a
ctpu auth list --project my-project --zone us-central1-a
サブコマンド

ctpu auth コマンドは次のサブコマンドをサポートしています。

  • add-bigtable - Cloud TPU が Cloud Bigtable で承認されていることを確認します。
  • add-gcs - Cloud TPU が Cloud Storage で承認されていることを確認します。
  • list - Cloud TPU サービス アカウントの承認情報を表示します。
  • commands - すべてのコマンド名を一覧表示します。
  • flags - 既知のすべての最上位フラグを示します。
  • help - サブコマンドとその構文を示します。
オプション フラグ

ctpu auth のオプション コマンドは次のとおりです。 name | project | zone

delete(rm)

説明
Compute Engine VM と Cloud TPU を削除します。
使用方法
ctpu rm <flags>
ctpu rm --zone=us-central1-b

help

説明
ctpu のすべてのサブコマンドと最上位フラグを一覧表示します。
使用方法
ctpu help
ctpu help <subcommand>
ctpu help   // list all ctpu subcommands and top level flags

ctpu help auth   // list all flags that can be used with `ctpu auth`
ctpu help up   // list all flags that can be used with `ctpu up`

list(ls)

説明
指定したゾーン内のすべての Compute Engine VM と Cloud TPU を一覧表示します。
使用方法
ctpu ls <flags>
ctpu ls --zone=us-central1-b

pause(zz)

説明

Compute Engine VM を停止し、Cloud TPU を削除します。ctpu up が実行されるまで、Cloud TPU の使用に対する課金が停止されます。

使用方法
ctpu pause <flags>
ctpu pause --zone=us-central1-a   // pause TPUs in the specified zone
説明
Cloud TPU 名、プロジェクト名、ゾーンの現在の構成を画面上に出力します。
ctpu print-config

quota

説明
割り当ての確認先の URL を表示します。
使用方法
ctpu quota
ctpu quota
Output: Quotas cannot currently be displayed within ctpu.
To view your quota, open <url>
Request additional quota from <url>

restart

説明
プリエンプトされた Cloud TPU を再開します。ctpu up の実行時にデフォルトをオーバーライドした場合は、デフォルトの代わりに使用したのと同じ Compute Engine VM / Cloud TPU 名、プロジェクト名、またはゾーンを指定します。
使用方法
ctpu restart <flags>
ctpu restart --zone=us-central1-a --preemptible

status(st)

説明

GCP API(デフォルト ゾーンのみ)のクエリを実行して、Cloud TPU と Compute Engine VM の現在のステータスを確認します。

使用方法

ctpu st

ctpu st --zone=us-central1-a
Status message:
  Your cluster is running!
    Compute Engine VM:  RUNNING
    Cloud TPU:     RUNNING 

tpu-locations

説明
Cloud TPU を利用できるすべてのロケーションを一覧表示します。
使用方法
ctpu tpu-locations
出力
Cloud TPU Locations:
    asia-east1-c
    europe-west4-a
    us-central1-a
    us-central1-b
    us-central1-c

tpu-sizes

説明
指定したゾーン内で利用できるすべての TPU サイズを一覧表示します。サイズによっては、特定のロケーションでのみ利用可能な場合があります(デフォルト = デフォルト ゾーン)。
使用方法
tpu-sizes <zone>
ctpu tpu-sizes --zone=us-central1-a

up

説明

ctpu リソースセットを起動します。プロジェクトで初めて ctpu up を実行する際は、SSH 認証鍵の伝播や API の開始などのタスクを実行する必要があるため、通常よりも時間がかかります。

  • Compute Engine と Cloud TPU サービスを有効にします。
  • TensorFlow の最新の安定版がプリインストールされた Compute Engine VM を作成します。
  • 使用ロケーションに基づいてデフォルト ゾーン(us-central1-b など)を割り当てます。
  • Cloud TPU の名前を環境変数(TPU_NAME)として Compute Engine VM に渡します。
  • 特定の IAM の役割を Cloud TPU サービス アカウントに付与して、GCP プロジェクトに含まれる所要リソースに Cloud TPU がアクセスできるようにします。
  • その他数多くのチェックを行います。
  • 新しく作成した Compute Engine VM にユーザーをログインさせます。ログインすると、シェル プロンプトが username@project から username@tpuname に変わります。

ctpu up は必要に応じて何度でも実行できます。たとえば、Compute Engine VM との SSH 接続が失われた場合は、ctpu up を実行して接続を復元します。Compute Engine がデフォルト以外のゾーン内にある場合、そのゾーンを指定する必要があります。次に例を示します。

$ ctpu up --zone=us-central1-a
使用方法
ctpu up <flags>
ctpu up --tpu-size=v2-8 --disk-size-gb=320 --preemptible
フラグ

--disk-size-gb
Compute Engine VM のルート ボリュームのサイズを構成します。値は整数にする必要があります(デフォルト = 250)。

--dry-run
変更は行わずに、実行されたらどのようになるかのみを出力します。

--forward-agent
Compute Engine VM への SSH 接続時に、SSH エージェント転送を有効にします。SSH エージェント転送により共有リポジトリ(GitHub など)へのアクセスが可能になり、Compute Engine VM 上で秘密鍵を保管する必要がなくなります(デフォルト = true)。

--forward-ports
Compute Engine VM からローカルマシンに有用なポートを自動的に転送します。転送されるポートは、6006(TensorBoard)、8888(Jupyter ノートブック)、8470(TPU ポート)、8466(TPU プロファイラ ポート)です(デフォルト = true)。

--gce-image
自動選択された Compute Engine イメージをオーバーライドします。このフラグは、インストールされた TensorFlow に用意されているイメージではなく、独自のカスタム イメージを使用する場合に使用します。

--gcp-network
Cloud TPU および関連する VM を作成するネットワークを指定します。ネットワークについては、Virtual Private Cloud(VPC)ネットワークの概要をご覧ください(デフォルト = デフォルト ネットワーク)。

--log-http
HTTP リクエストとそれに対応するレスポンスの完全な内容を出力します。このフラグを true に設定すると、出力が有効になります。このフラグは、ctpu に対するバグレポートの提出のためにログ出力が必要な場合に使用します。詳細については、ctpu README をご覧ください。

--machine-type
Compute Engine VM のサイズを構成します。マシンタイプの完全なリストについては、Cloud マシンタイプのページをご覧ください(デフォルト = n1-standard-2)。

--name
VM と Cloud TPU に使用する名前をオーバーライドします(デフォルト = ユーザー名)。

--noconf
確認をスキップします。

--preemptible
プリエンプティブ Cloud TPU デバイスまたはポッドを作成します。プリエンプティブ Cloud TPU を使用すると、非プリエンプティブ Cloud TPU と比較して時間あたりの費用が少なくなります。Cloud TPU サービスでは、いつでもプリエンプティブ デバイスを停止 / 終了できます(デフォルト = 非プリエンプティブ)。

--preemptible-vm
プリエンプティブ Compute Engine VM を作成します。プリエンプティブ VM を使用すると、非プリエンプティブ VM と比較して時間あたりの費用が少なくなります。Compute Engine サービスでは、いつでもプリエンプティブ VM インスタンスを終了できます(デフォルト = 非プリエンプティブ)。

--print-welcome
常にウェルカム メッセージを出力します。

--project
VM と TPU を割り当てるときに使用する GCP プロジェクト名をオーバーライドします。cloud config または Compute Engine メタデータに含まれる値(通常はプロジェクト名)を指定します。適切な値が見つからない場合は、コマンドラインで値を指定する必要があります。

--require-permissions
Cloud IAM の権限の変更ができなかった場合に、TPU の設定を停止します。デフォルトでは、ctpu は警告メッセージを出力した後に設定を続行します。

--tf-version
Compute Engine VM と Cloud TPU の作成時に使用する TensorFlow のバージョンを設定します(デフォルト = 最新の安定版リリース)。

--tpu-only
Cloud TPU のみを割り当てます。使用できる VM が既存の場合にのみ、このフラグを使用します。

--tpu-size
Cloud TPU のサイズとハードウェア バージョンを構成します。

--use-dl-images
TPU マシンイメージではなく、ディープ ラーニング VM イメージ(https://cloud.google.com/deep-learning-vm/ にあるドキュメントを参照)を使用します(https://cloud.google.com/deep-learning-vm/ にあるドキュメントを参照)(デフォルト = TPU マシンイメージ)。

--vm-only
VM のみを割り当てます。このフラグは、TPU を設定して料金を支払う準備ができていない場合に使用します。

--zone
VM と Cloud TPU の割り当て時に使用する Compute Engine ゾーンをオーバーライドします。ctpu up のフラグを一覧表示するには、コマンドラインで ctpu help up を実行します。

version

説明
インストールされている ctpu のバージョンを出力します。
使用方法
ctpu version
出力
ctpu version
Output: ctpu version: 1.9

このページは役立ちましたか?評価をお願いいたします。

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