Compute Engine の GPU

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

3D 表示、3D レンダリング、仮想アプリケーションなどのグラフィックを多用するワークロードが存在する場合、NVIDIA® GRID® テクノロジーを使用する仮想ワークステーションを作成できます。グラフィックを多用するアプリケーション用 GPU については、グラフィック ワークロード用 GPU をご覧ください。

このドキュメントでは、Compute Engine の GPU の概要について説明します。GPU の使用方法について詳しくは、次のリソースをご覧ください。

はじめに

Compute Engine では NVIDIA® Tesla® GPU がパススルー モードでインスタンスに提供されるため、仮想マシン インスタンスで GPU と関連メモリを直接制御できます。

コンピューティング ワークロードの場合、GPU モデルは次の段階で利用できます。

  • NVIDIA® Tesla® T4: nvidia-tesla-t4: 一般提供

  • NVIDIA® Tesla® V100: nvidia-tesla-v100: 一般提供

  • NVIDIA® Tesla® P100: nvidia-tesla-p100: 一般提供

  • NVIDIA® Tesla® P4: nvidia-tesla-p4: 一般提供

  • NVIDIA® Tesla® K80: nvidia-tesla-k80: 一般提供

グラフィック ワークロードの場合、GPU モデルは次の段階で利用できます。

  • NVIDIA® Tesla® T4 仮想ワークステーション: nvidia-tesla-t4-vws: 一般提供
  • NVIDIA® Tesla® P100 仮想ワークステーション: nvidia-tesla-p100-vws: 一般提供
  • NVIDIA® Tesla® P4 仮想ワークステーション: nvidia-tesla-p4-vws: 一般提供

仮想ワークステーション用 GPU については、グラフィック ワークロード用 GPU をご覧ください。

GPU を追加できるのは、事前定義されたマシンタイプまたはカスタム マシンタイプのインスタンスのみです。GPU は、共有コア マシンタイプメモリ最適化マシンタイプではサポートされません。

コンピューティング ワークロード用 GPU

GPU 数が少ないインスタンスの場合は、vCPU の最大数に制限されます。一般的に、GPU の数が多いほど、vCPU 数が多くメモリサイズが大きいインスタンスを作成できます。

GPU モデル GPU GPU メモリ 利用可能な vCPU 数 利用可能なメモリ 利用可能なゾーン
NVIDIA® Tesla® T4 1 GPU 16 GB GDDR6 1~24 vCPU 1~156 GB
  • asia-east1-a
  • asia-east1-c
  • asia-northeast1-a
  • asia-northeast1-c
  • asia-northeast3-b
  • asia-northeast3-c
  • asia-south1-a
  • asia-south1-b
  • asia-southeast1-b
  • asia-southeast1-c
  • australia-southeast1-a
  • europe-west2-a
  • europe-west2-b
  • europe-west3-b
  • europe-west4-b
  • europe-west4-c
  • southamerica-east1-c
  • us-central1-a
  • us-central1-b
  • us-central1-f
  • us-east1-c
  • us-east1-d
  • us-east4-b
  • us-west1-a
  • us-west1-b
2 GPU 32 GB GDDR6 1~48 vCPU 1~312 GB
4 GPU 64 GB GDDR6 1~96 vCPU 1~624 GB
NVIDIA® Tesla® P4 1 GPU 8 GB GDDR5 1~24 vCPU 1~156 GB
  • asia-southeast1-b
  • asia-southeast1-c
  • australia-southeast1-a
  • australia-southeast1-b
  • europe-west4-b
  • europe-west4-c
  • northamerica-northeast1-a
  • northamerica-northeast1-b
  • northamerica-northeast1-c
  • us-central1-a
  • us-central1-c
  • us-east4-a
  • us-east4-b
  • us-east4-c
  • us-west2-b
  • us-west2-c
2 GPU 16 GB GDDR5 1~48 vCPU 1~312 GB
4 GPU 32 GB GDDR5 1~96 vCPU 1~624 GB
NVIDIA® Tesla® V100 1 GPU 16 GB HBM2 1~12 vCPU 1~78 GB
  • asia-east1-c
  • europe-west4-a
  • europe-west4-b
  • europe-west4-c
  • us-east1-c
  • us-central1-a
  • us-central1-b
  • us-central1-c
  • us-central1-f
  • us-west1-a
  • us-west1-b
2 GPU 32 GB HBM2 1~24 vCPU 1~156 GB
4 GPU 64 GB HBM2 1~48 vCPU 1~312 GB
8 GPU 128 GB HBM2 1~96 vCPU 1~624 GB
NVIDIA® Tesla® P100 1 GPU 16 GB HBM2 1~16 vCPU 1~104 GB
  • asia-east1-a
  • asia-east1-c
  • australia-southeast1-c
  • us-central1-c
  • us-central1-f
  • us-east1-b
  • us-east1-c
  • us-west1-a
  • us-west1-b
  • europe-west1-b
  • europe-west1-d
  • europe-west4-a
2 GPU 32 GB HBM2 1~32 vCPU 1~208 GB
4 GPU 64 GB HBM2

1~64 vCPU
(us-east1-c、europe-west1-d、europe-west1-b)

1~96 vCPU
(その他すべてのゾーン)

1~208 GB
(us-east1-c、europe-west1-d、europe-west1-b)

1~624 GB
(その他すべてのゾーン)

NVIDIA® Tesla® K80 1 GPU 12 GB GDDR5 1~8 vCPU 1~52 GB
  • asia-east1-a
  • asia-east1-b
  • europe-west1-b
  • europe-west1-d
  • us-central1-a
  • us-central1-c
  • us-east1-c
  • us-east1-d
  • us-west1-b
2 GPU 24 GB GDDR5 1~16 vCPU 1~104 GB
4 GPU 48 GB GDDR5 1~32 vCPU 1~208 GB
8 GPU 96 GB GDDR5 1~64 vCPU

1~416 GB
(asia-east1-a と us-east1-d)

1~208 GB
(その他すべてのゾーン)

注:
  • ゾーンの詳細については、リージョンとゾーンをご覧ください。
  • NVIDIA® K80® ボードには、それぞれ 2 個の GPU が搭載されています。K80 GPU の料金は、ボード単位ではなく、個々の GPU 単位で課金されます。

GPU デバイスには、vCPU と同様の継続利用割引が適用されます。GPU デバイスの時間単位の料金や月単位の料金については、GPU の料金ページをご覧ください。

マルチ GPU ワークロードの場合、V100 GPU には GPU 間の通信用の高速 NVLink™ 接続が用意されています。

GPU の相互の接続および CPU との接続に関する情報を表示するには、インスタンスで次のコマンドを実行します。

nvidia-smi topo -m

NVLink とその利点については、NVIDIA デベロッパー ブログをご覧ください。

グラフィック ワークロード用 NVIDIA® GRID® GPU

3D 表示などのグラフィックを多用するワークロードが存在する場合、NVIDIA GRID® プラットフォームを使用する仮想ワークステーションを作成できます。

GRID の背景情報については、GRID の概要をご覧ください。

仮想ワークステーションの GPU を選択すると、NVIDIA GRID のライセンスがインスタンスに追加されます。仮想ワークステーションで GPU をサポートするには、GRID ドライバがインストールされている必要があります。

仮想ワークステーションを作成したら、Teradici® PCoIP や VMWare® Horizon View などのリモート デスクトップ プロトコルを使用して仮想ワークステーションに接続できます。

GPU モデル GPU GPU メモリ 利用可能な vCPU 数 利用可能なメモリ 利用可能なゾーン
NVIDIA® Tesla® T4 仮想ワークステーション 1 GPU 16 GB GDDR6 1~24 vCPU 1~156 GB
  • asia-east1-a
  • asia-east1-c
  • asia-northeast1-a
  • asia-northeast1-c
  • asia-northeast3-b
  • asia-northeast3-c
  • asia-south1-a
  • asia-south1-b
  • asia-southeast1-b
  • asia-southeast1-c
  • australia-southeast1-a
  • europe-west2-a
  • europe-west2-b
  • europe-west3-b
  • europe-west4-b
  • europe-west4-c
  • southamerica-east1-c
  • us-central1-a
  • us-central1-b
  • us-central1-f
  • us-east1-c
  • us-east1-d
  • us-east4-b
  • us-west1-a
  • us-west1-b
2 GPU 32 GB GDDR6 1~48 vCPU 1~312 GB
4 GPU 64 GB GDDR6 1~96 vCPU 1~624 GB
NVIDIA® Tesla® P4 仮想ワークステーション 1 GPU 8 GB GDDR5 1~16 vCPU 1~156 GB
  • asia-southeast1-b
  • asia-southeast1-c
  • australia-southeast1-a
  • australia-southeast1-b
  • europe-west4-b
  • europe-west4-c
  • northamerica-northeast1-a
  • northamerica-northeast1-b
  • northamerica-northeast1-c
  • us-central1-a
  • us-central1-c
  • us-east4-a
  • us-east4-b
  • us-east4-c
  • us-west2-c
  • us-west2-b
2 GPU 16 GB GDDR5 1~48 vCPU 1~312 GB
4 GPU 32 GB GDDR5 1~96 vCPU 1~624 GB
NVIDIA® Tesla® P100 仮想ワークステーション 1 GPU 16 GB HBM2 1~16 vCPU 1~104 GB
  • asia-east1-a
  • asia-east1-c
  • australia-southeast1-c
  • europe-west1-b
  • europe-west1-d
  • europe-west4-a
  • us-central1-c
  • us-central1-f
  • us-east1-b
  • us-east1-c
  • us-west1-b
2 GPU 32 GB HBM2 1~32 vCPU 1~208 GB
4 GPU 64 GB HBM2

1~64 vCPU
(us-east1-c、europe-west1-d、europe-west1-b)

1~96 vCPU
(その他すべてのゾーン)

1~208 GB
(us-east1-c、europe-west1-d、europe-west1-b)

1~624 GB
(その他すべてのゾーン)

ネットワーク帯域幅と GPU

ネットワーク帯域幅を上げると、分散ワークロードのパフォーマンスを向上させることができます。Compute Engine では、ネットワーク帯域幅はマシンタイプと CPU 数によって異なります。GPU が接続された VM インスタンスでは、GPU 数、CPU、メモリの構成もネットワーク帯域幅に影響を与えます。また、ベータ版で 50~100 Gbps レートを実現するには、VM インスタンスで Compute Engine 仮想ネットワーク インターフェース(gVNIC)を使用する必要があります。

Compute Engine で使用できる最大帯域幅は次のとおりです。

  • P100、P4、K80 GPU が接続された VM インスタンスで使用できる最大帯域幅は 32 Gbps です。GPU が接続されていない VM インスタンスで使用できる最大レートに類似しています。ネットワーク帯域幅についての詳細は、下り(外向き)最大データ通信速度を参照してください。
  • V100 と T4 GPU が接続された VM インスタンスの場合、GPU 数に基づいて最大 50 または 100 Gbps の最大帯域幅を取得できます。最大 100 Gbps を使用する、V100 GPU と T4 GPU が接続された VM インスタンスを作成するには、最大 100 Gbps のネットワーク帯域幅の利用をご覧ください。

帯域幅の構成

次の表は、T4 と V100 GPU タイプの異なる VM 構成で使用可能なネットワーク帯域幅をまとめたものです。

ネットワーク帯域幅は、VM インスタンスの構成に基づいて自動的に適用されます。たとえば、VM インスタンスが 1 個の V100 GPU コア、12 個の vCPU、78 GB のメモリをもつ場合、最大ネットワーク帯域幅は 24 Gbps です。

V100 VM インスタンスの構成 ネットワーク帯域幅
GPU 数
vCPU メモリ
1 12 78 GB 24 Gbps
2 24 156 GB 32 Gbps
4 48 312 GB 50 Gbps ベータ版
8 96 624 GB 100 Gbps ベータ版
T4 VM インスタンスの構成 ネットワーク帯域幅
GPU 数
vCPU メモリ
1 24 156 GB 32 Gbps
2 48 312 GB 50 Gbps ベータ版
4 96 624 GB 100 Gbps ベータ版

プリエンプティブル インスタンスの GPU

より低価格な GPU のプリエンプティブル料金GPU をプリエンプティブル VM インスタンスに追加できます。プリエンプティブル インスタンスに接続された GPU は、通常の GPU と同様に動作しますが、インスタンスの存続期間中にのみ有効になります。GPU を使用したプリエンプティブル インスタンスは、すべてのプリエンプティブル インスタンスと同じプリエンプトの処理に従います。

GPU をプリエンプティブル インスタンスに追加した場合、GPU 割り当ては通常の割り当て量になります。プリエンプティブル GPU 用の割り当てが別途必要な場合は、プリエンプティブル GPU 割り当てを別途リクエストしてください。

メンテナンス イベント中には、GPU を使用したプリエンプティブル インスタンスはデフォルトでプリエンプトされ、自動的に再起動することはできません。プリエンプトされた後でインスタンスを再作成する場合には、マネージド インスタンス グループを使用します。マネージド インスタンス グループは、vCPU、メモリ、GPU リソースが利用可能であれば、インスタンスを再作成します。

インスタンスがプリエンプトされる前に警告を受けるようにする場合、またはメンテナンス イベントの終了後にインスタンスが自動的に再起動するように構成する場合は、GPU を使用したプリエンプティブル以外のインスタンスを使用します。GPU を使用したプリエンプティブル以外のインスタンスの場合は、Google からプリエンプションの 1 時間前に通知が送信されます。

インスタンスの実行が開始されてから 1 分以内にインスタンスがプリエンプトされた場合、Compute Engine では GPU に対する課金は行いません。

非プリエンプティブル インスタンスを自動的に再起動する手順については、インスタンスのオプションの更新をご覧ください。

GPU が接続されたプリエンプティブル インスタンスの作成方法については、GPU を使用したインスタンスの作成をご覧ください。

確約利用割引で GPU を予約する

特定のゾーンに GPU のリソースを予約する方法については、ゾーンリソースの予約をご覧ください。GPU の確約利用割引には予約が必要です。

GPU の比較表

以下では、Compute Engine で利用可能な GPU のタイプ別に、パフォーマンス仕様、機能の可用性、理想的なワークロードのタイプについて説明します。

GPU で使用可能な最大 CPU とメモリは、GPU リソースを使用するゾーンによって異なります。メモリ、CPU リソース、利用可能なリージョンとゾーンについては、GPU のリストをご覧ください。

ローカル SSD は、P4 GPU を除き、使用可能なリージョンとゾーンで実行されるすべての GPU でサポートされます。P4 GPU は、us-central1-cus-central1-f ゾーンでのみローカル SSD をサポートします。

指標 T4 P4 V100 P100 K80
Tensor コア数 320 なし 640 なし なし
CUDA コア数 2560 2560 5120 3840 2496
ピーク時のパフォーマンス(TFLOPS) 倍精度(FP64) 0.25 TFLOPS1 0.2 TFLOPS1 7.8 TFLOPS 4.7 TFLOPS 1.46 TFLOPS
単精度(FP32) 8.1 TFLOPS 5.5 TFLOPS 15.7 TFLOPS 9.3 TFLOPS 4.37 TFLOPS
半精度(FP16) 65 TFLOPS2 なし 125 TFLOPS2 18.7 TFLOPS なし
INT8 130 TOPS3 22 TOPS3 63 TOPS3 なし なし
相互接続(NVLink/PCIe) PCIe Gen 3x16 PCIe Gen 3x16 NVLink: 300 GB/秒、PCIe Gen 3x16 PCIe Gen 3x16 PCIe Gen 3x16
メモリと帯域幅 16 GB GDDR6@ 320 GB/秒 8 GB GDDR5@ 192 GB/秒 16 GB HBM2@ 900 GB/秒 16 GB HBM2@ 732 GB/秒 12 GB GDDR5@ 240 GB/秒
GRID リモート ワークステーション サポート Y Y N Y N
最適な用途 機械学習における推論、トレーニング、リモート可視化のワークステーション、動画のコード変換 リモート可視化のワークステーション、機械学習における推論、動画のコード変換 機械学習のトレーニング、推論、HPC 機械学習のトレーニング、推論、HPC、リモート可視化のワークステーション 機械学習における推論、トレーニング、HPC
料金 Compute Engine で利用可能な GPU タイプとリージョンごとの料金については、GPU の料金をご覧ください。

1 FP64 コードを正しく動作させるため、T4 および P4 GPU アーキテクチャには、少数の FP64 ハードウェア ユニットが組み込まれています。

2 このパフォーマンスは、Tensor コアを使用した場合の結果です。

3 TeraOperations/秒

制限事項

GPU を使用するインスタンスには固有の制約があり、他のインスタンス タイプとは異なる動作をします。

  • インスタンスで Tesla K80 GPU を使用する場合、インスタンスは Intel Skylake 以降の CPU プラットフォームを使用できません。

  • GPU は現在、汎用 N1 マシンタイプでのみサポートされています。

  • GPU インスタンスはホスト メンテナンス イベントの際に停止する必要がありますが、自動的に再起動できます。Compute Engine のホスト メンテナンス イベントは 2 週間に 1 回の頻度で発生しますが、これよりも頻繁に行われる場合もあります。これらのメンテナンス イベントが適正に処理されるようにワークロードを構成する必要があります。具体的には、機械学習や高性能コンピューティング(HPC)などの長時間実行されるワークロードでは、ホスト メンテナンス イベントの中断を処理する必要があります。GPU を使用したインスタンスでのホスト メンテナンス イベントの処理方法をご覧ください。

  • Compute Engine システムとユーザーを保護するため、新しいプロジェクトにはグローバル GPU 割り当てが設定されます。この割り当ては、サポート対象のすべてのゾーンで作成できる GPU の総数を制限するものです。GPU 割り当てをリクエストするときは、各リージョンで作成する GPU モデルに対する割り当てに加え、すべてのゾーンにおけるすべてのタイプの GPU の総数に対するグローバル割り当てもリクエストする必要があります。

  • GPU を使用するインスタンスには、インスタンスに追加する GPU ごとに、vCPU の最大数が設定されます。たとえば、各 NVIDIA® Tesla® K80 GPU では、インスタンスのマシンタイプで最大 8 個の vCPU と最大 52 GB のメモリを使用できます。各種 GPU 構成で使用可能な vCPU とメモリの範囲を確認するには、GPU リストをご覧ください。

  • 共有コア マシンタイプのインスタンスには GPU を接続することはできません。

  • GPU が正しく機能するにはデバイス ドライバが必要です。Compute Engine で実行される NVIDIA GPU では、次のドライバ バージョンを使用する必要があります。

    • Linux インスタンス:

      • NVIDIA 410.79 以降のドライバ
    • Windows Server インスタンス:

      • NVIDIA 411.98 以降のドライバ
  • 特定の接続済み GPU モデルを使用するインスタンスは、その接続された GPU モデルが、インスタンスが配置されているのと同じリージョンの複数のゾーンで使用できる場合にのみ、Compute Engine SLA の対象となります。次のゾーンでは、特定の GPU モデルが Compute Engine SLA の対象外となります。

    • NVIDIA® Tesla® T4:
      • asia-northeast1-a
      • asia-south1-b
      • asia-southeast1-b
      • southamerica-east1-c
    • NVIDIA® Tesla® V100:
      • asia-east1-c
    • NVIDIA® Tesla® P100:
      • us-west1-b
      • europe-west4-a
    • NVIDIA® Tesla® K80:
      • us-west1-b
      • us-central1-c
  • europe-west1-d で NVIDIA® Tesla® P100 GPU を使用するインスタンスは、ローカル SSD デバイスを使用できません。

  • Compute Engine では、GPU あたり 1 人の同時利用ユーザーがサポートされています。

次のステップ