SM, CU, shaders y pipelines: cómo funciona realmente una tarjeta gráfica
Arquitectura de GPU

Introducción
Arquitectura de GPU. Para diagnosticar, optimizar o simplemente entender una GPU moderna, es imprescindible conocer su arquitectura interna. A diferencia de una CPU, diseñada para baja latencia y ejecución secuencial, la GPU está construida para paralelismo masivo y alta tolerancia a latencias.
Este bloque explica, a nivel intermedio–avanzado, cómo están organizadas las GPUs modernas (NVIDIA, AMD e Intel), qué significan términos como SM, CU, shaders y pipelines, y por qué estas diferencias importan en rendimiento real y diagnóstico.
La filosofía de diseño de una GPU
Una GPU está optimizada para:
- Ejecutar miles de hilos simultáneos
- Ocultar latencias mediante paralelismo
- Priorizar throughput sobre latencia
Esto implica que una GPU puede “esperar” memoria mientras otros hilos siguen ejecutándose.
SM (Streaming Multiprocessor) – NVIDIA
En GPUs NVIDIA, el bloque fundamental es el SM:
- Contiene múltiples núcleos CUDA
- Incluye unidades de control, registros y caché
- Ejecuta grupos de hilos llamados warps
Características clave:
- Un SM ejecuta muchos warps en paralelo
- Si un warp se bloquea, otro toma su lugar
- El rendimiento depende de la ocupación del SM
Un SM mal aprovechado implica rendimiento desperdiciado.
CU (Compute Unit) – AMD
En AMD, el equivalente al SM es la CU:
- Contiene SIMD engines
- Ejecuta wavefronts (típicamente 32 o 64 hilos)
- Comparte recursos internos
Diferencias clave frente a NVIDIA:
- Tamaño de wavefront distinto
- Organización de registros diferente
- Impacto distinto de latencias de memoria
Esto explica por qué el mismo benchmark escala diferente en AMD y NVIDIA.
Xe Cores – Intel
Intel utiliza una aproximación híbrida:
- Xe Cores como bloque básico
- SIMD vectorial combinado con control flexible
- Orientación fuerte a cómputo y gráficos
Aunque más jóvenes, su arquitectura sigue la misma filosofía de paralelismo masivo.
Shaders: qué son realmente
Un shader no es un bloque físico único:
- Es un programa que se ejecuta en los núcleos
- Puede ser de vértices, píxeles, geometría o cómputo
Todos comparten el mismo hardware subyacente.
Tipos de shaders y su impacto
- Vertex shaders → geometría
- Pixel/fragment shaders → color y efectos
- Compute shaders → cargas generales
Una carga dominada por pixel shaders estresa la VRAM; una de compute, los registros y caché.
Pipelines gráficos
El pipeline gráfico incluye:
- Entrada de vértices
- Transformación
- Rasterización
- Ejecución de shaders
- Escritura en framebuffer
Cada etapa puede convertirse en cuello de botella.
Paralelismo y divergencia
La divergencia ocurre cuando:
- Hilos del mismo grupo toman caminos distintos
Esto reduce eficiencia:
- Todos los hilos deben esperar
Cargas mal optimizadas pierden rendimiento aunque la GPU esté “al 100%”.
Ocupación y latencia
Ocupación alta:
- Más hilos listos
- Mejor ocultamiento de latencia
Pero ocupación excesiva:
- Presiona registros
- Puede reducir frecuencia
El equilibrio es crítico.
Relación con VRAM y caché
La arquitectura define:
- Cómo se accede a la VRAM
- Qué latencias son tolerables
Esto conecta directamente con:
- Ancho de banda
- Errores de memoria
Implicaciones prácticas
Entender la arquitectura permite:
- Interpretar benchmarks correctamente
- Diagnosticar cuellos de botella
- Explicar por qué dos GPUs con TFLOPS similares rinden distinto
Relación con otras subcategorías
Este bloque enlaza con:
Una GPU no es solo “más núcleos”. Es una arquitectura paralela compleja.
Comprender SM, CU, shaders y pipelines es la base para analizar rendimiento, estabilidad y fallos reales en tarjetas gráficas modernas.
