Memória e Interconexão para IA
HBM — High Bandwidth Memory
A memória padrão para GPUs de data center. Empilhada verticalmente (stacking), conectada via interposer, oferece muito maior bandwidth que GDDR.
Evolução do HBM
| Geração | Lançamento | Bandwidth/stack | Capacity/stack | Uso |
|---|---|---|---|---|
| HBM2 | 2016 | 256 GB/s | 4–8 GB | V100, primeiras GPUs IA |
| HBM2e | 2020 | 460 GB/s | 16 GB | A100, MI100 |
| HBM3 | 2023 | 819 GB/s | 24 GB | H100, MI300X |
| HBM3e | 2024 | 1,228 GB/s | 36 GB | H200, B100/B200, MI355X |
| HBM4 | 2026 | ~2,400 GB/s | 48+ GB | B300, MI450 |
| HBM4e | 2027 | ~3,500 GB/s | 64+ GB | Previsto para próxima geração |
Por que bandwidth importa para LLMs:
- Inferência de LLMs é memory-bandwidth bound, não compute bound
- Cada token gerado precisa carregar todos os pesos do modelo da memória
- GPT-3 175B: 350 GB de pesos → precisa de 350 GBs para 1 tokensegundo
- H100 tem 3.35 TBs → permite ~10 tokenssegundo em 2-GPU split
GDDR — Graphics DDR
Memória de GPUs consumer (GeForce RTX, Radeon RX) e algumas workstation.
| Geração | Lançamento | Bandwidth máx | Uso típico |
|---|---|---|---|
| GDDR5X | 2016 | 448 GB/s | GTX 10-series |
| GDDR6 | 2018 | 672 GB/s | RTX 30-series |
| GDDR6X | 2020 | 1,008 GB/s | RTX 3090, RTX 4090 |
| GDDR7 | 2025 | 1,792 GB/s | RTX 5090, RTX 5080 |
Desvantagem vs HBM: Menor bandwidth total (single die vs multi-stack); mais distância física → maior latência. Vantagem: Muito mais barato; mais capacidade por $.
NVLink — Interconexão GPU-GPU (NVIDIA)
| Versão | Geração GPU | Bandwidth Bidirecional/link | Links máx | Total Bidirecional |
|---|---|---|---|---|
| NVLink 2.0 | Volta (V100) | 50 GB/s | 6 | 300 GB/s |
| NVLink 3.0 | Ampere (A100) | 50 GB/s | 12 | 600 GB/s |
| NVLink 4.0 | Hopper (H100) | 56.25 GB/s | 18 | 900 GB/s |
| NVLink 5.0 | Blackwell (B100/B200) | 100 GB/s | 18 | 1.8 TB/s |
Importância: Com NVLink, múltiplas GPUs agem como uma GPU maior — model parallelism sem bottleneck de PCIe.
NVSwitch — Switch para Redes de GPU
- Função: All-to-all NVLink entre muitas GPUs (sem restrição de topologia ponto-a-ponto)
- NVSwitch 3.0 (Hopper): 8 GPUs full-bandwidth → 900 GB/s todos para todos
- NVSwitch 4.0 (Blackwell): 72 GPUs (GB200 NVL72) com 1.8 TB/s todos para todos
- Analogia: Se NVLink é a "rodovia", NVSwitch é a "praça de pedágio" que conecta todas
InfiniBand — Rede de Alta Performance para Clusters
HDR InfiniBand
- Bandwidth: 200 Gb/s por porta
- Latência: ~600 ns
- Adoção: Clusters H100/A100 modernos
NDR InfiniBand (2022)
- Bandwidth: 400 Gb/s por porta
- Latência: ~500 ns
- Switches: NVIDIA Quantum-2 (64 portas)
- Adoção: Padrão para clusters H100 novos
XDR InfiniBand (2025)
- Bandwidth: 800 Gb/s por porta
- Adoção: Clusters GB200/B200
Uso: Comunicação entre nós em distributed training (all-reduce, gradient sync)
RoCE — RDMA over Converged Ethernet
- Alternativa: InfiniBand mais barato usando Ethernet
- RoCEv2: Over UDP; amplamente suportado
- Vantagem: Infraestrutura Ethernet existente; mais barato
- Desvantagem: Maior latência que InfiniBand; mais sensível a congestionamento
- Adoção: AWS EFA (Elastic Fabric Adapter), Azure RDMA, Google Jupiter
PCIe — CPU-GPU e GPU-GPU Consumer
| Versão | Bandwidth/lane | x16 Bandwidth (bidirecional) |
|---|---|---|
| PCIe 4.0 | 16 GT/s | 64 GB/s |
| PCIe 5.0 | 32 GT/s | 128 GB/s |
| PCIe 6.0 | 64 GT/s | 256 GB/s |
Limitação para multi-GPU: Sem NVLink, duas RTX 4090 se comunicam via PCIe 4.0 x16 = 64 GBs — vs NVLink 4.0 = 900 GBs (14× mais lento).
NVLink-C2C — CPU-GPU Coerente (Grace Blackwell)
- Bandwidth: 900 GB/s por CPU-GPU pair (bidirecional)
- Coerência: CPU e GPU compartilham espaço de endereçamento unificado
- Impacto: Elimina transferência de dados CPU↔GPU; zero-copy
- Uso: GB200 NVL72 — Grace CPU + B200 GPU em mesmo package
CXL — Compute Express Link (Futuro)
- Sobre PCIe 5.0/6.0: Protocolo para memória coerente entre CPU e aceleradores
- CXL 3.0: Permite pool de memória compartilhada entre múltiplos nós
- Relevância: Permite adicionar HBM externo ao servidor sem GPU
- Timeline: Em adoção em servidores enterprise 2025–2027
Memória CPU — DRAM
| Tipo | Bandwidth | Capacity típica | Uso em IA |
|---|---|---|---|
| DDR4-3200 | 51.2 GB/s | 256–512 GB | Padrão 2020–2023 |
| DDR5-4800 | 76.8 GB/s | 512 GB–1 TB | Padrão 2023+ |
| DDR5-6400 | 102.4 GB/s | 512 GB–2 TB | High-end 2024+ |
| LPDDR5X | 68.3 GB/s | 64 GB | Laptops (M3 Max, etc) |
Para ZeRO-Infinity: CPU DRAM como extensão de VRAM — bandwidth é o gargalo (PCIe 5.0 limita a 128 GB/s)
NVMe — Armazenamento para IA
- ZeRO-Infinity: Offload de estados do optimizer para NVMe
- PCIe 5.0 NVMe: 12–14 GB/s de leitura (Samsung 990 Pro, SK Hynix Platinum P41)
- Relevância: Permite treinar modelos maiores que a DRAM disponível
- Limitação: 14 GBs vs 100+ GBs de DRAM = 7× mais lento; apenas para parâmetros raramente acessados
Topologia de Cluster Típica
[Nó A] [Nó B]
GPU0─┐ GPU0─┐
GPU1─┤ NVSwitch ─── NVLink ─── NVSwitch ─┤GPU1
GPU2─┤ (NVLink 4.0) │ ├GPU2
GPU3─┘ └────┘GPU3
│ │
CPU (PCIe 5.0) CPU (PCIe 5.0)
│ │
└──────── InfiniBand NDR ───────────┘
(400 Gb/s entre nós)Flash Storage para Datasets
- Treino de LLMs: Dataset de 15T tokens (FineWeb) ≈ 15 TB brutos
- Throughput necessário: 5–10 GB/s para não fazer GPU esperar dados
- Solução: RAID de NVMe PCIe 5.0 ou object storage com prefetching (datatrove)
- Cloud: S3GCS com dataloader assíncrono; datasets em formato ArrowParquet shardado