FLINT: Efficiently Leveraging High Bandwidth Flash for Capacity-Scalable LLM Inference Acceleration
FLINT es un sustrato impulsado por la carga de trabajo que acelera la inferencia de LLM escalable en capacidad en flash de alto ancho de banda (HBF) mediante la introducción de un controlador de búfer de ráfagas de hardware, un mecanismo de refresco de plano fantasma y un FTL de solo lectura para superar los desafíos de latencia, interferencia en la ruta crítica y sobrecarga de gestión.
Artículo original bajo licencia CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo
El mundo de la inteligencia artificial está actualmente en una carrera hacia un límite físico. Los modelos de lenguaje más avanzados, los sistemas que escriben código, redactan historias y resuelven problemas complejos, han crecido tanto que ya no caben dentro de los chips de memoria estándar conectados a los procesadores de computadora que los ejecutan. Imagine intentar cargar una biblioteca de mil millones de libros en una mochila que solo puede contener unas pocas docenas; esta es la realidad actual del hardware que impulsa estos modelos. Para hacer que estos sistemas funcionen, los ingenieros se han visto obligados a dividir los modelos en muchas computadoras separadas, una solución que es costosa, lenta y ávida de energía porque las computadoras deben comunicarse constantemente entre sí para compartir la carga. Una nueva tecnología llamada flash de alto ancho de banda ofrece una forma de almacenar estas bibliotecas masivas justo al lado del procesador, proporcionando terabytes de espacio en un paquete diminuto. Sin embargo, este nuevo almacenamiento es mucho más lento de leer que la propia memoria del procesador, lo que crea un cuello de botella donde la computadora pasa la mayor parte del tiempo esperando a que lleguen los datos.
Investigadores de Huawei y ETH Zurich han diseñado un sistema llamado FLINT para resolver este problema de espera. Su trabajo, detallado en un estudio reciente, propone una forma de hacer que este almacenamiento flash de alta capacidad funcione lo suficientemente rápido como para seguir el ritmo de las demandas del procesador sin necesidad de los complejos cronogramas preplanificados que requerían los diseños anteriores. En lugar de adivinar qué datos necesitará el procesador a continuación, FLINT observa al procesador en tiempo real y organiza las solicitudes de datos a medida que ocurren. Al agrupar estas solicitudes y utilizar de manera más eficiente los búferes internos del chip de almacenamiento, el sistema puede transmitir datos a velocidades que casi igualan la propia memoria del procesador. El equipo simuló este sistema utilizando seis modelos de lenguaje de gran tamaño diferentes, incluidos algunos de los modelos más grandes y complejos que existen actualmente. Sus resultados muestran que este enfoque permite que un solo paquete de computadora maneje tareas que anteriormente requerían docenas de máquinas, mientras utiliza significativamente menos energía y entrega resultados mucho más rápido.
El núcleo del problema radica en cómo se construyen estos modelos. Para ejecutar una inferencia, que es el acto de que el modelo genere una respuesta, la computadora debe acceder constantemente a los pesos del modelo, que son esencialmente los miles de millones de números que definen su conocimiento. En el pasado, estos pesos eran lo suficientemente pequeños como para caber enteramente en la memoria de alta velocidad conectada directamente al procesador. Ahora, con modelos que contienen cientos de miles de millones o incluso billones de parámetros, los pesos son demasiado grandes para esa memoria rápida. La alternativa ha sido utilizar unidades de estado sólido, que son grandes y baratas pero demasiado lentas, o utilizar múltiples procesadores, lo que introduce retrasos al sincronizar su trabajo. El flash de alto ancho de banda se propuso como un punto medio: una tecnología de almacenamiento que cabe en el mismo paquete pequeño que el procesador y ofrece una capacidad masiva, pero con una velocidad de lectura que sigue siendo demasiado lenta para que el procesador la use directamente sin detenerse.
Los intentos previos de utilizar este almacenamiento flash dependían de un método similar a un bibliotecario que adivina qué libros necesitará un lector a continuación. El sistema intentaba predecir la siguiente capa del modelo y comenzaba a buscar esos pesos antes de que el procesador los pidiera. Los investigadores descubrieron que este juego de adivinanzas fallaba estrepitosamente. Debido a que los modelos son tan complejos y su comportamiento cambia dependiendo de la pregunta específica que se realiza, las conjeturas solían ser erróneas. El sistema buscaba datos que el procesador aún no necesitaba, llenando el espacio limitado del búfer y obligándolo a desechar datos que realmente se necesitaban. Esto resultaba en que el procesador pasara la mayor parte del tiempo esperando a que los datos correctos fueran buscados nuevamente, desperdiciando la alta velocidad del almacenamiento flash.
FLINT cambia este enfoque eliminando la conjetura por completo. En lugar de un bibliotecario que adivina, el sistema actúa como un controlador de tráfico altamente eficiente que observa el flujo de autos en tiempo real. Cuando el procesador pide una pieza específica de datos, FLINT no solo busca esa única pieza. Observa el flujo de solicitudes que vienen del procesador y las agrupa. Si el procesador pide varias piezas de datos que casualmente están almacenadas en la misma área física del chip flash, FLINT las empaqueta en una sola solicitud grande. Esto permite que el chip flash lea una cantidad masante de datos de una sola vez, utilizando toda su velocidad. El sistema luego mantiene estos datos en sus búferes internos, listos para ser entregados al procesador exactamente cuando se necesitan. Este agrupamiento dinámico significa que el sistema nunca pierde tiempo buscando datos que no son necesarios, y mantiene el flujo de datos lleno y constante.
Otro gran obstáculo para el almacenamiento flash es que requiere mantenimiento. Con el tiempo, el acto de leer datos puede causar que las cargas eléctricas dentro del chip se degraden, lo que provoca errores. Para solucionar esto, el chip debe pausar periódicamente y reescribir los datos en ubicaciones nuevas. En los diseños anteriores, este mantenimiento tenía que ocurrir mientras el procesador intentaba leer datos, lo que causaba que el sistema se congelara durante largos períodos. Los investigadores resolvieron esto creando un sistema de "plano fantasma". Añadieron una pequeña cantidad de espacio extra al chip que actúa como un carril de repuesto. Cuando una sección del chip necesita mantenimiento, el sistema copia silenciosamente los datos a este carril de repuesto en segundo plano, sin detener nunca el flujo principal de datos al procesador. Esto asegura que el trabajo de mantenimiento nunca interrumpa el trabajo del procesador, manteniendo el sistema funcionando sin problemas incluso a medida que el chip envejece.
El equipo también simplificó la forma en que el sistema traduce las solicitudes del procesador en ubicaciones físicas en el chip. Los sistemas de almacenamiento estándar están construidos para manejar la escritura y reescritura constante, lo que requiere mapas complejos y maquinaria pesada para gestionarlos. Dado que los pesos de un modelo de lenguaje se escriben una vez y nunca cambian, FLINT utiliza un mapa mucho más simple y ligero, optimizado únicamente para la lectura. Esta reducción de la complejidad significa que el sistema puede traducir las solicitudes casi instantáneamente, eliminando otra capa de retraso.
Cuando los investigadores probaron estas ideas en una simulación detallada, los resultados fueron impactantes. Compararon su nuevo sistema con otras tres configuraciones: un sistema estándar que utiliza unidades de estado sólido lentas, un sistema que utiliza solo la memoria rápida a través de muchos procesadores, y un intento previo de usar almacenamiento flash. El sistema FLINT fue capaz de decodificar texto, que es el proceso de generar la salida del modelo, hasta 1,205 veces más rápido que el sistema que utiliza unidades de estado sólido. Comparado con el sistema que dependía de muchos procesadores trabajando juntos, FLINT fue más de dos veces más rápido en promedio. Quizás lo más importante es que logró este rendimiento utilizando muchas menos computadoras. Para un lote pequeño de solicitudes, una sola computadora equipada con FLINT pudo realizar el trabajo que anteriormente requería de cuatro a ocho computadoras, y lo hizo consumiendo significativamente menos energía.
El estudio también analizó cuánto duraría el sistema. Debido a que el almacenamiento flash se lee constantemente, los investigadores estaban preocupados por la rapidez con la que los chips se desgastarían. Descubrieron que su sistema de mantenimiento, que reescribe los datos antes de que ocurran errores, extiende la vida útil del almacenamiento a muchos años, incluso bajo un uso intensivo. El sistema fue probado con seis modelos diferentes, que van desde modelos densos hasta modelos complejos que cambian entre diferentes expertos para resolver problemas, y funcionó bien en todos los casos. Los investigadores señalaron que, aunque el sistema añade una pequeña cantidad de espacio físico al chip, el costo es insignificante comparado con las enormes ganancias en velocidad y capacidad.
Este trabajo demuestra que las limitaciones de la inteligencia artificial no se tratan solo de qué tan inteligentes son los modelos, sino también de cómo movemos los datos a su alrededor. Al repensar cómo el almacenamiento interactúa con el procesador, los investigadores han demostrado que es posible construir sistemas que sean masivos en capacidad y rápidos en velocidad. El sistema FLINT convierte una tecnología que una vez se consideró demasiado lenta para el uso en tiempo real en una solución práctica para la próxima generación de inteligencia artificial, permitiendo que los modelos potentes se ejecuten en máquinas individuales en lugar de requerir centros de datos enteros. Los hallazgos sugieren que, con la ingeniería adecuada, las restricciones físicas de la memoria pueden superarse, abriendo la puerta a sistemas de IA más capaces y eficientes en el futuro.
¿Ahogado en artículos de tu campo?
Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.