Les clusters d'entraînement Gemini Enterprise Agent Platform sont compatibles avec différents types de machines pour s'adapter à différentes charges de travail. Vous pouvez choisir parmi les options suivantes lors de la configuration de vos pools de nœuds de cluster :
- a4-highgpu-8g
- a4x-highgpu-4g
- a3-ultragpu-8g
- a3-megagpu-8g
- Famille de processeurs n2
Type de machine A4X
Les clusters d'entraînement Gemini Enterprise Agent Platform sont compatibles avec le type de machine A4X optimisé pour les accélérateurs (a4x-highgpu-4g), une plate-forme exaflopique basée sur l' architecture rack NVIDIA GB200 NVL72.
Comparaison des architectures
Le tableau suivant décrit les différences matérielles fondamentales entre la famille A4X et les autres familles optimisées pour les accélérateurs.
| Fonctionnalité | A4X (a4x-highgpu-4g) | A3 / A4H |
|---|---|---|
| Architecture du processeur | ARM | X86 |
| Nombre de GPU | 4 GPU par nœud | 8 GPU par nœud |
| Type de réservation | Mode "Toute la capacité" | Mode géré |
| Stratégie d'emplacement | Strict (Compact) | Flexible |
Consignes spécifiques à A4X
- Le nombre de VM de votre pool de nœuds A4X doit être un multiple de 18 (par exemple, 18, 36, 54). Cette étape est nécessaire, car la capacité A4X est provisionnée dans des blocs fixes non partageables de 18 nœuds appelés domaines NVLink. Ces domaines sont liés par une stratégie d'emplacement compacte stricte, et les blocs partiellement alloués ne peuvent pas être utilisés par d'autres clusters.
- En raison de l'architecture basée sur ARM des nœuds A4X, vous devez apporter deux modifications clés à vos charges de travail d'entraînement :
- Utiliser des images compatibles avec ARM : toutes les tâches d'entraînement doivent utiliser une image de conteneur conçue pour l'architecture ARM.
- S'adapter à 4 GPU : votre logique d'entraînement distribué doit être mise à jour pour reconnaître et utiliser correctement les 4 GPU disponibles sur chaque nœud A4X.
- Processus de signalement des pannes d'hôte et temps d'arrêt Lorsque vous signalez un hôte comme défectueux, tenez compte du processus de récupération suivant :
- Aucune capacité de secours : le système n'utilise pas de pool de secours pour un remplacement instantané des nœuds.
- Récupération basée sur la réparation : le nœud reste indisponible jusqu'à ce que l'hôte physique sous-jacent soit réparé.
- Temps d'arrêt prolongé : ce processus de réparation prend généralement entre 3 et 14 jours.
Provisionnement de capacité
Le choix du bon modèle de provisionnement est essentiel pour équilibrer les coûts, la vitesse et la disponibilité des ressources. Consultez les options de provisionnement suivantes :
RESERVATION: alloue des nœuds à partir d'une réservation Compute Engine spécifique que vous avez créée à l'avance. Ce modèle garantit la capacité et est recommandé pour les ressources très demandées.FLEX_START: utilise le planificateur de charges de travail dynamique pour mettre votre tâche en file d'attente. La tâche démarre automatiquement dès que les ressources de calcul demandées sont disponibles, ce qui offre une heure de début flexible sans nécessiter de réservation.SPOT: provisionne le pool de nœuds à l'aide de VM Spot. Il s'agit de l'option la plus économique, mais elle ne doit être utilisée que pour les charges de travail tolérantes aux pannes et capables de gérer les interruptions, car les VM peuvent être préemptées à tout moment.ON_DEMAND: il s'agit de l'option par défaut pour les pools de nœuds avec processeur uniquement, qui convient le mieux aux types de machines qui ne sont pas rares. Elle fournit des instances de VM standards avec une tarification prévisible à l'usage.
Suivez les conseils ci-dessous pour faire votre choix :
Pour les ressources GPU très demandées (comme A3 et A4) : le modèle
RESERVATIONest fortement recommandé. Il vous garantit un accès dédié à la capacité dont vous avez besoin pour les tâches d'entraînement critiques.Pour les charges de travail flexibles ou avec des pics d'activité : envisagez d'utiliser
FLEX_STARTouSPOT.FLEX_STARTmet votre tâche en file d'attente jusqu'à ce que des ressources soient disponibles, tandis queSPOToffre des économies importantes pour les tâches tolérantes aux pannes qui peuvent gérer la préemption.Pour les types de machines abondants : le modèle
ON_DEMANDest le choix privilégié. Utilisez-le pour les types de machines qui ne sont pas rares et pour lesquels la disponibilité immédiate n'est pas un problème.
Utiliser une réservation partagée (facultatif)
Si vous souhaitez utiliser une réservation partagée plutôt qu'une réservation locale, vous devez effectuer des étapes supplémentaires avant de pouvoir créer un cluster.
Avant d'utiliser une réservation partagée avec des clusters d'entraînement Gemini Enterprise Agent Platform, assurez-vous qu'elle fonctionne en créant manuellement une VM qui l'utilise.
Si cette VM est créée, passez à l'étape suivante.
Dans la configuration de création du cluster, utilisez le nom de la réservation au format
suivant :
projects/RESERVATION_HOST_PROJECT_ID/zones/RESERVATION_ZONE/reservations/RESERVATION_NAME.
Étape suivante
Une fois que vous avez sélectionné les options de calcul et de provisionnement pour votre cluster d'entraînement, vous êtes prêt à créer le cluster et à y exécuter une charge de travail.
- Créer une réservation Compute Engine : le modèle
RESERVATIONest utilisé pour allouer des ressources très demandées, comme des GPU. Découvrez comment créer une réservation dans Compute Engine pour bénéficier d'un accès dédié aux ressources dont vous avez besoin. - Créer votre cluster d'entraînement : appliquez les configurations que vous avez apprises en suivant le guide pas à pas pour créer votre premier cluster d'entraînement persistant à l'aide de l'API Agent Platform ou de
gcloud. - Envoyer une tâche d'entraînement à votre cluster : une fois votre cluster actif, l'étape suivante consiste à exécuter une charge de travail. Envoyez un
CustomJobqui cible votre cluster persistant pour l'exécution. - Adapter votre code pour l'entraînement distribué : pour tirer pleinement parti d'un cluster à plusieurs nœuds, adaptez votre code d'entraînement à un environnement distribué.