Cette page décrit la configuration des GPU pour vos pools de nœuds de calcul Cloud Run. Google fournit des GPU NVIDIA L4 avec 24 Go de mémoire GPU (VRAM) et des GPU NVIDIA RTX PRO 6000 Blackwell (preview) avec 96 Go de mémoire GPU (VRAM), qui est séparée de la mémoire de l'instance.
La fonctionnalité GPU sur Cloud Run est entièrement gérée, sans nécessiter de pilotes ni de bibliothèques supplémentaires. La fonctionnalité de GPU offre une disponibilité à la demande sans réservation, comme le fonctionnement du processeur et de la mémoire à la demande dans Cloud Run.
Les instances Cloud Run avec un GPU L4 ou NVIDIA RTX PRO 6000 Blackwell associé et des pilotes préinstallés démarrent en cinq secondes environ. Les processus exécutés dans votre conteneur peuvent alors commencer à utiliser le GPU.
Vous pouvez configurer un GPU par instance Cloud Run. Si vous utilisez des conteneurs side-car, notez que le GPU ne peut être associé qu'à un seul conteneur.
Types de GPU compatibles
Cloud Run accepte deux types de GPU :
- GPU L4 avec la version actuelle du pilote NVIDIA : 535.216.03 (12.2). Pour les GPU L4, vous devez utiliser au moins quatre processeurs et 16 Gio de mémoire.
- GPU NVIDIA RTX PRO 6000 Blackwell avec la version actuelle du pilote NVIDIA : 580.x.x (13.0) (preview). Pour le GPU NVIDIA RTX PRO 6000 Blackwell, vous devez utiliser au moins 20 processeurs et 80 Gio de mémoire.
Régions où le service est disponible
Les régions suivantes sont compatibles avec le GPU L4 :
asia-southeast1(Singapour)asia-south1(Mumbai) . Cette région n'est disponible que sur invitation. Contactez l'équipe chargée de votre compte Google si vous êtes intéressé par cette région.europe-west1(Belgique)Faibles émissions de CO2
europe-west4(Pays-Bas)Faibles émissions de CO2
us-central1(Iowa)Faibles émissions de CO2 . Cette région n'est disponible que sur invitation. Contactez l'équipe chargée de votre compte Google si vous êtes intéressé par cette région.
us-east4(Virginie du Nord)
Les régions suivantes sont compatibles avec le GPU NVIDIA RTX PRO 6000 Blackwell (aperçu) :
asia-southeast1(Singapour). Cette région n'est disponible que sur invitation. Contactez l'équipe chargée de votre compte Google si vous êtes intéressé par cette région.asia-south2(Delhi, Inde). Cette région n'est disponible que sur invitation. Contactez l'équipe chargée de votre compte Google si vous êtes intéressé par cette région.europe-west4(Pays-Bas)Faibles émissions de CO2
us-central1(Iowa)Faibles émissions de CO2
Impact sur les tarifs
Pour en savoir plus sur les tarifs des GPU, consultez Tarifs de Cloud Run. Notez les exigences et considérations suivantes :
- Le coût de la redondance zonale des GPU est différent de celui de la redondance non zonale. Pour en savoir plus sur les tarifs des GPU, consultez Tarifs de Cloud Run.
- Les pools de nœuds de calcul GPU ne peuvent pas faire l'objet d'un autoscaling. Le GPU vous est facturé même s'il n'exécute aucun processus, tant que l'instance GPU du pool de nœuds de calcul est en cours d'exécution.
- Le processeur et la mémoire des pools de nœuds de calcul sont facturés différemment des services et des jobs. Toutefois, le code SKU GPU est facturé au même prix que les services et les jobs.
- Configurations de processeur et de mémoire de votre ressource.
- Le GPU est facturé pendant toute la durée de vie de l'instance.
Options de redondance zonale des GPU
Par défaut, Cloud Run déploie votre pool de nœuds de calcul dans plusieurs zones d'une même région. Cette architecture offre une résilience inhérente : si une zone subit une panne, Cloud Run redirige automatiquement le trafic de la zone concernée vers les zones opérationnelles de la même région.
Lorsque vous travaillez avec des ressources GPU, gardez à l'esprit qu'elles sont soumises à des contraintes de capacité spécifiques. En cas d'indisponibilité d'une zone, le mécanisme de basculement standard pour les charges de travail GPU repose sur la disponibilité d'une capacité GPU inutilisée suffisante dans les zones opérationnelles restantes. En raison de la nature limitée des GPU, cette capacité peut ne pas toujours être disponible.
Pour augmenter la disponibilité de vos pools de nœuds de calcul accélérés par GPU en cas de pannes zonales, vous pouvez configurer la redondance zonale spécifiquement pour les GPU :
Redondance zonale activée (par défaut) : Cloud Run réserve la capacité de GPU pour votre pool de nœuds de calcul dans plusieurs zones. Cela augmente considérablement la probabilité que votre pool de nœuds de calcul puisse gérer avec succès le trafic redirigé depuis une zone affectée, offrant une fiabilité accrue en cas de défaillance zonale avec un coût supplémentaire par seconde et par GPU.
Redondance zonale désactivée : Cloud Run tente d'effectuer un basculement pour les charges de travail GPU de la manière la plus optimale possible. Le trafic n'est acheminé vers d'autres zones que si une capacité de GPU suffisante est disponible à ce moment-là. Cette option ne garantit pas la capacité réservée pour les scénarios de basculement, mais entraîne un coût par seconde et par GPU inférieur.
Contrat de niveau de service
Le SLA pour Cloud Run GPU dépend de l'option de redondance zonale ou non zonale utilisée par le pool de nœuds de calcul. Pour en savoir plus, consultez la page SLA.
Demander une augmentation du quota
Les projets qui utilisent des GPU nvidia-l4 Cloud Run dans une région pour la première fois se voient automatiquement attribuer un quota de trois GPU (redondance zonale désactivée) lors de la création du premier déploiement. Le quota pour les GPU Cloud Run nvidia-rtx-pro-6000 est accordé en milliGPU. Les projets qui utilisent un GPU nvidia-rtx-pro-6000 dans une région pour la première fois se verront automatiquement attribuer un quota de 3 000 milliGPU (redondance zonale désactivée) lors de la création du premier déploiement. Cela équivaut à trois GPU.
Si vous avez besoin de GPU Cloud Run supplémentaires, vous devez demander une augmentation de quota pour votre pool de nœuds de calcul Cloud Run. Utilisez les liens fournis dans les boutons suivants pour demander le quota dont vous avez besoin.
| Quota nécessaire | Lien vers le quota |
|---|---|
| GPU L4 avec redondance zonale désactivée (prix inférieur) | Demander un quota de GPU sans redondance zonale |
| GPU L4 avec redondance zonale activée (prix plus élevé) | Demander un quota de GPU avec redondance zonale |
| GPU NVIDIA RTX PRO 6000 Blackwell avec redondance zonale désactivée (prix plus bas) | Demander un quota de GPU sans redondance zonale |
| GPU NVIDIA RTX PRO 6000 Blackwell avec redondance zonale activée (prix plus élevé) | Demander un quota de GPU avec redondance zonale |
Pour savoir comment demander une augmentation de quota, consultez Augmenter le quota.
Avant de commencer
La liste suivante décrit les exigences et les limites liées à l'utilisation des GPU dans Cloud Run :
- Connectez-vous à votre compte Google Cloud . Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Activer l'API Cloud Run
Rôles requis pour activer les API
Pour activer les API, vous avez besoin du rôle IAM Administrateur Service Usage (
roles/serviceusage.serviceUsageAdmin), qui contient l'autorisationserviceusage.services.enable. Découvrez comment attribuer des rôles. - Demandez le quota requis.
- Consultez les bonnes pratiques concernant les GPU : pools de nœuds de calcul Cloud Run avec des GPU pour obtenir des recommandations sur la création de votre image de conteneur et le chargement de modèles volumineux.
- Assurez-vous que votre pool de nœuds de calcul Cloud Run présente les configurations suivantes :
- Configurez les paramètres de facturation pour la facturation basée sur les instances. Notez que les pools de nœuds de calcul configurés pour la facturation basée sur les instances peuvent toujours être mis à l'échelle zéro.
- Pour le GPU L4, configurez un minimum de 4 processeurs pour votre pool de nœuds de calcul (8 processeurs recommandés) et un minimum de 16 Gio de mémoire (32 Gio recommandés).
- Pour le GPU NVIDIA RTX PRO 6000 Blackwell, configurez au moins 20 processeurs et 80 Gio de mémoire.
- Déterminez et définissez une simultanéité maximale optimale pour votre utilisation du GPU.
Rôles requis
Pour obtenir les autorisations nécessaires pour configurer et déployer des pools de nœuds de calcul Cloud Run, demandez à votre administrateur de vous accorder les rôles IAM suivants sur les pools de nœuds de calcul :
-
Développeur Cloud Run (
roles/run.developer) : pool de nœuds de calcul Cloud Run - Utilisateur du compte de service (
roles/iam.serviceAccountUser) : l'identité du service
Pour obtenir la liste des rôles et des autorisations IAM associés à Cloud Run, consultez les sections Rôles IAM Cloud Run et Autorisations IAM Cloud Run. Si votre pool de nœuds de calcul Cloud Run communique avec des APIGoogle Cloud , telles que des bibliothèques clientes Cloud, consultez le guide de configuration de l'identité du service. Pour en savoir plus sur l'attribution de rôles, consultez les pages Autorisations de déploiement et Gérer les accès.
Configurer un pool de nœuds de calcul Cloud Run avec un GPU
Tout changement de configuration entraîne la création d'une révision. Les révisions ultérieures obtiennent aussi automatiquement le même paramètre de configuration, à moins que vous ne le mettiez explicitement à jour.
Vous pouvez utiliser la console Google Cloud , Google Cloud CLI ou YAML pour configurer des GPU.
Console
Dans la console Google Cloud , accédez à Cloud Run :
Sélectionnez Pools de nœuds de calcul dans le menu de navigation Cloud Run, puis cliquez sur Déployer un conteneur pour configurer un nouveau pool de nœuds de calcul. Si vous configurez un pool de nœuds de calcul existant, cliquez sur celui-ci, puis sur Modifier et déployer la nouvelle révision.
Si vous configurez un nouveau pool de nœuds de calcul, remplissez la page initiale des paramètres du pool de nœuds de calcul, puis cliquez sur Conteneur(s), Volumes, Mise en réseau, Sécurité pour développer la page de configuration du pool de nœuds de calcul.
Cliquez sur l'onglet Conteneur.
- Configurez le processeur, la mémoire, la simultanéité, l'environnement d'exécution et la sonde de démarrage en suivant les recommandations de la section Avant de commencer.
- Cochez la case "GPU", puis sélectionnez le type de GPU dans le menu Type de GPU et le nombre de GPU dans le menu Nombre de GPU.
- Par défaut, la redondance zonale est activée. Pour modifier le paramètre actuel, cochez la case GPU pour afficher les options de redondance de GPU.
- Sélectionnez Aucune redondance zonale pour désactiver la redondance zonale.
- Sélectionnez Redondance de zones pour l'activer.
Cliquez sur Créer ou Déployer.
gcloud
Pour créer un pool de nœuds de calcul compatible avec les GPU, utilisez la commande gcloud beta run worker-pools deploy :
gcloud beta run worker-pools deploy WORKER_POOL \ --image IMAGE_URL \ --gpu 1
Remplacez les éléments suivants :
- WORKER_POOL : nom de votre pool de nœuds de calcul Cloud Run.
- IMAGE_URL : référence à l'image de conteneur contenant le pool de nœuds de calcul, par exemple
us-docker.pkg.dev/cloudrun/container/worker-pool:latest.
Pour mettre à jour la configuration GPU d'un pool de nœuds de calcul, utilisez la commande gcloud beta run worker-pools update :
gcloud beta run worker-pools update WORKER_POOL \ --image IMAGE_URL \ --cpu CPU \ --memory MEMORY \ --gpu GPU_NUMBER \ --gpu-type GPU_TYPE \ --GPU_ZONAL_REDUNDANCY
Remplacez les éléments suivants :
- WORKER_POOL : nom de votre pool de nœuds de calcul Cloud Run.
- IMAGE_URL : référence à l'image de conteneur contenant le pool de nœuds de calcul, par exemple
us-docker.pkg.dev/cloudrun/container/worker-pool:latest. - CPU : nombre de processeurs. Pour les GPU NVIDIA L4, vous devez spécifier au moins
4processeurs. Pour le GPU NVIDIA RTX PRO 6000 Blackwell, vous devez spécifier au moins20processeurs. - MEMORY : quantité de mémoire. Pour les GPU NVIDIA L4, vous devez spécifier au moins
16Gi(16 Gio). Pour le GPU NVIDIA RTX PRO 6000 Blackwell, vous devez spécifier au moins80Gi(80 Gio). - GPU_NUMBER : valeur
1(un). Si cette valeur n'est pas spécifiée, mais qu'un paramètre GPU_TYPE est présent, la valeur par défaut est1. - GPU_TYPE : type de GPU. Pour le GPU L4, saisissez la valeur
nvidia-l4(nvidia-L4 L minuscule, et non la valeur numérique quatorze). NVIDIA RTX PRO 6000 Blackwell GPU, saisisseznvidia-rtx-pro-6000. - GPU_ZONAL_REDUNDANCY :
no-gpu-zonal-redundancypour désactiver la redondance zonale ougpu-zonal-redundancypour l'activer.
YAML
Si vous créez un pool de nœuds de calcul, ignorez cette étape. Si vous mettez à jour un pool de nœuds de calcul existant, téléchargez sa configuration YAML :
gcloud beta run worker-pools describe WORKER_POOL --format export > workerpool.yaml
Modifiez l'attribut
nvidia.com/gpu:etnodeSelector::
run.googleapis.com/accelerator:apiVersion: run.googleapis.com/v1 kind: WorkerPool metadata: name: WORKER_POOL spec: template: metadata: annotations: run.googleapis.com/launch-stage: BETA run.googleapis.com/gpu-zonal-redundancy-disabled: 'GPU_ZONAL_REDUNDANCY' spec: containers: - image: IMAGE_URL resources: limits: cpu: 'CPU' memory: 'MEMORY' nvidia.com/gpu: '1' nodeSelector: run.googleapis.com/accelerator: GPU_TYPE
Remplacez les éléments suivants :
- WORKER_POOL : nom de votre pool de nœuds de calcul Cloud Run.
- IMAGE_URL : référence à l'image de conteneur contenant le pool de nœuds de calcul, par exemple
us-docker.pkg.dev/cloudrun/container/worker-pool:latest. - CPU : nombre de processeurs. Pour les GPU L4, vous devez spécifier au moins
4processeurs. Pour le GPU NVIDIA RTX PRO 6000 Blackwell, vous devez spécifier au moins20processeurs. - MEMORY : quantité de mémoire. Pour les GPU L4, vous devez spécifier au moins
16Gi(16 Gio). Pour le GPU NVIDIA RTX PRO 6000 Blackwell, vous devez spécifier au moins80Gi(80 Gio). - GPU_TYPE : type de GPU. Pour le GPU L4, saisissez la valeur
nvidia-l4(nvidia-L4 L minuscule, et non la valeur numérique quatorze). NVIDIA RTX PRO 6000 Blackwell GPU, saisisseznvidia-rtx-pro-6000. - GPU_ZONAL_REDUNDANCY :
falsepour activer la redondance zonale des GPU outruepour la désactiver.
Créez ou mettez à jour le pool de nœuds de calcul à l'aide de la commande suivante :
gcloud beta run worker-pools replace workerpool.yaml
Terraform
Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez Commandes Terraform de base.
resource "google_cloud_run_v2_worker_pool" "default" {
provider = google-beta
name = "WORKER_POOL"
location = "REGION"
template {
gpu_zonal_redundancy_disabled = "GPU_ZONAL_REDUNDANCY"
containers {
image = "IMAGE_URL"
resources {
limits = {
"cpu" = "CPU"
"memory" = "MEMORY"
"nvidia.com/gpu" = "1"
}
}
}
node_selector {
accelerator = "GPU_TYPE"
}
}
}
Remplacez les éléments suivants :
- WORKER_POOL : nom de votre pool de nœuds de calcul Cloud Run.
- GPU_ZONAL_REDUNDANCY :
falsepour activer la redondance zonale des GPU outruepour la désactiver. - IMAGE_URL : référence à l'image de conteneur contenant le pool de nœuds de calcul, par exemple
us-docker.pkg.dev/cloudrun/container/worker-pool:latest. - CPU : nombre de processeurs. Pour les GPU NVIDIA L4, vous devez spécifier au moins
4processeurs. Pour le GPU NVIDIA RTX PRO 6000 Blackwell, vous devez spécifier au moins20processeurs. - MEMORY : quantité de mémoire. Pour les GPU NVIDIA L4, vous devez spécifier au moins
16Gi(16 Gio). Pour le GPU NVIDIA RTX PRO 6000 Blackwell, vous devez spécifier au moins80Gi(80 Gio). - GPU_TYPE : type de GPU. Pour le GPU L4, saisissez la valeur
nvidia-l4(nvidia-L4 L minuscule, et non la valeur numérique quatorze). NVIDIA RTX PRO 6000 Blackwell GPU, saisisseznvidia-rtx-pro-6000.
Afficher les paramètres de GPU
Pour afficher les paramètres actuels de GPU de votre pool de nœuds de calcul Cloud Run, procédez comme suit :
Console
Dans la console Google Cloud , accédez à la page "Pools de nœuds de calcul Cloud Run" :
Cliquez sur le pool de nœuds de calcul qui vous intéresse pour ouvrir la page Détails du pool de nœuds de calcul.
Cliquez sur Modifier et déployer la nouvelle révision.
Recherchez le paramètre de GPU dans les détails de la configuration.
gcloud
Exécutez la commande suivante :
gcloud beta run worker-pools describe WORKER_POOL
Recherchez le paramètre de GPU dans la configuration renvoyée.
Supprimer un GPU
Vous pouvez supprimer un GPU à l'aide de la console Google Cloud , de la Google Cloud CLI ou de YAML.
Console
Dans la console Google Cloud , accédez à Cloud Run :
Sélectionnez Pools de nœuds de calcul dans le menu de navigation Cloud Run, puis cliquez sur Déployer un conteneur pour configurer un nouveau pool de nœuds de calcul. Si vous configurez un pool de nœuds de calcul existant, cliquez sur celui-ci, puis sur Modifier et déployer la nouvelle révision.
Si vous configurez un nouveau pool de nœuds de calcul, remplissez la page initiale des paramètres du pool de nœuds de calcul, puis cliquez sur Conteneur(s), Volumes, Mise en réseau, Sécurité pour développer la page de configuration du pool de nœuds de calcul.
Cliquez sur l'onglet Conteneur.
- Décochez la case "GPU".
- Cliquez sur Créer ou Déployer.
gcloud
Pour supprimer un GPU, définissez le nombre de GPU sur 0 :
gcloud beta run worker-pools update WORKER_POOL --gpu 0
Remplacez WORKER_POOL par le nom de votre pool de nœuds de calcul Cloud Run.
YAML
Si vous créez un pool de nœuds de calcul, ignorez cette étape. Si vous mettez à jour un pool de nœuds de calcul existant, téléchargez sa configuration YAML :
gcloud beta run worker-pools describe WORKER_POOL --format export > workerpool.yaml
Supprimez les lignes
nvidia.com/gpu:etnodeSelector: run.googleapis.com/accelerator: GPU_TYPE.Créez ou mettez à jour le pool de nœuds de calcul à l'aide de la commande suivante :
gcloud beta run worker-pools replace workerpool.yaml
Bibliothèques de pilotes
Par défaut, toutes les bibliothèques de pilotes de GPU NVIDIA L4 et NVIDIA RTX PRO 6000 Blackwell sont installées sous /usr/local/nvidia/lib64. Cloud Run ajoute automatiquement ce chemin d'accès à la variable d'environnement LD_LIBRARY_PATH (c'est-à-dire ${LD_LIBRARY_PATH}:/usr/local/nvidia/lib64) du conteneur avec le GPU. Cela permet à l'éditeur de lien dynamique de trouver les bibliothèques de pilotes NVIDIA. L'éditeur de liens recherche et résout les chemins dans l'ordre dans lequel vous les listez dans la variable d'environnement LD_LIBRARY_PATH. Toutes les valeurs que vous spécifiez dans cette variable sont prioritaires par rapport au chemin d'accès par défaut des bibliothèques de pilotes Cloud Run /usr/local/nvidia/lib64.
Si vous souhaitez utiliser une version de CUDA supérieure à 12.2, la méthode la plus simple consiste à dépendre d'une image de base NVIDIA plus récente avec les packages de compatibilité ascendante déjà installés. Vous pouvez également installer manuellement les packages de compatibilité ascendante NVIDIA et les ajouter à LD_LIBRARY_PATH. Consultez la matrice de compatibilité de NVIDIA pour déterminer quelles versions de CUDA sont compatibles de manière ascendante avec la version du pilote NVIDIA fournie.