SGLang acelera MiniMax-H3 1,95 veces sin perder calidad

El equipo de LMSYS publicó el 27 de agosto un informe de rendimiento de inferencia de MiniMax-H3. El entorno de prueba usó 8 tarjetas NVIDIA H200, cada una con 141 GB de VRAM, ejecutando el framework SGLang Diffusion. Los parámetros se fijaron en resolución 1344×768, 24 FPS y 50 pasos de eliminación de ruido, generando clips de 5 y 10 segundos, con Diffusers como grupo de control.

La conclusión tiene dos niveles. El primero, sin adornos:

"SGLang's dense, lossless path is 1.85–1.95× faster than Diffusers with no approximation: the same denoising work, on a faster runtime."

(La ruta densa y sin pérdidas de SGLang es entre 1,85 y 1,95 veces más rápida que Diffusers sin ninguna aproximación: el mismo trabajo de eliminación de ruido, sobre un runtime más rápido.)

En la cadena de animación texto-a-vídeo, el nivel sin pérdidas es entre 1,87 y 1,95 veces más rápido que Diffusers; en la conversión de lista de fotogramas a vídeo es entre 1,91 y 1,95 veces. Ambas rutas rondan el doble de velocidad, y el SSIM es exactamente 1,0000 — idéntico a nivel de píxel.

Solo sumando tres capas de aceleración se llega a 6 veces

El informe divide la aceleración en tres bloques, cada uno de naturaleza distinta.

Los operadores fusionados son puro trabajo de ingeniería. SGLang combina la actualización de AdaLN, el residual con puerta (gated residual), la activación SwiGLU y el QK RMSNorm con 3D RoPE en un solo kernel, reduciendo el ir y venir de datos en la memoria de la GPU. Las pruebas aisladas de cada operador muestran aceleraciones de entre 2,00 y 12,16 veces, que se traducen en las 1,95× de extremo a extremo mencionadas antes. Esta capa no altera ningún resultado de cálculo.

Cache-DiT ya empieza a tocar la aproximación: reutiliza resultados en caché entre pasos de eliminación de ruido vecinos, usando un umbral de diferencia residual para decidir si reutilizar o no; el nivel conservador usa un umbral de 0,04, y el modo stride, más agresivo, usa 0,08. El nivel conservador logra 2,65 y 2,99 veces en las dos rutas, con el SSIM cayendo a la franja de 0,90 y 0,94.

La atención dispersa SubBlock es la más agresiva: un enrutador disperso por bloques recorta, a partir del paso 10, los bloques KV que participan en el cálculo, con una dispersión de 0,75 u 0,80. Combinada con el modo stride de Cache-DiT, texto-a-vídeo llega a 4,90–5,72 veces, y la conversión de lista de fotogramas a vídeo llega a 5,64–6,24 veces.

El costo visual del nivel de 6 veces

El costo queda todo reflejado en el SSIM, y las dos rutas se comportan de forma muy distinta. La conversión de lista de fotogramas a vídeo resiste mejor: con dispersión 0,75 más stride, el clip de 10 segundos mantiene un SSIM de 0,9202, y el de 5 segundos queda en 0,8629. El texto-a-vídeo cae mucho más, con la misma configuración solo quedan 0,7834 y 0,7713, y al subir la dispersión a 0,80 baja hasta 0,7584.

¿Qué significa un SSIM de 0,76? A grandes rasgos, la estructura y la composición se conservan, pero la textura, los detalles y las altas frecuencias ya no coinciden con la salida original, y se nota al ampliar la imagen. La razón por la que la conversión de lista de fotogramas a vídeo (con restricción de fotograma inicial o fotogramas clave) cae menos también está aquí: el modelo ya está anclado por los fotogramas de condición, así que la dispersión tiene poco margen de libertad que perder.

Convertido a dinero resulta más claro. El precio de alquiler bajo demanda de 8 tarjetas H200 suele rondar en el mercado entre dos y tres dólares por tarjeta y hora, lo que da cerca de veinte dólares por hora para una máquina completa (cálculo aproximado, ya que la diferencia entre proveedores de nube y tipos de contrato es considerable). El nivel sin pérdidas es 1,95 veces más rápido, es decir, en la misma hora se pueden generar casi el doble de clips, recortando el costo por unidad en algo más de la mitad — y esa mitad sale prácticamente gratis, sin sacrificar nada de calidad de imagen. Los niveles superiores ahorran el mismo dinero, pero exigen recortar en SSIM; si vale la pena depende de si esos clips van a entrega final o solo a selección.

Con estos datos desglosados, el uso real debería dividirse en tres niveles: para el vídeo final, usar el nivel sin pérdidas y quedarse con las 1,95× gratis; cuando hace falta equilibrio, subir a Cache-DiT en modo conservador, de 2,65 a 2,99 veces, con un SSIM por encima de 0,90 generalmente aceptable; para filtrar composiciones o hacer previsualizaciones, usar SubBlock en 0,75, cambiando seis veces la velocidad por una imagen que se “reconoce a grandes rasgos”, ya que tras la selección de todos modos habrá que volver a generar el vídeo final.

Algunos límites a tener en cuenta

El propio informe delimita su alcance. Solo se probaron tres métodos de aceleración; técnicas con pérdidas igual de comunes, como la cuantización o la resolución progresiva, quedaron fuera. La medición de tiempo excluye el arranque del servicio, el calentamiento (warmup), el sondeo HTTP y la descarga de archivos, es decir, estas cifras corresponden solo al lado de la inferencia, y la sensación de extremo a extremo en la práctica será menor. El conjunto SubBlock además tiene requisitos estrictos: solo funciona con atención no causal larga, en BF16, con dimensión de cabeza (head dimension) de 128 y longitud de secuencia no menor a 4096. Los datos de prueba se recopilaron en realidad el 18 de agosto, y el informe se publicó con nueve días de retraso.

Puesto en la línea de tiempo de H3: el modelo abrió sus pesos a finales de julio, y un mes después una pila de inferencia de terceros ya había llevado el nivel sin pérdidas a casi el doble — el valor real de un modelo de código abierto suele no estar en el resultado del benchmark del día del lanzamiento, sino en cuánta gente está dispuesta a escribir kernels para él una vez que los pesos son públicos.

Fuentes: blog de ingeniería de LMSYS, CocoLoop, documentación del proyecto SGLang; los factores de aceleración y los valores de SSIM de cada nivel se verificaron bajo la misma configuración de 8 tarjetas H200, 1344×768, 24 FPS y 50 pasos de eliminación de ruido.