Capítulo 1: Gerenciamento de GPU/TPU
Guia de Seleção de GPU
| Tipo de GPU | VRAM | Caso de Uso | Custo ($/hr) |
|---|---|---|---|
| NVIDIA T4 | 16GB | Inferência, treinamento leve | $0.35 |
| NVIDIA V100 | 32GB | Treinamento intermediário | $2.50 |
| NVIDIA A100 | 80GB | Treinamento de modelos grandes | $4.00 |
| NVIDIA H100 | 80GB | Treinamento de LLM | $8.00+ |
Otimização de Memória de GPU
import torch
# Enable gradient checkpointing
model.gradient_checkpointing_enable()
# Mixed precision training
from torch.cuda.amp import autocast, GradScaler
scaler = GradScaler()
with autocast():
outputs = model(inputs)
loss = criterion(outputs, targets)
scaler.scale(loss).backward()
scaler.step(optimizer)
scaler.update()
# Memory-efficient attention
from torch.nn.functional import scaled_dot_product_attention
# Uses Flash Attention when available
Principais Pontos
Summary
- Combine a GPU com a carga de trabalho – evite superdimensionamento
- Use mixed precision para até 2x mais velocidade e economia de memória
- Monitore a utilização da GPU para identificar gargalos
- Considere instâncias spot para economizar 60-90% nos custos
Próximo: Capítulo 2: Treinamento Distribuído