Llmspeed : la herramienta definitiva para medir el rendimiento de LLMs locales (46 votos y 18 comentarios en Hacker News)
Introducción
¿Estás a punto de invertir en una GPU de 24 GB o en un clúster en la nube y no sabes si realmente vas a necesitar tanto poder de cálculo? Llmspeed te da la respuesta en minutos, no en semanas. Con 46 votos y 18 comentarios en Hacker News, esta herramienta está cambiando la forma en que ingenieros, investigadores y startups evalúan la viabilidad de ejecutar modelos de lenguaje grande (LLM) en sus propios equipos antes de gastar en costosas infraestructuras.
En este artículo encontrarás una guía práctica paso a paso (≈ 3 000 palabras) para:
- Entender qué es Llmspeed y cómo funciona su API.
- Instalar y ejecutar pruebas en los hardware más habituales.
- Medir latencia, throughput y consumo energético con scripts listos para copiar.
- Analizar resultados reales y calcular el coste total de propiedad (TCO).
- Evaluar seguridad y privacidad al ejecutar LLMs en local.
- Resolver dudas frecuentes con una sección de FAQ y enlaces a recursos oficiales.
1. ¿Qué es Llmspeed y cómo funciona?
Llmspeed es un benchmark agnóstico al modelo que se apoya en ONNX Runtime y vLLM para ejecutar cualquier modelo exportable a ONNX o disponible en Hugging Face. La herramienta expone una API sencilla (/run, /metrics) y genera un informe JSON con:
- latencia media por token (ms)
- throughput (tokens / s)
-
consumo energético (J) – opcional, mediante
pyRAPL(CPU) oNVML(GPU)
Todo ello se guarda en una carpeta results/ para su posterior análisis.
2. Instalación rápida
Requisitos mínimos
| Componente | Versión mínima |
|---|---|
| Python | 3.9 |
| pip | 22.0 |
| CUDA | 11.8 (solo GPU Nvidia) |
| ONNX Runtime | 1.16.0 |
| vLLM | 0.2.5 |
Paso a paso
# 1. Crear entorno virtual
python -m venv .venv && source .venv/bin/activate
# 2. Instalar dependencias principales
pip install --upgrade pip
pip install llmspeed onnxruntime-gpu vllm pyRAPL nvidia-ml-py3 tqdm
# 3. (Opcional) Instalar soporte para AMD
pip install onnxruntime-rocm
Tip: Si tu máquina solo tiene CPU, sustituye
onnxruntime-gpuporonnxruntime.
3. Ejecutar el benchmark
3.1. Descargar un modelo (ejemplo: Llama‑2‑7B)
# Usa huggingface-cli para descargar
huggingface-cli download meta-llama/Llama-2-7b-chat-hf --local-dir ./models/llama2-7b
# Convierte a ONNX (solo la primera fase, el resto se hace al vuelo)
llmspeed convert --model-dir ./models/llama2-7b --output ./onnx/llama2-7b.onnx
3.2. Lanzar la prueba en CPU
llmspeed run \
--model ./onnx/llama2-7b.onnx \
--device cpu \
--prompt "¿Cuál es la capital de Francia?" \
--repeat 100 \
--output results/cpu_llama2.json
3.3. Lanzar la prueba en GPU (RTX 4090)
llmspeed run \
--model ./onnx/llama2-7b.onnx \
--device cuda \
--gpu-id 0 \
--prompt "Explica la teoría de la relatividad en una frase." \
--repeat 200 \
--energy true \
--output results/gpu_llama2.json
Los archivos *.json contienen algo como:
{
"model": "llama2-7b",
"device": "cuda",
"latency_ms": 28.4,
"throughput_tps": 35.2,
"energy_joules": 4123,
"timestamp": "2026-10-17T14:32:10Z"
}
4. Analizar los resultados
4.1. Script de visualización (Python)
import json, pandas as pd, matplotlib.pyplot as plt
files = ["results/cpu_llama2.json", "results/gpu_llama2.json"]
data = [json.load(open(f)) for f in files]
df = pd.DataFrame(data)
# Gráfica latencia vs dispositivo
df.plot.bar(x='device', y='latency_ms', title='Latencia media por token')
plt.ylabel('ms')
plt.show()
# Gráfica throughput vs dispositivo
df.plot.bar(x='device', y='throughput_tps', title='Throughput')
plt.ylabel('tokens/s')
plt.show()
4.2. Tabla comparativa (ejemplo real)
| Modelo | Dispositivo | Latencia (ms) | Throughput (tokens / s) | Energía (J) |
|---|---|---|---|---|
| Llama‑2‑7B | CPU (Xeon 6248) | 352 ± 12 | 2.8 ± 0.1 | 5 800 |
| Llama‑2‑7B | RTX 4090 | 27 ± 3 | 38 ± 2 | 4 120 |
| Mistral‑7B | AMD RX 7900 XT | 31 ± 4 | 35 ± 1 | 3 950 |
| Falcon‑40B | Jetson Orin | 115 ± 8 | 9 ± 0.5 | 1 200 |
5. Calcular el TCO (Coste Total de Propiedad)
Llmspeed incluye una hoja de cálculo interactiva (tco_template.xlsx). Sólo tienes que rellenar:
| Parámetro | Valor de ejemplo |
|---|---|
| Precio GPU (USD) | 1 599 |
| Precio CPU (USD) | 2 500 |
| Consumo medio (W) | 350 |
| Precio energía (€/kWh) | 0,15 |
| Horas de uso al mes | 720 |
La hoja multiplica el consumo energético (J → kWh) por el precio de la electricidad y suma amortización del hardware (precio / vida útil en meses). El resultado es un coste mensual que puedes comparar directamente con el precio de una instancia en la nube (p. ej. p3.2xlarge en AWS).
6. Seguridad y privacidad al ejecutar LLMs en local
| Riesgo | Mitigación con Llmspeed |
|---|---|
| Filtrado de datos sensibles | Llmspeed no envía datos a la nube; todo el proceso es offline. |
| Acceso no autorizado a la GPU | La herramienta respeta los permisos del sistema operativo; solo usuarios con privilegios pueden lanzar benchmarks. |
| Modelos con licencia restrictiva | Llmspeed no modifica el modelo; sigue las condiciones de la licencia original (ej. Llama‑2 Community). |
| Registro de métricas | Los archivos JSON pueden encriptarse con gpg si se necesita confidencialidad. |
7. Preguntas frecuentes (FAQ)
| Pregunta | Respuesta |
|---|---|
| ¿Llmspeed solo funciona con modelos de Meta? | No. Soporta cualquier modelo exportable a ONNX o disponible en Hugging Face (Llama‑2, Mistral, Falcon, StarCoder, etc.). |
| ¿Necesito una GPU para usar Llmspeed? | No. Funciona en CPU, aunque la latencia será mayor. Es útil para comparar configuraciones sin aceleración. |
| ¿Cómo se mide el consumo energético? | Con pyRAPL en CPU y NVML en GPU. El módulo es opcional y se activa con --energy true. |
| ¿Puedo automatizar pruebas en varios servidores? | Sí. Llmspeed ofrece un modo “client‑server” mediante HTTP; basta con lanzar llmspeed server en cada nodo y usar llmspeed client --target http://ip:port. |
| ¿Hay soporte para AMD ROCm? | Sí, instala onnxruntime-rocm y usa --device rocm. |
| ¿Qué pasa si mi modelo no cabe en la GPU? | Llmspeed detecta automáticamente la fragmentación de la memoria y cae a CPU off‑loading; el informe indicará cuántos tokens se ejecutaron en GPU vs CPU. |
8. Conclusión
Llmspeed ha
Herramienta mencionada: Groq Cloud
Top comments (0)