¿Memoria compartida CPU-GPU? La realidad detrás del hype y el video generativo

Las empresas como Nvidia y AMD están prometiendo soporte para compartir memoria RAM directamente entre las CPUs y sus GPUs. Suena revolucionario: ¿podrá realmente la GPU acceder a los datos del sistema sin copias explícitas? Al principio parece que sí, pero al analizarlo más a fondo, hay bastante marketing mezclado con avances reales.

Diagrama técnico que ilustra la conexión directa entre una unidad central de procesamiento y una tarjeta gráfica a través de un pool de memoria compartido.
Diagrama de arquitectura compartida mostrando cómo la RAM del sistema se integra con la VRAM de la GPU.

La idea central es que la CPU y la GPU dejen de comportarse como dos computadores separados. La GPU podría acceder directamente a enormes cantidades de RAM del sistema sin copias, y la CPU vería la memoria de la GPU como parte del mismo espacio lógico.

Ahora bien, aquí está el detalle importante: compartir memoria no significa que esa RAM común se vuelva tan rápida como la HBM de una GPU. La diferencia sigue siendo enorme entre velocidades como los 8 TB/s de HBM3E y los cientos de GB/s de DDR5 de servidor.

La clave es que estas tecnologías eliminan más los límites de capacidad que los de rendimiento. Antes, un modelo de IA de 500 GB era imposible cargar en una GPU de 192 GB VRAM. Ahora, con RAM compartida masiva, se puede cargar el modelo completo.

Para aterrizar las expectativas, supongamos que queremos hacer outpainting de vídeo a 720p. La limitación suele ser la memoria para almacenar los frames latentes y las activations del modelo. Aquí vemos claramente cómo la VRAM disponible restringe el tamaño de los chunks:

| VRAM | Chunk razonable | |——–|——–| | 12 GB | 1-2 s | | 24 GB | 5-8 s | | 32 GB | 8-15 s |

El tiempo estimado de procesamiento por segundo de vídeo también varía drásticamente. Con 12 GB de VRAM, procesar un segundo de video puede tardar entre 8 y 20 minutos.

Sin embargo, si aparece una verdadera arquitectura de memoria unificada, el panorama cambia. Con 48 GB VRAM + 256 GB RAM unificada, podríamos manejar chunks de varios minutos a la vez.

El problema menos intuitivo es que para outpainting de vídeo, muchas veces la VRAM no limita tanto el tiempo de render como la consistencia temporal. Los paneos largos y lentos son desastrosos porque revelan inconsistencias espaciales acumuladas: una mancha azul en el Frame 1 podría transformarse en una ventana en el Frame 300.

Para resolver esto, un enfoque prometedor es renderizar primero una panorámica completa del fondo y usarla como referencia. Esto obliga al modelo a mantener coherencia entre la zona original y el borde generado, evitando que el mundo cambie de forma mientras la cámara se mueve.