Los smartphones modernos enfrentan una restricción fundamental al ejecutar grandes modelos de lenguaje: capacidad insuficiente de DRAM para almacenar los pesos completos del modelo. Esta limitación obliga a los sistemas a distribuir los parámetros del modelo en soluciones de almacenamiento externo como UFS 4.0, presente en los procesadores Snapdragon 8gen3. Comprender las características de rendimiento del almacenamiento móvil es crucial para optimizar la inferencia de IA en dispositivos edge.
Análisis del rendimiento de E/S de almacenamiento
Tamaño de bloque y ancho de banda de lectura
El almacenamiento móvil presenta un patrón de rendimiento contraintuitivo ligado a los tamaños de bloque de lectura. Al acceder a datos de forma secuencial o aleatoria, bloques de lectura mayores ofrecen mayor eficiencia en el ancho de banda. Un tamaño de bloque de 512KB alcanza un rendimiento máximo de 4 GB/s para lecturas secuenciales y 3.5 GB/s para lecturas aleatorias. Sin embargo, reducir el tamaño del bloque a 4KB disminuye drásticamente el rendimiento: el ancho de banda de lectura aleatoria cae a solo 450 MB/s. Esto plantea una consideración crítica en el diseño de implementaciones de tablas dispersas y estrategias de recuperación de pesos.
Efecto del rango de acceso aleatorio
Curiosamente, el alcance de las operaciones de lectura aleatoria impacta significativamente en el rendimiento. Rangos de lectura más pequeños superan consistentemente a los mayores. Al realizar lecturas aleatorias de 4KB, un rango de 128MB logra aproximadamente 1 GB/s, mientras que expandirlo a 512MB reduce el ancho de banda a menos de 850 MB/s. Esta diferencia de rendimiento se reduce con tamaños de bloque mayores, sugiriendo que los patrones de acceso a tablas dispersas deben equilibrar cuidadosamente la optimización del rango de lectura.
Dependencias del núcleo de CPU
El núcleo de procesamiento que ejecuta los comandos de E/S influye directamente en el rendimiento del almacenamiento. Los núcleos de mayor frecuencia alcanzan un mejor rendimiento en E/S. Los núcleos grandes que operan a 3.3GHz entregan 1 GB/s para lecturas aleatorias de 4KB, mientras que los núcleos pequeños a 2.2GHz solo alcanzan 760 MB/s. Esta diferencia proviene de la necesidad del controlador UFS de gestionar interrupciones y operaciones de gestión de colas: velocidades de reloj más altas permiten procesar más rápido las tareas relacionadas con E/S.
Limitación de la arquitectura de cola única
A diferencia de las soluciones NVMe, el almacenamiento UFS móvil opera con una sola cola de comandos sin capacidades inherentes de concurrencia. Utilizar múltiples núcleos para operaciones de E/S en realidad deteriora el rendimiento hasta en un 40% debido a la contención en la cola de comandos. Esta restricción arquitectónica fundamental significa que los enfoques de E/S concurrente no ofrecen ventajas en dispositivos móviles.
Arquitectura de inferencia LLM y procesamiento en dos etapas
La inferencia de modelos de lenguaje funciona mediante dos etapas computacionales distintas, con características de rendimiento fundamentalmente diferentes, cada una requiriendo estrategias de optimización específicas.
Etapa de prellenado: procesamiento del prompt
La etapa de prellenado procesa toda la entrada del usuario en una sola iteración para generar el primer token. Esta carga de trabajo concentrada genera demandas computacionales sustanciales, haciendo que el tiempo hasta el primer token (TTFT) sea la métrica de rendimiento crítica. Todo el prompt actúa como entrada densa, procesada colectivamente a través de las capas transformer del modelo.
Etapa de decodificación: generación secuencial
Tras el prellenado, la etapa de decodificación genera tokens de salida secuencialmente en modo autoregresivo. Cada token generado sirve como entrada para la siguiente iteración, continuando hasta completar la secuencia o generar un token EOS. Dado que cada iteración procesa solo un token, la carga computacional es menor, pero el rendimiento se limita por el tiempo entre tokens (TBT). Esta etapa representa la experiencia del usuario respecto a la velocidad de respuesta.
Activación dispersa: la oportunidad de eficiencia
Por qué importa la dispersión
Transformers modernos como GPT-4 y Llama-2 emplean arquitecturas solo de decodificador con bloques repetidos: mecanismos de atención y redes Feed-Forward (FFN). Variantes recientes que utilizan Group Query Attention desplazan mucho la carga computacional hacia los bloques FFN, que ahora constituyen aproximadamente el 80% de los parámetros del modelo.
Los bloques FFN emplean funciones de activación de la familia ReLU que generan patrones de dispersión natural: la mayoría de las neuronas ( representadas como filas y columnas en matrices de peso ) producen contribuciones mínimas en la salida. Estas neuronas inactivas pueden ser omitidas sin afectar significativamente los resultados finales. Crear una tabla dispersa de activaciones neuronales predichas permite reducir sustancialmente el cálculo.
Optimización basada en predicciones
El estado de activación de las neuronas puede predecirse con precisión antes del cálculo del FFN. Investigaciones previas, incluyendo PowerInfer y DejaVu, demuestran que redes MLP ligeras que predicen activaciones neuronales antes de cada bloque FFN logran alta precisión. Este enfoque predictivo transforma las activaciones dispersas de una propiedad inherente en una oportunidad de optimización explotable, reduciendo cálculos necesarios y acelerando la inferencia.
Desafío de integración
La verdadera complejidad surge al combinar la explotación de activaciones dispersas con las restricciones de almacenamiento móvil. Las estructuras de tablas dispersas predictivas deben alinearse con los patrones de E/S del almacenamiento—aprovechando rangos de lectura pequeños y enfocados dentro de ventanas de 128MB para mantener el umbral de ancho de banda de 1 GB/s, minimizando la contención en la arquitectura UFS de cola única.
Implicaciones prácticas para IA en dispositivos
Los sistemas eficientes de LLM móvil deben abordar simultáneamente dos dimensiones de optimización: aprovechar patrones dispersos de neuronas mediante mecanismos predictivos, respetando las características únicas de E/S del almacenamiento móvil. La interacción entre patrones de cálculo disperso y patrones de acceso a almacenamiento determina el rendimiento en el mundo real—ninguno puede ser optimizado aisladamente sin comprometer la eficiencia general del sistema.
Equipo de investigación: Zhenliang Xue y Yixin Song (co-autores), junto con Zeyu Mi, Le Chen, Yubin Xia y Haibo Chen del Instituto de Sistemas Paralelos y Distribuidos (IPADS), Universidad Jiao Tong de Shanghái
Este análisis se basa en investigaciones académicas disponibles bajo licencia CC BY 4.0, centradas en las características de rendimiento en lectura de pesos.
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
Cuello de botella en el rendimiento de LLM móvil: comprensión de las activaciones dispersas y las limitaciones de almacenamiento
El desafío del almacenamiento en smartphones
Los smartphones modernos enfrentan una restricción fundamental al ejecutar grandes modelos de lenguaje: capacidad insuficiente de DRAM para almacenar los pesos completos del modelo. Esta limitación obliga a los sistemas a distribuir los parámetros del modelo en soluciones de almacenamiento externo como UFS 4.0, presente en los procesadores Snapdragon 8gen3. Comprender las características de rendimiento del almacenamiento móvil es crucial para optimizar la inferencia de IA en dispositivos edge.
Análisis del rendimiento de E/S de almacenamiento
Tamaño de bloque y ancho de banda de lectura
El almacenamiento móvil presenta un patrón de rendimiento contraintuitivo ligado a los tamaños de bloque de lectura. Al acceder a datos de forma secuencial o aleatoria, bloques de lectura mayores ofrecen mayor eficiencia en el ancho de banda. Un tamaño de bloque de 512KB alcanza un rendimiento máximo de 4 GB/s para lecturas secuenciales y 3.5 GB/s para lecturas aleatorias. Sin embargo, reducir el tamaño del bloque a 4KB disminuye drásticamente el rendimiento: el ancho de banda de lectura aleatoria cae a solo 450 MB/s. Esto plantea una consideración crítica en el diseño de implementaciones de tablas dispersas y estrategias de recuperación de pesos.
Efecto del rango de acceso aleatorio
Curiosamente, el alcance de las operaciones de lectura aleatoria impacta significativamente en el rendimiento. Rangos de lectura más pequeños superan consistentemente a los mayores. Al realizar lecturas aleatorias de 4KB, un rango de 128MB logra aproximadamente 1 GB/s, mientras que expandirlo a 512MB reduce el ancho de banda a menos de 850 MB/s. Esta diferencia de rendimiento se reduce con tamaños de bloque mayores, sugiriendo que los patrones de acceso a tablas dispersas deben equilibrar cuidadosamente la optimización del rango de lectura.
Dependencias del núcleo de CPU
El núcleo de procesamiento que ejecuta los comandos de E/S influye directamente en el rendimiento del almacenamiento. Los núcleos de mayor frecuencia alcanzan un mejor rendimiento en E/S. Los núcleos grandes que operan a 3.3GHz entregan 1 GB/s para lecturas aleatorias de 4KB, mientras que los núcleos pequeños a 2.2GHz solo alcanzan 760 MB/s. Esta diferencia proviene de la necesidad del controlador UFS de gestionar interrupciones y operaciones de gestión de colas: velocidades de reloj más altas permiten procesar más rápido las tareas relacionadas con E/S.
Limitación de la arquitectura de cola única
A diferencia de las soluciones NVMe, el almacenamiento UFS móvil opera con una sola cola de comandos sin capacidades inherentes de concurrencia. Utilizar múltiples núcleos para operaciones de E/S en realidad deteriora el rendimiento hasta en un 40% debido a la contención en la cola de comandos. Esta restricción arquitectónica fundamental significa que los enfoques de E/S concurrente no ofrecen ventajas en dispositivos móviles.
Arquitectura de inferencia LLM y procesamiento en dos etapas
La inferencia de modelos de lenguaje funciona mediante dos etapas computacionales distintas, con características de rendimiento fundamentalmente diferentes, cada una requiriendo estrategias de optimización específicas.
Etapa de prellenado: procesamiento del prompt
La etapa de prellenado procesa toda la entrada del usuario en una sola iteración para generar el primer token. Esta carga de trabajo concentrada genera demandas computacionales sustanciales, haciendo que el tiempo hasta el primer token (TTFT) sea la métrica de rendimiento crítica. Todo el prompt actúa como entrada densa, procesada colectivamente a través de las capas transformer del modelo.
Etapa de decodificación: generación secuencial
Tras el prellenado, la etapa de decodificación genera tokens de salida secuencialmente en modo autoregresivo. Cada token generado sirve como entrada para la siguiente iteración, continuando hasta completar la secuencia o generar un token EOS. Dado que cada iteración procesa solo un token, la carga computacional es menor, pero el rendimiento se limita por el tiempo entre tokens (TBT). Esta etapa representa la experiencia del usuario respecto a la velocidad de respuesta.
Activación dispersa: la oportunidad de eficiencia
Por qué importa la dispersión
Transformers modernos como GPT-4 y Llama-2 emplean arquitecturas solo de decodificador con bloques repetidos: mecanismos de atención y redes Feed-Forward (FFN). Variantes recientes que utilizan Group Query Attention desplazan mucho la carga computacional hacia los bloques FFN, que ahora constituyen aproximadamente el 80% de los parámetros del modelo.
Los bloques FFN emplean funciones de activación de la familia ReLU que generan patrones de dispersión natural: la mayoría de las neuronas ( representadas como filas y columnas en matrices de peso ) producen contribuciones mínimas en la salida. Estas neuronas inactivas pueden ser omitidas sin afectar significativamente los resultados finales. Crear una tabla dispersa de activaciones neuronales predichas permite reducir sustancialmente el cálculo.
Optimización basada en predicciones
El estado de activación de las neuronas puede predecirse con precisión antes del cálculo del FFN. Investigaciones previas, incluyendo PowerInfer y DejaVu, demuestran que redes MLP ligeras que predicen activaciones neuronales antes de cada bloque FFN logran alta precisión. Este enfoque predictivo transforma las activaciones dispersas de una propiedad inherente en una oportunidad de optimización explotable, reduciendo cálculos necesarios y acelerando la inferencia.
Desafío de integración
La verdadera complejidad surge al combinar la explotación de activaciones dispersas con las restricciones de almacenamiento móvil. Las estructuras de tablas dispersas predictivas deben alinearse con los patrones de E/S del almacenamiento—aprovechando rangos de lectura pequeños y enfocados dentro de ventanas de 128MB para mantener el umbral de ancho de banda de 1 GB/s, minimizando la contención en la arquitectura UFS de cola única.
Implicaciones prácticas para IA en dispositivos
Los sistemas eficientes de LLM móvil deben abordar simultáneamente dos dimensiones de optimización: aprovechar patrones dispersos de neuronas mediante mecanismos predictivos, respetando las características únicas de E/S del almacenamiento móvil. La interacción entre patrones de cálculo disperso y patrones de acceso a almacenamiento determina el rendimiento en el mundo real—ninguno puede ser optimizado aisladamente sin comprometer la eficiencia general del sistema.
Equipo de investigación: Zhenliang Xue y Yixin Song (co-autores), junto con Zeyu Mi, Le Chen, Yubin Xia y Haibo Chen del Instituto de Sistemas Paralelos y Distribuidos (IPADS), Universidad Jiao Tong de Shanghái
Este análisis se basa en investigaciones académicas disponibles bajo licencia CC BY 4.0, centradas en las características de rendimiento en lectura de pesos.