En esta página, se describen las técnicas disponibles que puedes usar para obtener aceleradores de procesamiento, como GPUs o TPUs, según los requisitos de tus cargas de trabajo de IA/AA. Estas técnicas se denominan opciones de consumo de aceleradores en GKE. Comprender las diferentes opciones de consumo te ayuda a optimizar el uso de los recursos para evitar su subutilización, aumentar la probabilidad de obtener recursos y equilibrar el costo y el rendimiento.
Esta página está dirigida a los administradores y operadores de plataformas que se coordinan con los ingenieros de aprendizaje automático (AA) para obtener los recursos necesarios para implementar correctamente las cargas de trabajo de IA/AA.
Para obtener más información sobre los roles comunes y las tareas de ejemplo a las que hacemos referencia en el contenido de Google Cloud , consulta Roles y tareas comunes del usuario de GKE.
Comprende las opciones de consumo
Puedes seleccionar entre las siguientes opciones para usar aceleradores en GKE:
- A pedido: Consumes TPU o GPU en GKE sin organizar la capacidad con anticipación. Antes de solicitar recursos, debes tener suficiente cuota a pedido para el tipo y la cantidad específicos de aceleradores. La opción a pedido es la opción de consumo más flexible; sin embargo, no hay garantía de que haya suficientes recursos a pedido disponibles para satisfacer tu solicitud.
- Reservas: Reservas recursos por un período determinado. Una reserva puede ser cualquiera de las siguientes opciones:
- Reservas futuras: Reservas recursos por períodos más largos para un momento específico en el futuro. Tienes acceso exclusivo a los recursos reservados durante ese período. Las reservas futuras requieren la participación de un administrador técnico de cuentas (TAM). Para obtener más información, consulta la guía sobre TPU y GPU.
- Reservas futuras de hasta 90 días (en modo de calendario): Solicitas capacidad para un período específico, con un asesor de calendario que sugiere las fechas disponibles. Las reservas futuras de hasta 90 días (en modo de calendario) ofrecen más flexibilidad para duraciones más cortas y búsqueda de capacidad de autoservicio. Para obtener más información, consulta Solicitudes de reservas futuras en el modo de calendario.
- Reservas según demanda: Puedes solicitar que se aprovisione una reserva según demanda en cuanto la capacidad esté disponible, de manera similar a la opción según demanda. Mientras la reserva esté activa, pagarás por los recursos, ya sea que los uses o no.
- Inicio flexible: Aseguras recursos asignados de forma densa para cargas de trabajo de corta duración sin una reserva. Solicitas una cantidad específica de GPUs o TPUs, y Compute Engine las aprovisiona cuando hay capacidad disponible. Las GPU o TPU se ejecutan sin interrupciones durante un máximo de siete días. Para obtener más información, consulta aprovisionamiento de inicio flexible.
- Spot: Aprovisionas VMs Spot, lo que te permite obtener descuentos significativos, pero las VMs Spot se pueden interrumpir en cualquier momento, con una advertencia de 30 segundos. Para obtener más información, consulta VMs Spot.
Para optimizar el éxito del aprovisionamiento en condiciones de restricciones de recursos de procesamiento, puedes orquestar estas opciones con ComputeClasses.
Información sobre la cuota de aceleradores en GKE
Las cuotas y los límites del sistema restringen el uso de los recursos de Google Cloud para garantizar la disponibilidad de recursos para todos los usuarios de Google Cloud . Las cuotas tienen valores predeterminados, pero, por lo general, puedes solicitar ajustes. Los límites del sistema son valores fijos que no se pueden cambiar. De forma predeterminada, los proyectos no suelen incluir una cuota de aceleradores significativa. Debes solicitar y recibir la aprobación de la cuota para tipos de aceleradores y regiones específicos.
Ten en cuenta las siguientes características cuando administres las cuotas que necesitan tus cargas de trabajo:
Debes solicitar la cuota necesaria para cada opción de consumo. Para identificar la cuota requerida para cada opción de consumo, consulta los parámetros de "Cuota" correspondientes que se indican en la tabla elige una opción de consumo. Si no hay suficiente cuota, los intentos de crear clústeres, grupos de nodos o implementar cargas de trabajo que requieran aceleradores fallarán con un error
Quota exceeded.Debes solicitar una cuota cuando uses ComputeClasses personalizadas en Autopilot. Los nodos aprovisionados para cumplir con los requisitos de ComputeClass siguen consumiendo la cuota de tu proyecto para los aceleradores especificados.
Google Cloud Las cuentas de prueba gratuita tienen limitaciones para solicitar aumentos de cuota para recursos valiosos, como las GPU y las TPU. Para acceder a la cuota del acelerador, actualiza a una cuenta pagada.
Para verificar y solicitar cuota, ve a la página Cuotas en la consola de Google Cloud . Puedes filtrar por cuotas de aceleradores y solicitar aumentos.
Identifica una opción de consumo
Usa las siguientes consideraciones para elegir la mejor opción de consumo para tu carga de trabajo de IA/AA:
- Tipo de carga de trabajo: Ten en cuenta el tipo de carga de trabajo que deseas implementar.
Los requisitos de GKE varían si ejecutas una carga de trabajo de entrenamiento o de
inferencia:
- Entrenamiento: Requiere recursos de alto rendimiento con una memoria significativa. Las cargas de trabajo de entrenamiento suelen tener una vida útil bien definida. Por lo general, estas cargas de trabajo son más fáciles de planificar porque son menos propensas a picos repentinos en el consumo de recursos.
- Inferencia: Por lo general, requiere aceleradores optimizados para la escalabilidad y un menor costo. Las cargas de trabajo de inferencia pueden requerir una cantidad significativa de memoria del acelerador durante los aumentos repentinos en el consumo de recursos.
- Duración según la fase de implementación: Ten en cuenta tu objetivo comercial si ejecutas una prueba de concepto (POC), una evaluación de la plataforma, el desarrollo o las pruebas de la aplicación, la producción o la optimización.
- Tiempo de aprovisionamiento: Determina si tu carga de trabajo requiere una ejecución inmediata o si se puede ejecutar en el futuro. Si es posible la ejecución futura, determina qué tan flexible puede ser la hora de inicio.
- Equilibrio entre costo y rendimiento: Evalúa los requisitos de rendimiento de tu carga de trabajo y las restricciones de presupuesto para seleccionar el acelerador más rentable. Considera la compensación entre el costo de los aceleradores y sus características de rendimiento. Recuerda que los nuevos aceleradores pueden mejorar las relaciones costo-rendimiento.
Elige una opción de consumo
Usa la siguiente tabla para elegir una opción de consumo:
| Opción de consumo | Parámetros de aprovisionamiento | Aceleradores compatibles | Detalles | Ejemplos de cargas de trabajo |
|---|---|---|---|---|
| Reservas según demanda |
|
|
|
|
| Reservas futuras |
|
|
|
|
| Reservas futuras de hasta 90 días (en modo de calendario) |
|
|
|
|
| Modo de aprovisionamiento de inicio flexible |
|
|
|
|
| VMs Spot |
|
|
|
|
| A pedido (GPUs o TPUs) |
|
|
|
Optimiza el costo y el aprovisionamiento de cargas de trabajo con ComputeClasses
Puedes usar ComputeClasses para administrar y automatizar de forma dinámica tu estrategia de consumo de aceleradores definiendo una lista de configuraciones de resguardo basada en prioridades. Durante las operaciones de escalamiento vertical, GKE intenta aprovisionar nodos según la jerarquía de prioridades que establezcas.
En la siguiente lista, se describen las opciones de consumo disponibles con ComputeClasses y cómo configurarlas. Para ver manifiestos de YAML completos, consulta Ejemplos de opciones de consumo con ComputeClasses.
- Reservas: Puedes definir el nombre de la reserva en el campo
reservationsde tu ComputeClass. Esto garantiza que GKE primero intente consumir tu capacidad reservada antes de volver a la capacidad predeterminada. - Modo de aprovisionamiento de inicio flexible: Habilita la cola flexible con el campo
flexStarten tu ComputeClass y configura las duraciones de reemplazo de nodos de respaldo con los camposnodeRecycling. - VMs Spot: Indica a GKE que use VMs Spot cuando
aprovisione nodos para esa regla de prioridad configurando el campo
spotentrue. - Capacidad a pedido combinada con una política de ubicación multizonal: Declara las configuraciones de máquinas estándar en la lista de prioridades y configura una estrategia de ubicación de respaldo con los campos
location.
Las ComputeClasses no admiten reservas futuras ni reservas futuras de hasta 90 días (en modo de calendario).
Ejemplos de opciones de consumo con ComputeClasses
En las siguientes secciones, se proporcionan ejemplos de configuración para estas estrategias.
Reservas con configuración de resguardo
Esta configuración funciona mejor para las cargas de trabajo que pueden tolerar interrupciones, en lugar de las cargas de trabajo que dependen de datos persistentes o que deben ejecutarse hasta completarse.
Esta configuración establece una estrategia de resguardo resiliente con los siguientes pasos:
- Consumir reservas primero: GKE intenta aprovisionar nodos con tu reserva de capacidad específica comprada anticipadamente.
- Recurrir a inicio flexible: Si la capacidad de la reserva se utiliza por completo, GKE recurre a recursos de inicio flexible con descuento y de corta duración.
- Recurrir a la opción On-demand: Como último recurso, GKE aprovisiona recursos estándar según demanda.
Migra de vuelta a las reservas: Habilitar la migración activa le indica a GKE que consolide y migre automáticamente las cargas de trabajo de vuelta a los nodos de reserva con mayor prioridad en cuanto haya capacidad disponible. Esta migración puede ser perjudicial.
apiVersion: cloud.google.com/v1 kind: ComputeClass metadata: name: ha-gpu-fallback spec: activeMigration: optimizeRulePriority: true # Migrate workloads back to reservation when capacity releases priorities: # Priority 1: Consume specific corporate reservation first - gpu: type: nvidia-l4 count: 1 reservations: affinity: Specific specific: - name: reserved-l4-pool project: my-project zones: [us-central1-a] # Priority 2: Fallback to Flex Start (short-duration allocation) - gpu: type: nvidia-l4 count: 1 flexStart: enabled: true # Priority 3: Fallback to On-demand resources - gpu: type: nvidia-l4 count: 1
Modo de aprovisionamiento de inicio flexible con configuración de reciclaje de nodos
Esta configuración administra la capacidad con descuento y de corta duración con un tiempo de actividad continuo siguiendo estos pasos:
- Solicita VMs de inicio flexible: GKE solicita instancias de VM desde la cola de inicio flexible (que se ejecutan sin interrupciones durante un máximo de siete días).
- Supervisa el vencimiento del arrendamiento: GKE hace un seguimiento de la duración restante de los nodos de inicio flexible activos.
- Activa el reciclaje de nodos: Veinte minutos (1,200 segundos) antes de que venza el arrendamiento de la VM, GKE aprovisiona automáticamente un nodo de reemplazo.
Reprograma las cargas de trabajo: Las cargas de trabajo se migran al nodo nuevo y se reanuda la ejecución sin interrupciones del servicio.
apiVersion: cloud.google.com/v1 kind: ComputeClass metadata: name: flex-node-recycling spec: priorities: - gpu: type: nvidia-l4 count: 1 flexStart: enabled: true nodeRecycling: leadTimeSeconds: 1200 # Automatically launch replacement node before VM lease expires
Configuración de la política de asignación multizona
Esta configuración omite las restricciones de suministro de una sola zona con los siguientes pasos:
- Define zonas de destino: Enumera varias zonas de copia de seguridad (como
us-central1-a,us-central1-byus-central1-c) en las reglas de prioridad. - Amplía los parámetros de segmentación: Establece la política de ubicación en
ANY. Este parámetro de configuración indica al escalador automático del clúster que busque la capacidad solicitada en todas las zonas especificadas. - Analiza la disponibilidad zonal: Durante los eventos de escalado vertical, GKE analiza las zonas designadas.
Aprovisionamiento en zonas disponibles: GKE aprovisiona de inmediato los nodos de carga de trabajo solicitados en la zona de destino que tenga capacidad coincidente. Esta estrategia evita los bloqueos en las filas de asignación.
apiVersion: cloud.google.com/v1 kind: ComputeClass metadata: name: broad-zonal-serving spec: priorities: - gpu: type: nvidia-l4 count: 1 location: zones: [us-central1-a, us-central1-b, us-central1-c] locationPolicy: ANY # Provision accelerator in any target zone with supply
¿Qué sigue?
- Obtén más información sobre las GPUs en GKE.
- Obtén más información sobre las TPU en GKE.
- Obtén más información sobre la inferencia de IA/AA en GKE.