¿Por qué tratar la inferencia de LLM como núcleos por lotes para DRAM cuando un compilador de flujo de datos puede encender mosaicos a través de FIFOS y convertidores de flujo en chip? El sistema introduce un tipo de tensor iterativo (“itensor”) para codificar el mosaico/orden de las transmisiones, permitiendo la transmisión entre kernel y la inserción automatizada de los motores DMA, FIFOS y los convertidores de diseño. En las cargas de trabajo de decodificación de LLM, el equipo de investigación informa hasta 0.64 × latencia menor frente a GPU y hasta 1.99 × eficiencia energética.
¿Qué hace Streamtensor?
StreamTensor compila gráficos de Pytorch en un diseño de flujo de datos orientado a la corriente para que los mosaicos intermedios eviten en gran medida los viajes redondos DRAM fuera de chip a través de la transmisión y la fusión en chip; Los DMA se insertan solo cuando sea necesario; Se reenvían a través de FIFO en chip a los núcleos aguas abajo. La abstracción central del compilador (tensores iterativos (ITensores)) reconoce el orden de iteración, el mosaico y el diseño, lo que hace que la compatibilidad de la corriente entre kernel sea explícita y impulse la generación del convertidor solo donde sea necesario. El marco también busca jerárquicamente sobre el mosaico, la fusión y la asignación de recursos, y utiliza un programa lineal para tamaño FIFOS para evitar puestos o bloqueos muertos mientras minimiza la memoria en chip.
¿Qué es realmente nuevo?
DSE jerárquico. El compilador explora tres espacios de diseño: (i) mosaico/desenrollar/vectorización/permutación en el nivel Linalg, (ii) fusión bajo restricciones de memoria/recursos, y (iii) asignación de recursos/anchos de flujo, optimizando para el rendimiento sostenido bajo limitas de ancho de banda. Pytorch de extremo a extremo → Flujo del dispositivo. Los modelos ingresan a través de Torch-Mlir, se transforman en MLIR Linalg y luego en un IR de flujo de datos cuyos nodos se convierten en núcleos de hardware con flujos explícitos y pegamento de host/tiempo de ejecución, sin ensamblaje RTL manual. Sistema de tipificación de tensor iterativo (itensor). Un tipo de tensor de primera clase expresa orden de iteración, mosaico y mapas afines. Esto hace que el orden de la corriente sea explícito, permite la fusión de núcleo seguro y permite que el compilador sintetice convertidores mínimos de amortiguadores/formatos cuando los productores/consumidores no están de acuerdo. Dimensionamiento formal de FIFO. El búfer entre kernel se resuelve con una formulación de programación lineal para evitar puestos/bloqueos muertos al tiempo que minimiza el uso de la memoria en chip (bram/uram).
Resultados
Latencia: hasta 0.76 × vs aceleradores FPGA LLM anteriores y 0.64 × vs una línea de base de GPU en GPT-2; Eficiencia energética: hasta 1.99 × vs A100 en LLM emergentes (dependiente del modelo). Contexto de la plataforma: Alveo U55C (HBM2 16 GB, 460 GB/s, PCIe Gen3 × 16 o Dual Gen4 × 8, 2 × QSFP28).
La contribución útil aquí es un compilador Pytorch → Torch-Mlir → Flow de DataS que emite núcleos programados para la corriente y un host/tiempo de ejecución para Alveo U55C de AMD; El tipo de tensor iterativo más el tamaño FIFO basado en la programación lineal permite la transmisión segura entre el kernel en lugar de los viajes redondos DRAM. En los puntos de referencia de decodificación de LLM informados en GPT-2, LLAMA, QWEN y GEMMA, el equipo de investigación muestra una latencia geométrica-media tan baja como 0.64 × frente a una línea de base de GPU y una eficiencia energética de hasta 1.99 ×, con un alcance limitado a las cargas de trabajo de decodificación. El contexto de hardware es claro: Alveo U55C proporciona 16 GB HBM2 a 460 GB/s con Dual QSFP28 y PCIe Gen3 × 16 o Gen4 × 8 dual, que se alinea con el diseño de flujo de datos de transmisión.
Echa un vistazo al papel. No dude en consultar nuestra página de GitHub para obtener tutoriales, códigos y cuadernos. Además, no dude en seguirnos en Twitter y no olvide unirse a nuestro subreddit de 100k+ ml y suscribirse a nuestro boletín.

Michal Sutter es un profesional de la ciencia de datos con una Maestría en Ciencias en Ciencias de Datos de la Universidad de Padova. Con una base sólida en análisis estadístico, aprendizaje automático e ingeniería de datos, Michal se destaca por transformar conjuntos de datos complejos en ideas procesables.
🙌 Siga a MarkTechPost: agrégenos como una fuente preferida en Google.