Los equipos técnicos que gestionan cargas de trabajo de inteligencia artificial en la plataforma Kubernetes enfrentan presiones constantes a medida que los clústeres de unidades de procesamiento gráfico (GPU) se llenan y las colas de trabajos por lotes aumentan. Ampliar la infraestructura de GPU suele ser la opción más rápida, pero el crecimiento de las colas de espera puede reflejar deficiencias en la programación, la capacidad de servicio del modelo o la eficiencia en la selección entre hardware y diferentes modelos. Antes de tomar la decisión de comprar y aprovisionar más recursos, los equipos deben definir métricas de éxito, plazos y el costo real de entregar resultados.
Distinción entre utilización y productividad real
El desafío no se limita simplemente a ejecutar recursos, ya que una GPU asignada, una GPU ocupada y una unidad de trabajo que produce resultados valiosos son conceptos completamente diferentes. Comprender la relación entre estos estados permite a los equipos aprovechar la capacidad actual de manera más efectiva.
- Definición de plazos: Algunos servicios, como los chatbots, requieren un servicio de respuesta continuo las 24 horas, mientras que las tareas de evaluación de modelos están vinculadas a fechas de lanzamiento internas específicas.
- Objetivos de calidad: Cada servicio de inferencia debe tener un umbral de calidad definido y un objetivo de tiempo de respuesta, ya que obtener una respuesta completa no significa necesariamente alcanzar el objetivo requerido por el cliente.
Uso de la programación flexible para reducir la demanda máxima
La flexibilidad en la programación ayuda a aliviar las restricciones sin necesidad de ampliar la infraestructura de inmediato. Por ejemplo, si hay cuatro unidades de GPU disponibles para tareas por lotes durante un período determinado y hay cuatro tareas que requieren dos unidades cada una, ejecutarlas todas a la vez requeriría ocho unidades; mientras que superponer los plazos y programar dos tareas primero y luego las dos restantes permite completar el trabajo en el plazo previsto utilizando los mismos recursos disponibles.
Los equipos se benefician de herramientas como Kueue para proporcionar puntos de control de admisión y políticas, siempre que los plazos y requisitos se definan y representen con precisión para evitar la necesidad de iniciar tareas prematuramente y detenerlas más tarde.
Medición de la capacidad de servicio sostenible y pruebas de rendimiento
El aumento en la actividad de las GPU no refleja el volumen de productividad adicional disponible. Por lo tanto, medir la capacidad sostenible requiere realizar una prueba de carga representativa manteniendo el hardware y la configuración del servicio constantes, mientras se varía la tasa de demanda para alcanzar la tasa sostenible más alta que mantenga los requisitos de calidad y los niveles de latencia aceptables.
También requiere vincular los datos de costos derivados de herramientas como OpenCost con los resultados y servicios reales, calculando el costo por resultado logrado y verificado, para llegar a un modelo operativo que logre el equilibrio deseado entre costo y eficiencia.
¿Qué cambia este enfoque en la práctica?
El enfoque de los equipos cambia de simplemente rastrear las tasas de consumo de hardware a evaluar la eficiencia del gasto vinculado a resultados comerciales reales. Este cambio ayuda a evitar inversiones de capital innecesarias en hardware adicional y fomenta la mejora de la eficiencia de los modelos y la configuración de la programación antes de solicitar más recursos.