Calculadora de rendimiento de inferencia
Datos de entrada
| Parámetros | 70 |
|---|---|
| Precisión de los pesos | 16 bits (2 bytes) |
| Ancho de banda de memoria | 3.350 |
Calculadora de rendimiento de inferencia
Estima el límite que impone el ancho de banda de memoria a la velocidad de decodificación de un LLM a partir del tamaño del modelo, la precisión de los pesos y el ancho de banda de memoria del acelerador: el techo (roofline) de tokens por segundo de un único flujo.
Datos de entrada
Modelo
Hardware
Resultados
Introduce un valor para ver los resultados.
Detalles
Rendimiento de inferencia
El rendimiento de inferencia es la cantidad de tokens que un modelo de lenguaje puede generar por segundo. Para una única solicitud, el techo no lo fija la potencia aritmética bruta del acelerador, sino la rapidez con la que este puede leer los pesos del modelo de memoria. Esta calculadora convierte el tamaño del modelo, la precisión de los pesos y el ancho de banda de memoria del hardware en ese techo: el roofline de tokens por segundo de un flujo de decodificación.
Por qué la decodificación está limitada por la memoria
Generar texto de forma autorregresiva significa producir un token y luego realimentarlo para producir el siguiente. Cada uno de esos pasos debe leer todos los pesos del modelo para calcular un único token nuevo. Con un tamaño de lote de uno, el acelerador realiza muy poca aritmética por cada byte que carga, de modo que pasa casi todo el tiempo moviendo pesos en lugar de multiplicando. La tasa de tokens la rige, por tanto, el ancho de banda de memoria. (El prellenado del prompt es lo contrario: procesa todos los tokens del prompt juntos y está limitado por el cómputo.)
La fórmula
Primero se halla cuánta memoria ocupan los pesos y luego se divide el ancho de banda disponible entre ella:
Mv=N×b=MBWAquí es el recuento de parámetros en miles de millones, son los bytes almacenados por parámetro, es el tamaño del modelo en gigabytes, es el ancho de banda de memoria en gigabytes por segundo y es el límite de rendimiento en tokens por segundo. Como mil millones de bytes equivalen a aproximadamente un gigabyte, introducir los parámetros en miles de millones hace que el tamaño quede directamente en gigabytes. La precisión de los pesos es de 2 bytes para pesos de 16 bits, 1 byte para 8 bits y medio byte para 4 bits.
Ejemplo resuelto
Tómese un modelo de 70 mil millones de parámetros con precisión de 16 bits servido en un acelerador con 3.350 GB/s de ancho de banda de memoria:
Mv=70×2=140 GB=1403350≈23.9 tokens/sAsí, un único flujo se sitúa cerca de 24 tokens por segundo como máximo. Cuantizar el mismo modelo a 4 bits lo reduce a 35 GB y eleva el techo a unos 96 tokens por segundo: una ganancia de cuatro veces que refleja la reducción de cuatro veces en los bytes leídos por token.
Interpretación del resultado
La cifra es una cota superior, no una promesa. Solo contabiliza el tráfico de transmitir los pesos; la caché de claves y valores, el cálculo de la atención y la sobrecarga de los kernels merman esa cifra, de modo que un flujo único real suele alcanzar entre la mitad y tres cuartas partes del techo. Servir muchas solicitudes en un lote lee los pesos una sola vez para todo el grupo, lo que empuja el rendimiento agregado muy por encima de la cifra de un único flujo; véase la Calculadora de rendimiento de inferencia por lotes. Para convertir una tasa de tokens en una espera percibida por el usuario, combínese con la Calculadora de latencia de inferencia, y para evaluar lo bien que se aprovecha el cómputo del hardware, véase la Calculadora de aprovechamiento de FLOPs del modelo.
Preguntas frecuentes (FAQ)
¿Por qué limita el ancho de banda de memoria la decodificación en lugar del cómputo?
Durante la decodificación autorregresiva el modelo genera un token cada vez, y cada paso debe leer todos los pesos de memoria para calcular el siguiente token. Con un tamaño de lote de uno hay muy poca aritmética por byte cargado, de modo que el acelerador pasa la mayor parte del tiempo moviendo pesos en lugar de multiplicando.
La tasa de tokens la determina, por tanto, la velocidad a la que se puede leer la memoria, no el rendimiento máximo en coma flotante. El prellenado, que procesa todo el prompt a la vez, es lo contrario: está limitado por el cómputo.
¿Alcanzará un servidor realmente esta cifra?
No. La cifra es una cota superior limpia que supone que el único tráfico de memoria son los pesos. En la práctica, la caché de claves y valores, el cálculo de la atención, la sobrecarga de lanzamiento de kernels y una utilización de memoria imperfecta restan, de modo que un único flujo suele alcanzar entre la mitad y tres cuartas partes del techo.
Agrupar muchas solicitudes a la vez eleva el rendimiento agregado muy por encima del límite de un único flujo, porque los pesos se leen una sola vez para todo el lote.
¿Cuánto eleva el rendimiento la cuantización?
El rendimiento escala de forma inversa al tamaño del modelo, así que reducir a la mitad los bytes por parámetro duplica aproximadamente la cota. Pasar pesos de 16 bits a 8 bits reduce a la mitad los bytes leídos por token, y 4 bits los reduce de nuevo a la mitad. La cuantización puede disminuir la calidad de salida, de modo que la ganancia de velocidad se sopesa frente a cualquier pérdida de precisión para la tarea concreta.
Aviso legal
Se trata de un techo (roofline) de primer orden que solo contabiliza el tráfico de memoria de los pesos y supone una decodificación de un único flujo. El rendimiento real depende de la pila de servicio, el tamaño de lote, la longitud de secuencia y la caché de claves y valores, y suele ser una fracción de la cota. Conviene medir en el hardware de destino antes de comprometer un plan de capacidad.
Recomendaciones
Calculadora de latencia de inferencia
Estima el tiempo de respuesta de extremo a extremo de una generación en streaming de un LLM a partir del tiempo hasta el primer token, el tiempo por token de salida y el número de tokens de salida.
Calculadora de aprovechamiento de FLOPs del modelo
Calcula el aprovechamiento de FLOPs del modelo (MFU): la fracción del rendimiento máximo en coma flotante de un acelerador que una ejecución alcanza realmente, a partir del número de parámetros, el rendimiento en tokens y los TFLOP/s máximos.