On-Device NPU Bottleneck Calculator
Compara el Compute-bound throughput y por memoria de una carga de inferencia en una NPU en el dispositivo. La tasa menor es el recurso limitante según los supuestos que indiques; no es un benchmark de un dispositivo concreto.
Resultado
Recurso limitante estimado
Rendimiento máximo estimado
Compute-bound throughput
Memory-bound throughput
Tiempo por inferencia al límite de rendimiento
Cómo usar esta herramienta
- Indica los TOPS máximos de la NPU y la eficiencia de cómputo medida para la precisión numérica y la carga del modelo.
- Introduce las operaciones por inferencia en TOP y el ancho de banda de memoria sostenido medido en GB/s.
- Indica el tráfico total de memoria por inferencia en MB y la eficiencia de memoria medida.
- Compara las tasas limitadas por cómputo y memoria; la menor es el límite de rendimiento de este modelo sencillo.
Supuestos
- TOPS, operaciones por inferencia y eficiencias medidas deben usar tipos de operación y precisiones compatibles (por ejemplo, INT8 frente a FP16).
- El tráfico de memoria es una estimación del usuario y debe tener en cuenta pesos, activaciones, reutilización de caché y batching según corresponda; la calculadora no lo deduce del archivo del modelo.
- La estimación modela un único cuello de botella simplificado en estado estable. Excluye descarga a CPU/GPU, colas, latencia por lotes, limitación térmica, sobrecarga de lanzamiento de kernels y planificación específica del dispositivo.
Detalles técnicos: qué significan los campos
- Cómputo máximo de la NPU
npuPeakTops - Rendimiento máximo declarado o medido de la NPU en TOPS; la precisión de las operaciones debe coincidir con operationsPerInferenceTops.
- Eficiencia de cómputo medida
computeEfficiencyPercent - Fracción porcentual del rendimiento máximo de cómputo que alcanza esta carga, medida en condiciones representativas.
- Operaciones del modelo por inferencia
operationsPerInferenceTops - Operaciones del modelo necesarias para una inferencia, expresadas en TOP (10^12 operaciones).
- Ancho de banda de memoria sostenido
memoryBandwidthGbPerSecond - Ancho de banda de memoria sostenido disponible para la NPU, en GB/s decimales (1 GB = 1.000 MB).
- Eficiencia de memoria medida
memoryEfficiencyPercent - Fracción porcentual del ancho de banda de memoria sostenido que alcanza esta carga, medida en condiciones representativas.
- Tráfico de memoria por inferencia
memoryTrafficMbPerInference - Tráfico total de pesos y activaciones transferido hacia o desde memoria por inferencia, en MB decimales; no introduzcas el tamaño del archivo del modelo salvo que todos esos bytes se transfieran en cada inferencia.
Metodología
Tasa limitada por cómputo = TOPS máximos de NPU × eficiencia de cómputo ÷ TOP del modelo por inferencia. Tasa limitada por memoria = GB/s de memoria × 1.000 MB/GB × eficiencia de memoria ÷ MB transferidos por inferencia. El rendimiento estimado es la menor de ambas tasas; el tiempo por inferencia al límite es 1.000 ms ÷ esa tasa.
Ejemplo resuelto
NPU de 45 TOPS y 150 MB de tráfico de memoria por inferencia
Datos de entrada: Cómputo máximo de la NPU: 45 TOPS, Eficiencia de cómputo medida: 60%, Operaciones del modelo por inferencia: 0.9 TOP, Ancho de banda de memoria sostenido: 68 GB/s, Eficiencia de memoria medida: 70%, Tráfico de memoria por inferencia: 150 MB
Resultado: La tasa limitada por cómputo es 30,0 inferencias/s; la limitada por memoria, aproximadamente 317,3 inferencias/s. El modelo sencillo queda limitado por cómputo a unos 30,0 inferencias/s (33,3 ms por inferencia limitados por cómputo).
Orientación práctica
- Usa ancho de banda sostenido y tráfico del modelo medidos, no solo los valores máximos teóricos de la NPU; la reutilización de caché y el tiling pueden cambiar mucho el tráfico.
- Valida ambas tasas con un benchmark del dispositivo al tamaño de lote, precisión, estado térmico y objetivo de latencia previstos.
Errores comunes
- Comparar TOPS INT8 de la NPU con un recuento de operaciones FP16 sin convertirlos a una base compatible.
- Usar el tamaño del archivo de pesos como tráfico de memoria por inferencia aunque los pesos se reutilicen desde la caché.
Preguntas frecuentes
¿Qué significa Compute-bound?
La tasa de cómputo modelada es inferior a la tasa limitada por memoria para los valores introducidos. No demuestra que el dispositivo físico carezca de otros cuellos de botella.
¿El resultado predice la latencia real?
No. Proporciona un límite sencillo de rendimiento y un tiempo estimado limitado por cómputo; la latencia real depende del batching, los kernels, el trabajo de CPU/GPU, la reutilización de memoria, la temperatura y la planificación del runtime.
Última revisión: 2026-10-18
Es solo un modelo aritmético de dos recursos. No mide un dispositivo, inspecciona el grafo del modelo, tiene en cuenta fallback a CPU/GPU ni predice latencia de cola o consumo energético.
Esta herramienta ofrece una estimación orientativa basada en los supuestos indicados arriba.
Las preferencias de tema y de herramientas, junto con las listas de herramientas guardadas y recientes, se almacenan solo en este navegador.