GPU の追加または削除


Compute Engine は、仮想マシン(VM)インスタンスに追加できるグラフィック プロセッシング ユニット(GPU)を備えています。これらの GPU を使用して、VM で実行される ML やデータ処理などの特定のワークロードを高速化できます。

Compute Engine で GPU を実行する場合、使用できるマシン ファミリーは次の 2 つだけです。

  • アクセラレータ最適化マシン ファミリー: A3、A2、G2。
  • N1 汎用マシン ファミリー。N1 共有コア マシンタイプを除く、ほとんどの N1 マシンタイプを使用できます。N1 汎用マシンを使用していない場合は、N1 汎用マシンに切り替え、GPU を追加できます。

始める前に

  • OS イメージの選択や GPU 割り当ての確認など、その他の前提条件を確認するには、概要のドキュメントをご覧ください。
  • まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のように Compute Engine に対する認証を行います。

    このページのサンプルをどのように使うかに応じ���、タブを選択してください。

    コンソール

    Google Cloud コンソールを使用して Google Cloud サービスと API にアクセスする場合、認証を設定する必要はありません。

    REST

    このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。

      Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init

アクセラレータ最適化 VM

各アクセラレータ最適化マシンタイプには、特定モデルの NVIDIA GPU が割り当てられています。

  • A3 アクセラレータ最適化マシンタイプには、NVIDIA H100 80 GB GPU がアタッチされます。次のオプションが用意されています。
    • A3 Standard(a3-highgpu-8g): このマシンタイプには H100 80 GB GPU が割り当てられています。
    • A3 Mega(a3-megagpu-8g): このマシンタイプには、H100 80 GB Mega GPU が割り当てられています。
  • A2 アクセラレータ最適化マシンタイプには、NVIDIA A100 GPU がアタッチされます。次のオプションが用意されています。
    • A2 Standarda2-highgpu-*a2-megagpu-*): これらのマシンタイプには A100 40 GB GPU がアタッチされています。
    • A2 Ultra(a2-ultragpu-*): これらのマシンタイプには A100 80 GB GPU がアタッチされています。
  • G2 アクセラレータ最適化マシンタイプg2-standard-*)には、NVIDIA L4 GPU が割り当てられています。

アクセラレータ最適化 VM は次のように変更できます。

  • A2 Ultra VM とすべての A3 VM の場合、マシンタイプを変更することはできません。VM にこれらのマシンタイプを使用しており、マシンタイプを変更する必要がある場合は、新しい VM を作成します。

  • A2 標準 VM の場合、ある A2 標準マシンタイプから別の A2 標準マシンタイプに切り替えることで、GPU 数を変更できます。

  • G2 VM では、次のことができます。

    • GPU 数を変更するには、ある G2 マシンタイプから別の G2 マシンタイプに切り替えます。
    • G2 マシンタイプから、汎用やコンピューティング最適化などの別のマシン ファミリーのマシンタイプに切り替えることができます。VM のマシンタイプを編集するをご覧ください。
  • アクセラレータ最適化マシンタイプから GPU を削除することはできません。GPU が不要になった場合は、次の操作を行います。

    • すべての A3 または A2 VM で、新しい VM を作成します。
    • G2 VM の場合、別のマシン ファミリーのマシンタイプに変更します。

GPU 数を変更する

A2 標準または G2 アクセラレータ最適化 VM の GPU 数は、Google Cloud コンソールまたは REST を使用して変更できます。

コンソール

VM を停止して VM 構成を編集すると、VM の GPU の数を変更できます。

  1. VM 上のすべての重要なアプリケーションが停止していることを確認します。

  2. Google Cloud コンソールで [VM インスタンス] ページに移動して、VM のリストを表示します。

    [VM インスタンス] に移動

  3. GPU の数を変更する VM の名前をクリックします。[詳細] ページが開きます。

  4. [詳細] ページから次の手順を完了します。

    1. VM が実行されている場合は、ツールバーで [停止] をクリックします。そして、VM が停止するまで待ちます。

    2. ツールバーで [編集] をクリックします。

    3. [マシンの構成] セクションで、[GPU] マシン ファミリーを選択し、次の操作を行います。

      1. [GPU の数] リストで、GPU 数を増減します。

    4. 変更を適用するには、[保存] をクリックします。

    5. VM を再起動するには、[開始 / 再開] をクリックします。

REST

VM を停止してマシンタイプを変更すると、VM 上の GPU の数を変更できます。アクセラレータ最適化マシンタイプごとに、特定の数の GPU がアタッチされています。マシンタイプを変更すると、VM にアタッチされている GPU の数が調整されます。

  1. VM 上のすべての重要なアプリケーションが停止していることを確認し、VM を停止する POST コマンドを作成して、GPU が使用可能なホストシステムに VM が移動できるようにします。

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
    
  2. VM が停止したら、マシンタイプを変更する POST リクエストを作成します。

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setMachineType
    
    {
       machineType: "zones/ZONE/machineTypes/MACHINE_TYPE"
    }
    
  3. VM を起動します。

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
    

次のように置き換えます。

  • PROJECT_ID: プロジェクト ID。
  • VM_NAME: GPU を追加する VM の名前。
  • ZONE: VM を配置するゾーン。このゾーンは GPU をサポートしている必要があります。
  • MACHINE_TYPE: 使用するマシンタイプ。以下のいずれかにする必要があります。

    • VM が A2 標準マシンを使用している場合は、別の A2 マシンタイプを選択します。
    • VM が G2 マシンタイプを使用している場合は、別の G2 マシンタイプを選択します。G2 マシンタイプはカスタムメモリもサポートしています。メモリは 1,024 MB の倍数とし、サポートされているメモリ範囲内に収める必要があります。たとえば、4 個の vCPU と 19 GB のメモリを備えた VM を作成するには、--machine-type=g2-custom-4-19456 を指定します。

制限事項

A2 VM

  • A2 標準マシンタイプを使用する VM は、継続利用割引とフレキシブル確約利用割引の対象外となります。
  • A2 標準マシンタイプは、特定のリージョンとゾーンでのみ使用できます。
  • A2 標準マシンタイプを使用する VM では、リージョン Persistent Disk を使用できません。
  • A2 標準マシンタイプは、Cascade Lake プラットフォームでのみ使用できます。
  • VM が A2 標準マシンタイプを使用している場合は、ある A2 標準マシンタイプから別の A2 標準マシンタイプにのみ切り替えることができます。他のマシンタイプには変更できません。詳細については、アクセラレータ最適化 VM を変更するをご覧ください。
  • <codea2-megagpu-16g< code="" dir="ltr" translate="no">A2 標準マシンタイプでは Windows オペレーティング システムを使用できません。Windows オペレーティング システムを使用する場合は、別の A2 標準マシンタイプを選択する必要があります。</codea2-megagpu-16g<>
  • A2 標準マシンタイプを使用する Windows VM では、アタッチされたローカル SSD のクイック フォーマットを行うことができません。これらのローカル SSD をフォーマットするには、diskpart ユーティリティを使用し、format fs=ntfs label=tmpfs を指定して完全フォーマットを行う必要があります。
  • A2 標準マシンタイプは、単一テナンシーをサポートしません。

G2 VM

  • G2 マシンタイプを使用する VM は、継続利用割引とフレキシブル確約利用割引の対象外となります。
  • G2 マシンタイプは、特定のリージョンとゾーンでのみ使用できます。
  • G2 マシンタイプを使用する VM では、リージョン Persistent Disk を使用できません。
  • G2 マシンタイプは、Cascade Lake プラットフォームでのみ使用できます。
  • 標準 Persistent Disk(pd-standard)は、G2 標準マシンタイプを使用する VM ではサポートされません。サポートされているディスクタイプについては、G2 でサポートされているディスクタイプをご覧ください。
  • G2 マシンタイプでマルチインスタンス GPU を作成することはできません。
  • G2 VM のマシンタイプを変更する必要がある場合は、アクセラレータ最適化 VM を変更するをご覧ください。
  • G2 マシンタイプを使用する VM のブートディスクに Deep Learning VM Image を使用することはできません。
  • Container-Optimized OS の現在のデフォルト ドライバは、G2 マシンタイプで実行される L4 GPU をサポートしていません。Container-Optimized OS は、特定のドライバセットのみをサポートしています。G2 マシンタイプで Container-Optimized OS を使用する場合は、次の点に注意してください。
    • 推奨される最小の NVIDIA ドライバ バージョン 525.60.13 以降をサポートする Container-Optimized OS のバージョンを使用します。詳細については、Container-Optimized OS のリリースノートをご覧ください。
    • ドライバをインストールするときに、L4 GPU で動作する最新のバージョンを指定します。例: sudo cos-extensions install gpu -- -version=525.60.13
  • 次のシナリオでは、Google Cloud CLI または REST を使用して G2 VM を作成する必要があります。
    • カスタムメモリ値を指定する必要があります。
    • 表示可能な CPU コアの数をカスタマイズする必要があります。

N1 汎用 VM

このセクションでは、N1 汎用マシンで GPU を追加、変更、削除する方法��ついて説明します。

既存の VM に対して GPU を追加、変更または削除するプロセスの概要は次のとおりです。

  1. VM のブートディスク サイズが 40 GB 以上であることを確認します。
  2. VM を停止します。
  3. GPU を追加、変更、削除します。

    以前に VM に GPU がアタッチされていない場合は、次の手順を完了する必要があります。

    1. この変更のために VM を準備します。
    2. VM のホスト メンテナンス設定を変更します。GPU を使用する VM は、特定のハードウェア デバイスに割り当てられているため、ライブ マイグレーションができません。詳しくは、GPU の制限をご覧ください。
    3. マシンタイプを変更します。GPU は、一部のマシンタイプでのみサポートされます。
    4. VM に GPU ドライバをインストールして、システムでデバイスを使用できるようにします。

VM を準備する

GPU を VM に追加すると、ネットワーク インターフェースの順序が変更される可能性があります。

Compute Engine のほとんどの公開イメージには永続的なネットワーク インターフェース名がなく、新しい順序に合わせて調整されます。

ただし、SLES またはカスタム イメージを使用している場合は、システム設定を更新して、ネットワーク インターフェースが維持されないようにする必要があります。ネットワーク インターフェースが維持されないようにするには、VM で次のコマンドを実行します。

 rm /etc/udev/rules.d/70-persistent-net.rules 

既存の VM で GPU を追加する、または GPU タイプを変更する

このセクションでは、既存の N1 汎用 VM に GPU を追加する、または GPU のタイプを変更する方法について説明します。この手順は、次の GPU タイプをサポートしています。

NVIDIA GPU:

  • NVIDIA T4: nvidia-tesla-t4
  • NVIDIA P4: nvidia-tesla-p4
  • NVIDIA P100: nvidia-tesla-p100
  • NVIDIA V100: nvidia-tesla-v100

NVIDIA RTX 仮想ワークステーション(vWS)(旧称 NVIDIA GRID):

  • NVIDIA T4 仮想ワークステーション: nvidia-tesla-t4-vws
  • NVIDIA P4 仮想ワークステーション: nvidia-tesla-p4-vws
  • NVIDIA P100 仮想ワークステーション: nvidia-tesla-p100-vws

    これらの仮想ワークステーションの場合、NVIDIA RTX 仮想ワークステーション(vWS)ライセンスが VM に自動的に追加されます。

コンソール

GPU を追加する、または GPU タイプを変更するには、次の手順を完了します。

  1. VM 上のすべての重要なアプリケーションが停止していることを確認します。

  2. Google Cloud コンソールで [VM インスタンス] ページに移動して、VM のリストを表示します。

    [VM インスタンス] に移動

  3. 更新する VM の名前をクリックします。[詳細] ページが開きます。

  4. [詳細] ページから次の手順を完了します。

    1. VM が実行されている場合は、ツールバーで [停止] をクリックします。そして、VM が停止するまで待ちます。

    2. ツールバーで [編集] をクリックします。

    3. [マシンの構成] セクションで、[GPU] マシン ファミリーを選択し、次の操作を行います。

      1. [GPU のタイプ] リストで、N1 VM でサポートされている GPU タイプを選択するか、このタイプに切り替えます。

      2. [GPU の数] リストで、GPU の数を選択します。

      3. GPU モデルがグラフィック ワークロード用の NVIDIA RTX 仮想ワークステーション(vWS)をサポートし、この VM でグラフィックを多用するワークロードを実行する予定がある場合は、[仮想ワークステーション(NVIDIA GRID)を有効にする] を選択します。

    4. 以前に VM に GPU がアタッチされていない場合は、次のことを完了します。

      1. VM が共有コア マシンタイプを使用している場合は、マシンタイプを変更する必要があります。[マシンタイプ] リストで、プリセットの N1 マシンタイプのいずれかを選択します。または、カスタム マシンタイプを指定することもできます。

      2. [管理] セクションで、次のことを完了します。

        1. [ホスト メンテナンス時] リストで [VM インスタンスを終了] を選択します。GPU をアタッチした VM はライブ マイグレーションできません。GPU ホストイベントの処理をご覧ください。

        2. [自動再起動] リストで [オン] を選択します。

    5. 変更を適用するには、[保存] をクリックします。

    6. VM を再起動するには、[開始 / 再開] をクリックします。

REST

API を通じて VM を停止し、VM の構成を変更すると、VM に GPU を追加または変更できます。

  1. VM 上のすべての重要なアプリケーションが停止していることを確認し、VM を停止する POST コマンドを作成して、GPU が使用可能なホストシステムに VM が移動できるようにします。

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
    
  2. 以前に VM に GPU がアタッチされていない場合は、次の手順を完了します。

    1. VM に追加する GPU タイプを特定します。GET リクエストを送信して、特定のゾーンのプロジェクトで使用できる GPU タイプをリストできます。

      GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/acceleratorTypes
      
    2. VM のマシンタイプが共有コア マシンタイプである場合は、1 つ以上の vCPU が搭載されたマシンタイプに変更する必要があります。共有コア マシンタイプのインスタンスにアクセラレータを追加することはできません。

    3. VM のスケジューリング オプションを設定する POST コマンドを作成します。

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setScheduling
      
      {
      "onHostMaintenance": "TERMINATE",
      "automaticRestart": true
      }
      
  3. VM にアタッチされた GPU を追加または変更する POST リクエストを作成します。

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setMachineResources
    
        {
         "guestAccelerators": [
          {
            "acceleratorCount": ACCELERATOR_COUNT,
            "acceleratorType": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_TYPE"
          }
         ]
        }
    
  4. VM を起動します。

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
    

    次のように置き換えます。

    • PROJECT_ID: プロジェクト ID。
    • VM_NAME: GPU を追加する VM の名前。
    • ZONE: VM を配置するゾーン。
    • ACCELERATOR_COUNT: VM にアタッチする GPU の数。VM のマシンタイプに基づく GPU の上限のリストについては、Compute Engine の GPU をご覧ください。
    • ACCELERATOR_TYPE: アタッチするまたは切り替える先の GPU モデル。この VM でグラフィックを多用するワークロードを実行する場合は、仮想ワークステーション モデルのいずれかを使用します。

      次のいずれかの値を選択します。

      • NVIDIA GPU:

        • NVIDIA T4: nvidia-tesla-t4
        • NVIDIA P4: nvidia-tesla-p4
        • NVIDIA P100: nvidia-tesla-p100
        • NVIDIA V100: nvidia-tesla-v100
      • NVIDIA RTX 仮想ワークステーション(vWS)(旧称 NVIDIA GRID):

        • NVIDIA T4 仮想ワークステーション: nvidia-tesla-t4-vws
        • NVIDIA P4 仮想ワークステーション: nvidia-tesla-p4-vws
        • NVIDIA P100 仮想ワークステーション: nvidia-tesla-p100-vws

        これらの仮想ワークステーションの場合、NVIDIA RTX 仮想ワークステーション(vWS)ライセンスが VM に自動的に追加されます。

ドライバをインストールする

ドライバをインストールするには、次のいずれかのオプションを選択します。

GPU を削除する

このセクションでは、既存の N1 汎用 VM から次の GPU タイプを削除する方法について説明します。

NVIDIA GPU:

  • NVIDIA T4: nvidia-tesla-t4
  • NVIDIA P4: nvidia-tesla-p4
  • NVIDIA P100: nvidia-tesla-p100
  • NVIDIA V100: nvidia-tesla-v100

NVIDIA RTX 仮想ワークステーション(vWS)(旧称 NVIDIA GRID):

  • NVIDIA T4 仮想ワークステーション: nvidia-tesla-t4-vws
  • NVIDIA P4 仮想ワークステーション: nvidia-tesla-p4-vws
  • NVIDIA P100 仮想ワークステーション: nvidia-tesla-p100-vws

    これらの仮想ワークステーションの場合、NVIDIA RTX 仮想ワークステーション(vWS)ライセンスが VM に自動的に追加されます。

Google Cloud コンソールを使用して、既存の VM からの GPU を削除できます。GPU を削除するには、次の手順を完了します。

  1. VM 上のすべての重要なアプリケーションが停止して���ることを確認します。

  2. Google Cloud コンソールで [VM インスタンス] ページに移動して、VM のリストを表示します。

    [VM インスタンス] に移動

  3. GPU を削除する VM の名前���クリックします。[詳細] ページが開きます。

  4. [詳細] ページから次の手順を完了します。

    1. VM が実行されている場合は、ツールバーで [停止] をクリックします。そして、VM が停止するまで待ちます。

    2. ツールバーで [編集] をクリックします。

    3. [マシンの構成] セクションで、[汎用] マシン ファミリーを選択し、次のようにします。

      1. アタッチされている GPU を表示するには、[詳細構成] を展開します。

      2. [GPU] セクションで、次のいずれかのオプションを使用して GPU を削除します。

        • 一部の GPU を削除するには、[GPU の数] リストで新しい数を選択します。

        • すべての GPU を削除するには、 [GPU を削除] をクリックします。

    4. 省略可: VM ホスト メンテナンス ポリシーの設定を変更します。GPU のある VM では、ホスト メンテナンス ポリシーを「VM インスタンスを終了する」に設定する必要があります。ただし、すべての GPU を削除した場合は、ホスト メンテナンス中にこの VM をライブ マイグレーションするオプションもあります。詳細については、VM ホスト メンテナンス ポリシーの設定をご覧ください。

    5. 変更を適用するには、[保存] をクリックします。

    6. VM を再起動するには、[開始 / 再開] をクリックします。

次のステップ