はじめに: H100 GPU を使用したサーバレス GPU コンピュート
このノートブックでは、H100 アクセラレータでDatabricksサーバレス GPU コンピュートを使用する方法を説明します。 serverless_gpu Python ライブラリを使用して、H100 GPU に接続し、分散ワークロードを実行する方法を学習します。
serverless_gpuライブラリを使用すると、Databricks ノートブックから GPU ワークロードを直接シームレスに実行できます。分散 GPU コンピューティング用のデコレータとランタイム ユーティリティを提供します。詳細については、サーバレス GPU APIドキュメントを参照してください。
サーバレスGPUコンピュートに接続する
このノートブックを実行するには、H100 アクセラレータを備えたDatabricksサーバレス GPU コンピュートにアクセスする必要があります。
- コンピュート セレクターから [サーバ レス GPU] を選択します。
- 右側の「環境」タブで、アクセラレータとして H100 を 選択します。このオプションでは、単一ノードで 8 個の H100 チップを使用します。
- [適用] をクリックします。
リモート GPU をターゲットにしてより多くのリソースに拡張する方法については、以下の Hello World の 例を参照してください。
H100 GPUを使用する場合
A10 と比較して、H100 は 1 秒あたりの浮動小数点演算 (FLOPS) が大きく、高帯域幅メモリ (HBM) を備えています。高いスループットや大容量の GPU メモリが必要な大規模モデルの トレーニング には、H100 を使用します。
GPU接続を確認する
nvidia-smiコマンドを使用して、8 つの H100 GPU に接続されていることを確認します。このコマンドは、モデル、メモリ、使用率などの GPU 情報を表示します。
%sh nvidia-smi
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 ランクにアクセスします。
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')
assert result == [0, 1, 2, 3, 4, 5, 6, 7]
次のステップ
- サーバレス GPU コンピュートのベスト プラクティス
- サーバーレス GPU コンピュートの問題のトラブルシューティング
- マルチGPUおよびマルチノード分散トレーニング
- サーバーレス GPU APIドキュメント