English · Español
01 — CPU vs GPU vs TPU vs Trainium vs Gaudi¶
🇪🇸 Cuatro filosofías de hardware para una misma multiplicación de matrices: control-flow (CPU), SIMT (GPU), array sistólico (TPU/Trainium) y VLIW híbrido (Gaudi). Cada una optimiza una métrica diferente.
El trade-off fundamental¶
Cada acelerador responde una pregunta: dado un área de silicio fija, ¿cuánto gasto en control, cuánto en aritmética, cuánto en memoria?
- CPU: la mayor parte del área es control (predicción de saltos, out-of-order, cachés). Pocas ALUs escalares rápidas. Optimiza la latencia sobre control de flujo arbitrario.
- GPU: la mayor parte del área es aritmética (miles de ALUs pequeñas). Control ligero por hilo. Optimiza el throughput sobre trabajo regular paralelo en datos.
- TPU / Trainium: la mayor parte del área es un único array sistólico gigante (una rejilla de celdas multiply-accumulate de 128×128 o 256×256). Casi sin control por celda. Optimiza el throughput de matmul denso a costa de la programabilidad.
- Gaudi: híbrido — procesadores vectoriales VLIW (TPCs) + un Matrix Math Engine. Optimiza el precio por FLOP para workloads de transformer.
Todo el módulo son variaciones sobre este único trade-off.
Números lado a lado (flagships 2024-2026)¶
| Chip | Cómputo pico (denso) | Capacidad HBM | Bandwidth HBM | Intra-chip / scale-up | Proceso | TDP |
|---|---|---|---|---|---|---|
| Intel i5-8250U (CPU, 2018) | ~0.2 TF FP32 | 62 GiB DDR4 (RAM del sistema) | ~19 GB/s | — | 14 nm | 15 W |
| NVIDIA A100 80 GB (GPU, 2020) | 312 TF BF16 / TF32; 624 TF FP16 | 80 GB HBM2e | 2.0 TB/s | NVLink 3: 600 GB/s | 7 nm | 400 W |
| NVIDIA H100 SXM5 (GPU, 2022) | 989 TF FP16/BF16; 1979 TF FP8 | 80 GB HBM3 | 3.35 TB/s | NVLink 4: 900 GB/s | 4 nm | 700 W |
| NVIDIA H200 SXM (GPU, 2024) | 989 TF FP16/BF16; 1979 TF FP8 | 141 GB HBM3e | 4.8 TB/s | NVLink 4: 900 GB/s | 4 nm | 700 W |
| NVIDIA B200 (GPU, 2024) | ~2.25 PF FP16; ~4.5 PF FP8; ~9 PF FP4 | 192 GB HBM3e | 8 TB/s | NVLink 5: 1.8 TB/s | 4NP | 1000 W |
| Google TPU v5p (2024) | 459 TF BF16; 918 TF INT8 | 95 GB HBM | 2.76 TB/s | ICI 3D-torus: 4.8 Tb/s/chip | — | ~450 W [no confirmado públicamente] |
| AWS Trainium 2 (2024) | ~650 TF FP16 (por chip) | 96 GB HBM | 2.9 TB/s | NeuronLink-v3 | — | ~500 W [no confirmado públicamente] |
| Intel Gaudi 3 (2024) | 1835 TF FP8; 1835 TF BF16 | 128 GB HBM2e | 3.7 TB/s | 24× 200 GbE RDMA on-chip | 5 nm | 900 W |
| AMD MI300X (2023) | 1307 TF FP16; 2614 TF FP8 | 192 GB HBM3 | 5.3 TB/s | Infinity Fabric: 896 GB/s | ⅚ nm | 750 W |
[fuente: NVIDIA H100 Tensor Core GPU Architecture Whitepaper 2022; NVIDIA H200 Datasheet 2024; NVIDIA Blackwell Architecture Whitepaper 2024; anuncio Google TPU v5p 2023; documentación AWS Trainium 2 2024; Intel Gaudi 3 Whitepaper 2024; AMD MI300X Datasheet 2023]
CPU — Intel i5-8250U como baseline¶
Este es el portátil de Borja. Lo usamos como baseline de ground-truth de single-thread (ver Fase 01). Propiedades clave:
- 4 cores / 8 threads, 1.6-3.4 GHz.
- AVX2 (SIMD de 256 bits): 8× lanes FP32 por core → 4 × 3.4 GHz × 8 × 2 (FMA) ≈ 174 GFLOP/s pico teórico FP32.
- L1d 32 KB / core, L2 256 KB / core, L3 6 MB compartido.
- DDR4-2400 dual-channel: ~38.4 GB/s teórico, ~19 GB/s alcanzable. Punto de equilibrio de intensidad aritmética ≈ 174 / 19 ≈ 9 FLOP/byte.
Lo que enseña: la mayoría del código "real" está por debajo de ese punto de equilibrio. Las CPUs pasan la mayor parte del tiempo esperando a la memoria.
GPU — NVIDIA H100 como chip canónico de entrenamiento¶
La H100 es sobre lo que cada lab frontier entrenó en 2023-2024.
- 132 SMs × 128 cores FP32 = 16896 lanes FP32, pero los Tensor Cores son los que dominan el presupuesto de FLOPS.
- Tensor Cores de 4.ª generación: soportan TF32, BF16, FP16, FP8 (dos variantes: E4M3 y E5M2), INT8.
- Pico FP16/BF16: 989 TF/s denso, 1979 TF/s con sparsity estructurada 2:4.
- Pico FP8: 1979 TF/s denso, 3958 TF/s con sparsity. FP8 es la receta del entrenamiento era H100. [fuente: NVIDIA H100 datasheet 2024]
- HBM3 80 GB a 3.35 TB/s. Punto de equilibrio de intensidad aritmética (FP16) = 989e12 / 3.35e12 ≈ 295 FLOP/byte. Este número es la cosa más importante del chip — ver §03 de este módulo.
- NVLink 4: 18 lanes × 50 GB/s = 900 GB/s intra-chip; con NVSwitch, las 8 GPUs en un DGX H100 ven 900 GB/s con cada par.
Lo que enseña: a escala H100, un kernel que hace < ~300 FLOPs por byte cargado desde HBM está limitado por bandwidth. La mayoría de los kernels de atención (sin FlashAttention) lo están.
TPU — la filosofía del array sistólico¶
Las TPUs de Google son radicalmente distintas. El núcleo es un array sistólico: una rejilla 2D de unidades MAC que bombea datos por los bordes en lockstep. Para matmul, esto es casi óptimo: cada dato cargado desde HBM se reutiliza ~\(N\) veces en un array \(N \times N\).
- TPU v5p: 459 TF BF16 / 918 TF INT8 por chip; 95 GB HBM @ 2.76 TB/s.
- Inter-chip Interconnect (ICI): topología 3D-torus con ~4.8 Tb/s por chip en cada dimensión, diseñada para AllReduce en un Pod.
- Modelo de programación: XLA vía JAX o TF. Sin CUDA. El compilador hace toda la planificación — no hay abstracción de "warp" que exponer.
Fortaleza: throughput de matmul denso por dólar excelente. El compilador gestiona el particionado automáticamente (jax pmap / shard_map). El 3D-torus es genial para AllReduce.
Debilidad: cualquier cosa fuera del camino dorado del matmul (ops sparse, formas dinámicas, kernels personalizados) es torpe. El ecosistema es JAX-first; PyTorch en TPU existe (torch_xla) pero va por detrás. Sin Triton.
Trainium — el acelerador casi-sistólico de AWS¶
AWS Trainium (Trn1, 2022) y Trainium 2 (Trn2, 2024) son aceleradores de array sistólico que compiten con GPU+TPU.
- Trainium 2: ~650 TF FP16 por chip, 96 GB HBM @ 2.9 TB/s, NeuronLink para scale-out.
- Una instancia
trn2.48xlargeempaca 16 chips en 4 nodos; AWS vende UltraClusters de miles de chips Trainium. - Programación vía el Neuron SDK: backend XLA, frontends PyTorch/JAX.
Fortaleza: precio de AWS; reportadamente ~40% más barato por FLOP de entrenamiento que H100 en el mismo workload [fuente: AWS re:Invent 2024 keynote, afirmación del vendor, no confirmado de forma independiente en MLPerf al momento de escribir].
Debilidad: la madurez del software stack va muy por detrás de CUDA. Los kernels personalizados son dolorosos. Limitado a AWS.
Gaudi — el chip de Intel apuntando a transformer¶
Intel Gaudi 3 (2024) es el resultado de la adquisición de Habana Labs.
- 8 Matrix Math Engines + 64 Tensor Processor Cores (unidades vectoriales VLIW).
- 1835 TF FP8 / BF16, 128 GB HBM2e @ 3.7 TB/s.
- 24× 200 GbE RDMA on-chip: scale-out sin un NIC separado. Único entre los aceleradores listados.
Fortaleza: el networking RoCE integrado es genuinamente novedoso — cada chip es su propio NIC. Bueno para entrenamiento de transformer sensible al coste donde el fabric InfiniBand es un CapEx mayor.
Debilidad: el stack SynapseAI va por detrás de CUDA. Integración PyTorch vía habana_frameworks. Comunidad más pequeña.
Soporte de sparsity¶
- NVIDIA Tensor Cores: sparsity estructurada 2:4 (2 de cada 4 pesos son cero, declarado en el layout de pesos). 2× speedup en ops de Tensor Core si el modelo se podó adecuadamente. Raramente usado en la práctica porque FP8 denso es lo bastante rápido y la poda daña la calidad.
- TPU: sin soporte de hardware para sparsity desde la v5p.
- Trainium 2: sparsity 4:8 soportada [fuente: AWS Trainium 2 docs 2024].
- Gaudi 3: sparsity estructurada no anunciada como feature clave.
- MI300X: sparsity 2:4 soportada [fuente: AMD CDNA 3 whitepaper 2023].
La evaluación honesta: la sparsity es más un número de marketing que una feature de trabajo pesado en 2026.
¿Qué acelerador para qué trabajo?¶
| Workload | Mejor encaje | Por qué |
|---|---|---|
| Pretraining de un modelo denso de 70B+ | Cluster H100 / H200 / B200 | Madurez de software + FP8 + NVLink+NVSwitch |
| Pretraining si tienes un contrato TPU | TPU v5p Pod | AllReduce sobre 3D-torus + sharding dirigido por el compilador |
| Entrenamiento sensible al coste | Trainium 2 (AWS) o Gaudi 3 | ~30-40% menor $/FLOP, acepta dolor del stack |
| Servir MoE grande / contexto largo | MI300X | 192 GB HBM cabe más en un chip; menos sharding |
| Inferencia de ultra-baja latencia | Groq LPU o Cerebras WSE | Pesos residentes en SRAM, sin cuello de botella HBM (ver §05) |
Enlaces cruzados¶
02-h100-and-h200.md: la H100 con mucha más profundidad.05-the-accelerator-landscape-2026.md: madurez del software stack por acelerador.- Fase 01 — Substrato de hardware: lado CPU, donde empieza este contraste.
Referencias¶
- NVIDIA H100 Tensor Core GPU Architecture Whitepaper, 2022 (rev. 2024).
- NVIDIA H200 Tensor Core GPU Datasheet, 2024.
- NVIDIA Blackwell Architecture Technical Brief, 2024.
- Google Cloud TPU v5p announcement, diciembre 2023.
- AWS Trainium 2 architecture documentation, 2024.
- Intel Gaudi 3 AI Accelerator Whitepaper, 2024.
- AMD Instinct MI300X Datasheet, 2023.
- Jouppi et al. 2017, In-Datacenter Performance Analysis of a Tensor Processing Unit, ISCA.
- Jouppi et al. 2023, TPU v4: An Optically Reconfigurable Supercomputer, ISCA.