Estimador de GPU necesarias para RAG

Este estimador aproxima cuántas GPU hacen falta para sostener una carga RAG cuando se conoce la tasa de solicitudes, el tiempo efectivo de GPU consumido por cada tarea y el nivel máximo de utilización que se desea mantener. El enfoque traduce la demanda agregada de cómputo en “segundos de GPU por segundo” y la reparte entre dispositivos.

Resulta útil para una primera planificación de inferencia, especialmente al comparar modelos, tamaños de lote o rutas con distinto coste de generación. El cálculo no presupone un modelo concreto ni una GPU específica: debes medir o estimar el tiempo de GPU por tarea en tu configuración. La memoria VRAM y la posibilidad de alojar el modelo siguen siendo restricciones independientes.

Datos de entrada

req/s
s
%
Resultado
GPU necesarias (redondeo hacia arriba)
Demanda de GPU
Capacidad útil por GPU
GPU teóricas antes de redondear

1. Indica la carga sostenida
Introduce las solicitudes por segundo que esperas atender durante el periodo de diseño.

2. Mide el tiempo de GPU por tarea
Usa una medición representativa que incluya el trabajo de inferencia atribuido a cada solicitud RAG.

3. Fija una utilización objetivo
Reserva holgura para variabilidad y picos evitando diseñar al 100 % de ocupación sostenida.

4. Revisa el redondeo
El resultado principal redondea hacia arriba porque no se puede desplegar una fracción de GPU física.

Demanda de GPU = solicitudes/s × segundos de GPU por solicitud GPU teóricas = demanda de GPU / (utilización objetivo / 100) GPU necesarias = redondear hacia arriba(GPU teóricas)

La fórmula representa capacidad de cómputo, no memoria. Supone que la carga puede repartirse entre GPU equivalentes con una eficiencia razonable.

Qué significa el resultado

El resultado indica el número mínimo teórico de GPU equivalentes para cubrir la demanda bajo la utilización objetivo elegida.

Comprueba por separado VRAM, replicación del modelo, paralelismo tensorial, límites de batch y sobrecarga de comunicación.

Datos: 12 solicitudes/s, 0,35 s de GPU por solicitud y una utilización objetivo del 75 %.

Cálculo: demanda = 12 × 0,35 = 4,20 GPU-s/s. GPU teóricas = 4,20 / 0,75 = 5,60.

Resultado: se redondea hacia arriba a 6 GPU.

¿El tiempo de GPU incluye la búsqueda vectorial?

Solo si esa búsqueda se ejecuta realmente en la misma GPU y está incluida en tu medición. Si ocurre en otro servicio, mide el consumo del tramo que deseas dimensionar.

¿Por qué se usa una utilización inferior al 100 %?

Porque una carga real fluctúa y necesita margen para colas, variación en longitud de respuesta y otras tareas. Diseñar al 100 % deja poca capacidad para absorber picos.

¿Este número garantiza que el modelo cabe en memoria?

No. El cálculo estima capacidad de procesamiento; la VRAM necesaria para pesos, KV cache, contexto y batching debe verificarse aparte.

¿Qué pasa si uso GPU de distintos tipos?

Conviene convertir la medición a cada tipo de GPU o usar una unidad de capacidad normalizada. Mezclar dispositivos con rendimientos muy distintos rompe la suposición de equivalencia.

¿Puedo usar tokens por segundo en lugar de tiempo por solicitud?

Sí, pero primero debes transformar esa tasa en una estimación de segundos de GPU por solicitud según los tokens procesados y generados en tu carga.