PyTorch Deep Learning VM インスタンスを作成する

このページでは、PyTorch などのツールがプリインストールされた PyTorch Deep Learning VM Images インスタンスを作成する方法について説明します。PyTorch インスタンスは、Google Cloud Console 内の Cloud Marketplace から、またはコマンドラインを使用して作成できます。

始める前に

  1. Google Cloud アカウントにログインします。Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Google Cloud プロジェクトで課金が有効になっていることを確認します

  4. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  5. Google Cloud プロジェクトで課金が有効になっていることを確認します

  6. Deep Learning VM で GPU を使用する場合は、[割り当て] ページで、プロジェクトで十分な GPU を使用できることを確認してください。GPU が割り当てページのリストにない場合や、さらに GPU 割り当てが必要な場合には、割り当て量の増加をリクエストしてください。

Cloud Marketplace から PyTorch Deep Learning VM インスタンスを作成する

Cloud Marketplace から PyTorch Deep Learning VM インスタンスを作成するには、次の手順を実行します。

  1. Google Cloud コンソールの Deep Learning VM Cloud Marketplace ページに移動します。

    Deep Learning VM Cloud Marketplace ページに移動

  2. [運用開始] をクリックします。

  3. デプロイ名を入力します。これは、VM 名のルートとして使用されます。Compute Engine は、この名前に -vm を追加してインスタンス名を設定します。

  4. ゾーンを選択します。

  5. [マシンタイプ] で、VM に必要な仕様を選択します。マシンタイプの詳細をご覧ください

  6. [GPU] で、GPU のタイプGPU の数を選択します。GPU を使用しない場合は、[GPU を削除します] ボタンをクリックして、ステップ 7 に進みます。GPU の詳細をご覧ください

    1. GPU のタイプを選択します。すべての GPU タイプがすべてのゾーンで利用できるわけではありません。サポートされている組み合わせを探します。
    2. GPU の数を選択します。選択できる GPU の数は GPU によって異なります。サポートされている組み合わせを探します。
  7. [フレームワーク] で、[PyTorch 1.8 + fast.ai 2.1(CUDA 11.0)] を選択します。

  8. GPU を使用している場合は、NVIDIA ドライバが必要です。ドライバは手動でもインストールできますが、[Install NVIDIA GPU driver automatically on first startup] を選択することもできます。

  9. [Enable access to JupyterLab via URL instead of SSH (Beta)] を選択することもできます。このベータ機能を有効にすると、URL を使用して JupyterLab インスタンスにアクセスできます。Google Cloud プロジェクトで編集者またはオーナーのロールを持っているユーザーは誰でもこの URL にアクセスできます。現在、この機能は米国、EU、アジアでのみ機能します。

  10. ブートディスクの種類とブートディスクのサイズを選択します。

  11. 必要なネットワーク設定を選択します。

  12. [デプロイ] をクリックします。

NVIDIA ドライバのインストールを選択した場合、インストールが完了するまでに 3~5 分かかります。

VM がデプロイされると、ページが更新され、インスタンスにアクセスする手順が表示されます。

コマンドラインから PyTorch Deep Learning VM インスタンスを作成する

Google Cloud CLI を使用して新しい Deep Learning VM インスタンスを作成するには、まず Google Cloud CLI をインストールして初期化する必要があります。

  1. Google Cloud CLI のインストールの手順を使用して、Google Cloud CLI をダウンロードしてインストールします。
  2. Cloud SDK の初期化手順に沿って SDK を初期化します。

Cloud Shell で gcloud を使用するには、Cloud Shell の起動手順に沿って Cloud Shell をアクティブにします。

GPU を使用しない場合

最新の PyTorch イメージ ファミリーと 1 つの CPU を使用して Deep Learning VM インスタンスを作成するには、コマンドラインで次のように入力します。

export IMAGE_FAMILY="pytorch-latest-cpu"
export ZONE="us-west1-b"
export INSTANCE_NAME="my-instance"

gcloud compute instances create $INSTANCE_NAME \
  --zone=$ZONE \
  --image-family=$IMAGE_FAMILY \
  --image-project=deeplearning-platform-release

オプション:

  • --image-family は、pytorch-latest-cpu または pytorch-VERSION-cpu のいずれかにする必要があります(たとえば、pytorch-1-13-cpu)。

  • --image-projectdeeplearning-platform-release でなければなりません。

GPU を使用する場合

Compute Engine には、仮想マシン インスタンスに GPU を追加するオプションがあります。多くの場合、GPU を使用することで複雑なデータ処理や機械学習タスクを高速化できます。GPU の詳細については、Compute Engine の GPU をご覧ください。

最新の PyTorch イメージ ファミリーと 1 つ以上の接続された GPU を使用して Deep Learning VM インスタンスを作成するには、コマンドラインで次のように入力します。

export IMAGE_FAMILY="pytorch-latest-gpu"
export ZONE="us-west1-b"
export INSTANCE_NAME="my-instance"

gcloud compute instances create $INSTANCE_NAME \
  --zone=$ZONE \
  --image-family=$IMAGE_FAMILY \
  --image-project=deeplearning-platform-release \
  --maintenance-policy=TERMINATE \
  --accelerator="type=nvidia-tesla-v100,count=1" \
  --metadata="install-nvidia-driver=True"

オプション:

  • --image-family は、pytorch-latest-gpu または pytorch-VERSION-CUDA-VERSION のいずれかにする必要があります(たとえば、pytorch-1-10-cu110)。

  • --image-projectdeeplearning-platform-release でなければなりません。

  • --maintenance-policyTERMINATE でなければなりません。詳細については、GPU の制限をご覧ください。

  • --accelerator には、使用する GPU タイプを指定します。--accelerator="type=TYPE,count=COUNT" の形式で指定する必要があります。例: --accelerator="type=nvidia-tesla-p100,count=2"。使用可能な GPU の種類と数のリストについては、GPU モデルの表をご覧ください。

    すべての GPU タイプがすべてのリージョンでサポートされているわけではありません。詳細については、GPU のリージョンとゾーンの可用性をご覧ください。

  • --metadata を使用すると、NVIDIA ドライバを自動的にインストールするように指定できます。値は install-nvidia-driver=True です。指定した場合、初回起動時に Compute Engine によって最新の安定したドライバが読み込まれ、必要な手順が実行されます(ドライバをアクティブにするための最後の再起動を含む)。

NVIDIA ドライバのインストールを選択した場合、インストールが完了するまでに 3~5 分かかります。

VM が完全にプロビジョニングされるまでに、最大で 5 分ほどかかることがあります。その間、マシンに SSH で接続することはできません。インストールが完了したら、ドライバのインストールが正常に完了したことを確認するために、SSH で接続して nvidia-smi を実行します。

構成が完了すると、イメージのスナップショットを保存できます。スナップショットを使用することで、ドライバのインストールを待つことなく、派生インスタンスを起動できるようになります。

プリエンプティブル インスタンスを作成する

プリエンプティブルな Deep Learning VM インスタンスを作成できます。プリエンプティブル インスタンスは、通常のインスタンスよりはるかに低価格で作成、実行できるインスタンスです。ただし、他のタスクがリソースへのアクセスを必要とする場合、Compute Engine がこのインスタンスを停止(プリエンプト)する可能性があります。プリエンプティブル インスタンスは 24 時間後に必ず停止します。プリエンプティブル インスタンスの詳細については、プリエンプティブル VM インスタンスをご覧ください。

プリエンプティブルな Deep Learning VM インスタンスを作成するには:

  • 上記の手順で、コマンドラインから新しいインスタンスを作成します。gcloud compute instances create コマンドに以下を追加します。

      --preemptible

次のステップ

インスタンスへの接続を参照して、新しい Deep Learning VM インスタンスに Google Cloud コンソールまたはコマンドラインから接続する方法を確認する。インスタンス名は、指定したデプロイ名-vm を付加したものになります。