HeMA-MISO: Arquitectura de Memoria Heterogénea para la inferencia de LLM con optimización de SW

Nota: Esta investigación se realizó en la primera mitad de 2025. Parte de la información puede estar desactualizada en el momento de la lectura.
Presentación general: La inferencia de modelos de lenguaje a gran escala exige mucho a los sistemas de memoria por varias razones. La baja intensidad aritmética hace que muchas operaciones queden limitadas por memoria, lo que resalta la necesidad de alta ancho de banda. Además, el patrón de reutilización de datos en deep learning produce intervalos de reutilización largos y baja localidad, lo que dificulta el uso efectivo de caches SRAM y Scratch Pad Memory SPM. Finalmente, arquitecturas como Mixture of Experts MoE y contextos muy largos generan demandas de capacidad que superan la memoria rápida disponible. En este documento describimos HeMA, una arquitectura de memoria heterogénea para NPUs, y MISO, una técnica de optimización de software orientada a maximizar su eficiencia.
Motivación: En modelos MoE, los expertos ocupan la mayor parte de los parámetros totales, y almacenar todo el modelo en memoria rápida requiere multitud de chips NPU. Al optar por escalar horizontalmente se desperdicia potencia de cómputo y aparecen cuellos de botella en interconexión y sincronización. Añadir memoria de alta capacidad tipo DDR o LPDDR directamente a la NPU aumenta capacidad pero reduce ancho de banda, limitando el rendimiento de inferencia. La alternativa prometedora es un sistema jerárquico que combine memoria de alta capacidad y alta banda como HBM más DDR/LPDDR, permitiendo balancear capacidad y rendimiento.
HeMA: La arquitectura HeMA propone un sistema de dos niveles: memoria superior de alta banda HBM y memoria inferior de alta capacidad DDR o LPDDR. Se añade un núcleo gestor de memoria MHC que compara direcciones y dirige peticiones a buffers separados para cada nivel. Un router interno despacha a controladores de canal específicos. Los transfers entre niveles se realizan en unidades del tamaño de línea de caché y la unidad de cómputo solo accede directamente a datos en SPM, siguiendo el patrón de muchas NPUs comerciales.
MISO: Memory Informed Software Optimization: Para aprovechar HeMA propongo MISO, una técnica que combina colocación de datos, particionado del SPM y prefetching informado por memoria. Observaciones clave: la baja reutilización de datos y los largos intervalos de uso en inferencia LLM dejan ociosa la ruta de alta banda cuando se está bloqueado esperando DDR. MISO particiona el SPM: una pequeña porción queda dedicada a ejecutar operaciones que usan datos desde DDR y la porción mayor se utiliza para prefetch desde HBM de los datos que se necesitarán a continuación. Así se solapan cálculo y transferencia y se oculta la latencia de DDR.
Condiciones necesarias para MISO: impacto mínimo en rendimiento al limitar la porción SPM usada para operaciones DDR; colocación estratégica de datos que permita alternar cálculos entre DDR y HBM; y maximizar la capacidad de prefetch en SPM mediante técnicas como operator fusion y tiling agresivo.
Estrategias de colocación: Evalué tres estrategias por capa: KV-major prioriza cache KV en HBM; Expert-major prioriza pesos de expertos en HBM; y MISO reparte por capa porciones de KV y de expertos en HBM para permitir que dentro de una misma capa atención y MoE utilicen HBM y DDR simultáneamente, habilitando el prefetch cruzado que es central en la propuesta.
Tiling y uso restringido del SPM: Para que MISO funcione es imprescindible el tiling agresivo y métodos optimizados como Flash Attention. En mis experimentos simulados pude limitar el uso de SPM para la atención hasta 8 MB sin degradar rendimiento para tamaños de bloque razonables, y combinar fases de atención con distinto tamaño de paso para ocultar la latencia del prefetch de pesos de expertos desde HBM. En FFN conviene buscar un compromiso de tile que maximice fusión de operadores sin penalizar excesivamente la tercera operación, y mi análisis apuntó a pasos intermedios como mejor opción.
Pipelines de prefetch: El flujo final alterna bloques: mientras se ejecuta Atención con datos DDR se prefetchan pesos de expertos desde HBM a la región libre de SPM; cuando se ejecuta MoE con esos pesos, se prefetcha desde HBM el siguiente bloque de KV. Esta estrategia solo aplica al último bloque de datos que reside en DDR antes del cambio a operación HBM, y requiere que QKV y Gating también operen con footprint reducido de SPM.
Evaluación: Implementé una simulación sobre una hipotética HeMA-TPU basada en un TPUv4 con 128 GB DDR adicional y 256 GB/s de ancho de banda DDR. Usé el simulador ONNXim y como cargas modelos Mixtral 8x7B y Llama4-Scout en FP8, con casos de uso de decodificación. Comparé cuatro métodos: Baseline naive, KV-major con tiling óptimo, Expert-major con tiling óptimo, y MISO con colocación MISO, tiling óptimo y prefetch.
Resultados: En Mixtral 8x7B MISO alcanzó consistentemente el mayor throughput tokens por segundo, aunque parte de la ganancia proviene de optimizaciones como Flash Attention. La ventaja relativa disminuye con secuencias y batches muy grandes porque la SPM disponible para prefetch es fija y el tamaño del KV crece. En Llama4-Scout con contextos extremos la mejora puede reducirse a unos pocos puntos porcentuales en escenarios de KV cache muy grandes.
Análisis de latencias: El desglose por operación muestra que MISO sufre pequeña penalización en operaciones que leen desde DDR por la restricción de SPM, pero gana en operaciones que usan HBM porque los datos ya están prefetcheados a SPM, lo que reduce su latencia y compensa el coste anterior, resultando en mayor rendimiento global.
Limitaciones: Las ganancias decrecen a escalas muy grandes por la SPM fija; para batches muy pequeños la estrategia MISO que reserva HBM para fragmentos de expertos puede desperdiciar espacio si algunos expertos no son activados por el gating.
Sobre Q2BSTUDIO: En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida con fuerte foco en inteligencia artificial, ciberseguridad y servicios cloud. Ofrecemos soluciones integrales de software a medida y aplicaciones a medida para empresas que necesitan desplegar agentes IA, soluciones de ia para empresas y análisis avanzado con Power BI. Si buscas crear soluciones de IA adaptadas a tu negocio puedes conocer nuestras capacidades en inteligencia artificial visitando nuestros servicios de inteligencia artificial. Para proyectos que requieren desarrollo personalizado de plataformas y apps te invitamos a ver nuestras propuestas de desarrollo de aplicaciones y software a medida.
Servicios y palabras clave: Ofrecemos ciberseguridad y pentesting, integración con servicios cloud aws y azure, servicios inteligencia de negocio y consultoría Power BI, automatización de procesos, agentes IA y soluciones de ia para empresas. Estas capacidades permiten llevar investigaciones de arquitectura y optimización como HeMA y MISO a soluciones prácticas, robustas y seguras.
Conclusión: HeMA combinado con la técnica MISO demuestra que una arquitectura heterogénea de memoria más una optimización software informada por la memoria puede mitigar limitaciones de capacidad sin renunciar a rendimiento. El enfoque requiere software consciente de la jerarquía de memoria, tiling y fusión agresivos, y un diseño del SPM que permita prefetches eficientes. Para equipos que necesiten transformar ideas de investigación en productos de producción, Q2BSTUDIO puede apoyar desde la concepción hasta la entrega, integrando capacidades de inteligencia artificial, ciberseguridad y servicios cloud para soluciones completas.
Comentarios