メインコンテンツまでスキップ

はじめに: H100 GPU を使用したサーバレス GPU コンピュート

このノートブックでは、H100 アクセラレータでDatabricksサーバレス GPU コンピュートを使用する方法を説明します。 serverless_gpu Python ライブラリを使用して、H100 GPU に接続し、分散ワークロードを実行する方法を学習します。

serverless_gpuライブラリを使用すると、Databricks ノートブックから GPU ワークロードを直接シームレスに実行できます。分散 GPU コンピューティング用のデコレータとランタイム ユーティリティを提供します。詳細については、サーバレス GPU APIドキュメントを参照してください。

サーバレスGPUコンピュートに接続する

このノートブックを実行するには、H100 アクセラレータを備えたDatabricksサーバレス GPU コンピュートにアクセスする必要があります。

  1. コンピュート セレクターから [サーバ レス GPU] を選択します。
  2. 右側の「環境」タブで、アクセラレータとして H100 を 選択します。このオプションでは、単一ノードで 8 個の H100 チップを使用します。
  3. [適用] をクリックします。

リモート GPU をターゲットにしてより多くのリソースに拡張する方法については、以下の Hello World の 例を参照してください。

H100 GPUを使用する場合

A10 と比較して、H100 は 1 秒あたりの浮動小数点演算 (FLOPS) が大きく、高帯域幅メモリ (HBM) を備えています。高いスループットや大容量の GPU メモリが必要な大規模モデルの トレーニング には、H100 を使用します。

GPU接続を確認する

nvidia-smiコマンドを使用して、8 つの H100 GPU に接続されていることを確認します。このコマンドは、モデル、メモリ、使用率などの GPU 情報を表示します。

Python
%sh nvidia-smi
Output
Thu Jan 15 17:56:54 2026
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 575.57.08 Driver Version: 575.57.08 CUDA Version: 12.9 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA H100 80GB HBM3 On | 00000000:53:00.0 Off | 0 |
| N/A 26C P0 70W / 700W | 0MiB / 81559MiB | 0% Default |
| | | Disabled |
+-----------------------------------------+------------------------+----------------------+
| 1 NVIDIA H100 80GB HBM3 On | 00000000:64:00.0 Off | 0 |
| N/A 28C P0 68W / 700W | 0MiB / 81559MiB | 0% Default |
| | | Disabled |
+-----------------------------------------+------------------------+----------------------+
| 2 NVIDIA H100 80GB HBM3 On | 00000000:75:00.0 Off | 0 |
| N/A 26C P0 71W / 700W | 0MiB / 81559MiB | 0% Default |
| | | Disabled |
+-----------------------------------------+------------------------+----------------------+
| 3 NVIDIA H100 80GB HBM3 On | 00000000:86:00.0 Off | 0 |
| N/A 29C P0 68W / 700W | 0MiB / 81559MiB | 0% Default |
| | | Disabled |
+-----------------------------------------+------------------------+----------------------+
| 4 NVIDIA H100 80GB HBM3 On | 00000000:97:00.0 Off | 0 |
| N/A 27C P0 67W / 700W | 0MiB / 81559MiB | 0% Default |
| | | Disabled |
+-----------------------------------------+------------------------+----------------------+
| 5 NVIDIA H100 80GB HBM3 On | 00000000:A8:00.0 Off | 0 |
| N/A 26C P0 67W / 700W | 0MiB / 81559MiB | 0% Default |
| | | Disabled |
+-----------------------------------------+------------------------+----------------------+
| 6 NVIDIA H100 80GB HBM3 On | 00000000:B9:00.0 Off | 0 |
| N/A 26C P0 69W / 700W | 0MiB / 81559MiB | 0% Default |
| | | Disabled |
+-----------------------------------------+------------------------+----------------------+
| 7 NVIDIA H100 80GB HBM3 On | 00000000:CA:00.0 Off | 0 |
| N/A 26C P0 67W / 700W | 0MiB / 81559MiB | 0% Default |
| | | Disabled |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
+-----------------------------------------------------------------------------------------+

Hello Worldの例

この例では、 @distributedデコレータを使用して複数の GPU 間で分散関数を実行する方法を示します。

以下の注釈付き関数は、ノートブックが接続されているノード上の GPU ごとに 1 つずつ、合計 8 つのプロセスで起動されます。launchアノテーションは GPU の数を指定します。

この関数は、 runtimeモジュールを使用して、ローカルおよびグローバル GPU ランクにアクセスします。

Python
from serverless_gpu import distributed
from serverless_gpu import runtime as rt

@distributed(
gpus=8,
gpu_type='h100',
)
def hello_world(name: str) -> list[int]:
if rt.get_local_rank() == 0:
print('hello world', name)
return rt.get_global_rank()

result = hello_world.distributed('SGC')

Python
assert result == [0, 1, 2, 3, 4, 5, 6, 7]

次のステップ

サンプルノートブック

はじめに: H100 GPU を使用したサーバレス GPU コンピュート

ノートブックを新しいタブで開く