Partilhar via


Comece: Computação de GPU serverless com GPUs H100

Este bloco de notas demonstra como usar a computação serverless GPU de Databricks com aceleradores H100. Vais aprender a ligar-te a GPUs H100 e a executar cargas de trabalho distribuídas usando a serverless_gpu biblioteca Python.

A serverless_gpu biblioteca permite a execução fluida de cargas de trabalho da GPU diretamente a partir dos notebooks Databricks. Fornece decoradores e utilitários de execução para computação distribuída por GPU. Para saber mais, consulte a documentação da API para GPU Serverless.

Ligar-se à computação GPU sem servidor

Para executar este notebook, precisas de acesso à computação GPU Databricks serverless com aceleradores H100.

  1. Do seletor de computação, selecione GPU Serverless.
  2. No separador "Ambiente" do lado direito, selecione H100 para o seu acelerador. Esta opção utiliza 8 chips H100 num único nó.
  3. Clique em Aplicar.

Veja o exemplo do Hello World abaixo para saber como direcionar GPUs remotas para escalar a mais recursos.

Quando usar GPUs H100

Comparados com os A10, os H100 oferecem operações de ponto flutuante por segundo (FLOPS) maiores e memória de alta largura de banda (HBM). Use H100s para treinamento de grandes modelos onde seja necessário alto débito e/ou grande memória de GPU.

Verificar a ligação à GPU

Use o nvidia-smi comando para confirmar que está ligado a 8 GPUs H100. Este comando mostra informações da GPU, incluindo modelo, memória e utilização.

%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                                                             |
+-----------------------------------------------------------------------------------------+

Exemplo Olá, Mundo

Este exemplo demonstra como executar uma função distribuída entre múltiplas GPUs usando o @distributed decorador.

A função anotada abaixo é lançada em 8 processos, um por GPU no nó ao qual o notebook está anexado. A launch anotação especifica o número de GPUs.

A função utiliza o runtime módulo para aceder às classificações locais e globais das GPUs.

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]

Passos seguintes

Exemplo de bloco de notas

Comece: Computação de GPU serverless com GPUs H100

Obter bloco de notas