Auf dieser Seite wird die GPU-Konfiguration für Ihre Cloud Run-Jobs beschrieben. GPUs eignen sich gut für KI-Arbeitslasten wie das Trainieren von Large Language Models (LLMs) mit Ihren bevorzugten Frameworks, das Ausführen von Batch- oder Offline-Inferenz für LLMs und das Verarbeiten anderer rechenintensiver Aufgaben wie Videoverarbeitung und Grafikrendering als Hintergrundjobs. Google bietet NVIDIA L4-GPUs mit 24 GB GPU-Speicher (VRAM) und NVIDIA RTX PRO 6000 Blackwell-GPUs (Vorschau) mit 96 GB GPU-Speicher (VRAM) an. Dieser Speicher ist vom Instanzspeicher getrennt.
GPUs in Cloud Run werden vollständig verwaltet. Es sind keine zusätzlichen Treiber oder Bibliotheken erforderlich. Die GPU-Funktion bietet On-Demand-Verfügbarkeit ohne erforderliche Reservierungen, ähnlich wie bei On-Demand-CPUs und On-Demand-Arbeitsspeicher in Cloud Run.
Cloud Run-Instanzen mit einer angehängten L4- oder NVIDIA RTX PRO 6000 Blackwell-GPU mit vorinstallierten Treibern werden in etwa 5 Sekunden gestartet. Danach können die in Ihrem Container ausgeführten Prozesse die GPU verwenden.
Sie können eine GPU pro Cloud Run-Instanz konfigurieren. Wenn Sie Sidecar-Container verwenden, beachten Sie, dass die GPU nur an einen Container angehängt werden kann.
Unterstützte GPU-Typen
Cloud Run unterstützt zwei Arten von GPUs:
- L4-GPU mit der aktuellen NVIDIA-Treiberversion: 535.x.x (12.2). Für L4-GPUs müssen Sie mindestens 4 CPUs und 16 GiB Arbeitsspeicher verwenden.
- NVIDIA RTX PRO 6000 Blackwell-GPU mit der aktuellen NVIDIA-Treiberversion: 580.x.x (13.0) (Vorschau). Für die NVIDIA RTX PRO 6000 Blackwell-GPU müssen Sie mindestens 20 CPUs und 80 GiB Arbeitsspeicher verwenden.
Unterstützte Regionen
Die L4-GPU wird in den folgenden Regionen unterstützt:
asia-southeast1(Singapur)asia-south1(Mumbai) . Diese Region ist nur auf Einladung verfügbar. Wenden Sie sich an Ihr Google Konten-Team, wenn Sie daran interessiert sind.europe-west1(Belgien)Niedriger CO2-Ausstoß
europe-west4(Niederlande)Niedriger CO2-Ausstoß
us-central1(Iowa)Niedriger CO2-Ausstoß . Diese Region ist nur auf Einladung verfügbar. Wenden Sie sich an Ihr Google Konten-Team, wenn Sie daran interessiert sind.
us-east4(Northern Virginia)
Die folgenden Regionen werden von der NVIDIA RTX PRO 6000 Blackwell-GPU (Vorschau) unterstützt:
asia-southeast1(Singapur).asia-south2(Delhi, Indien). Diese Region ist nur auf Einladung verfügbar. Wenden Sie sich an Ihr Google Konten-Team, wenn Sie daran interessiert sind.europe-west4(Niederlande)Niedriger CO2-Ausstoß
us-central1(Iowa)Niedriger CO2-Ausstoß
Auswirkungen auf die Kosten
Weitere Informationen zu GPU-Preisen finden Sie unter Cloud Run – Preise. Beachten Sie die folgenden Anforderungen und Hinweise:
- Für GPUs für Jobs gilt die Preisgestaltung ohne zonale Redundanz.
- Die CPU- und Speicherkonfigurationen Ihrer Ressource.
- Die GPU wird für die gesamte Dauer des Instanzlebenszyklus abgerechnet.
Nicht zonale GPU-Redundanz
Das Feature „Cloud Run-Jobs“ bietet nicht zonale Redundanz nur für GPU-fähige Instanzen. Wenn die nicht zonale Redundanz aktiviert ist, versucht Cloud Run, für GPU-fähige Jobs ein Failover durchzuführen. Cloud Run leitet die Ausführung von Jobs nur dann an andere Zonen weiter, wenn zu diesem Zeitpunkt genügend GPU-Kapazität verfügbar ist. Diese Option garantiert keine reservierte Kapazität für Failoverszenarien, führt aber zu niedrigeren Kosten pro GPU-Sekunde.
Weitere Informationen zum Aktivieren der nicht zonalen Redundanz finden Sie unter Cloud Run-Job mit GPU konfigurieren.
Kontingenterhöhung anfordern
Projekten, in denen Cloud Run-nvidia-l4-GPUs in einer Region zum ersten Mal verwendet werden, wird automatisch ein GPU-Kontingent von 3 Einheiten (zonale Redundanz deaktiviert) gewährt, wenn die erste Bereitstellung erstellt wird. Das Kontingent für Cloud Run-nvidia-rtx-pro-6000-GPUs wird in Milli-GPUs gewährt. Projekten, in denen nvidia-rtx-pro-6000-GPUs in einer Region zum ersten Mal verwendet werden, wird bei der ersten Bereitstellung automatisch ein Kontingent von 3.000 milliGPU (zonale Redundanz deaktiviert) zugewiesen. Das entspricht 3 GPUs.
Beachten Sie, dass diese automatische Kontingentzuweisung je nach CPU- und Arbeitsspeicherkapazität verfügbar ist. Dadurch wird die Anzahl der GPUs begrenzt, die zu einem bestimmten Zeitpunkt in allen Diensten, Jobs und Worker-Pools des Projekts aktiv sein können.
Wenn Sie zusätzliche Cloud Run-GPUs für Jobs benötigen, fordern Sie eine Kontingentaufstockung an.
Hinweis
In der folgenden Liste werden die Anforderungen und Einschränkungen für die Verwendung von GPUs in Cloud Run beschrieben:
- Melden Sie sich in Ihrem Google Cloud -Konto an. Wenn Sie mit Google Cloudnoch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
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.
Cloud Run API aktivieren
Rollen, die zum Aktivieren von APIs erforderlich sind
Zum Aktivieren von APIs benötigen Sie die IAM-Rolle „Service Usage-Administrator“ (
roles/serviceusage.serviceUsageAdmin), die die Berechtigungserviceusage.services.enableenthält. Weitere Informationen zum Zuweisen von Rollen- Informationen zur Optimierung der Leistung bei der Verwendung von Cloud Run-Jobs mit GPUs finden Sie unter Best Practices: Cloud Run-Jobs mit GPUs.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Jobs zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren von Cloud Run-Jobs benötigen:
-
Cloud Run-Entwickler (
roles/run.developer) - Cloud Run-Job - Dienstkontonutzer (
roles/iam.serviceAccountUser) - die Dienstidentität
Eine Liste der IAM-Rollen und -Berechtigungen im Zusammenhang mit Cloud Run finden Sie unter IAM-Rollen für Cloud Run und IAM-Berechtigungen für Cloud Run. Wenn Ihr Cloud Run-Job mitGoogle Cloud APIs wie Cloud-Clientbibliotheken verknüpft ist, lesen Sie die Konfigurationsanleitung für Dienstidentitäten. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Bereitstellungsberechtigungen und Zugriff verwalten.
Cloud Run-Job für die Verwendung von GPUs konfigurieren
Sie können die Google Cloud Console, die Google Cloud CLI oder YAML verwenden, um die GPU zu konfigurieren.
Console
Wechseln Sie in der Google Cloud -Console zur Seite Cloud Run-Jobs:
Klicken Sie auf Container bereitstellen, um die Seite mit den anfänglichen Jobeinstellungen auszufüllen. Wenn Sie einen vorhandenen Job konfigurieren, wählen Sie den Job aus und klicken Sie dann auf Jobkonfiguration ansehen und bearbeiten.
Klicken Sie auf Container, Verbindungen, Sicherheit, um die Seite mit den Jobattributen zu maximieren.
Klicken Sie auf den Tab Container.
- Konfigurieren Sie CPU, Arbeitsspeicher und Startprüfung gemäß den Empfehlungen unter Vorbereitung.
- Setzen Sie ein Häkchen in das Kästchen neben „GPU“. Wählen Sie dann im Menü GPU-Typ den GPU-Typ und im Menü Anzahl der GPUs die Anzahl der GPUs aus.
Klicken Sie auf Erstellen oder Aktualisieren.
gcloud
Wenn Sie keine zonenbasierte Redundanz aktivieren möchten, müssen Sie --no-gpu-zonal-redundancy angeben. Dies ist erforderlich, um GPUs mit Jobs zu verwenden.
Verwenden Sie den Befehl gcloud run jobs create, um einen Job mit aktivierten GPUs zu erstellen:
gcloud run jobs create JOB_NAME \ --image=IMAGE \ --gpu=1 \ --no-gpu-zonal-redundancy
Ersetzen Sie Folgendes:
- JOB_NAME: Der Name Ihres Cloud Run-Jobs.
- IMAGE_URL: Ein Verweis auf das Container-Image, z. B.
us-docker.pkg.dev/cloudrun/container/job:latest.
Verwenden Sie den Befehl gcloud run jobs update, um die GPU-Konfiguration für einen Job zu aktualisieren:
gcloud run jobs update JOB_NAME \ --image IMAGE_URL \ --cpu CPU \ --memory MEMORY \ --gpu GPU_NUMBER \ --gpu-type GPU_TYPE \ --parallelism PARALLELISM \ --no-gpu-zonal-redundancy
Ersetzen Sie Folgendes:
- JOB_NAME: Der Name Ihres Cloud Run-Jobs.
- IMAGE_URL: Ein Verweis auf das Container-Image, z. B.
us-docker.pkg.dev/cloudrun/container/job:latest. - CPU: Die Anzahl der CPUs. Für die L4-GPU müssen Sie mindestens
4CPUs angeben. Für die NVIDIA RTX PRO 6000 Blackwell-GPU müssen Sie mindestens20CPUs angeben. - MEMORY: die Größe des Arbeitsspeichers. Für die L4-GPU müssen Sie mindestens
16Gi(16 GiB) angeben. Für die NVIDIA RTX PRO 6000 Blackwell-GPU müssen Sie mindestens80Gi(80 GiB) angeben. - GPU_NUMBER: der Wert
1(eins). Wenn dieser Wert nicht angegeben ist, aber ein GPU_TYPE vorhanden ist, ist der Standardwert1. - GPU_TYPE: Der GPU-Typ. Geben Sie für die L4-GPU den Wert
nvidia-l4(nvidia-L4 Kleinbuchstabe L, nicht numerischer Wert vierzehn) ein. NVIDIA RTX PRO 6000 Blackwell-GPU, geben Sienvidia-rtx-pro-6000ein. - PARALLELISM: Ein ganzzahliger Wert, der kleiner als der niedrigste Wert der anwendbaren Kontingentlimits ist, die Sie für Ihr Projekt zugewiesen haben.
YAML
Sie müssen die Annotation run.googleapis.com/gpu-zonal-redundancy-disabled: auf „true“ setzen. Dadurch wird die nicht zonale Redundanz aktiviert, die für GPUs für Jobs erforderlich ist.
Wenn Sie einen neuen Job erstellen, überspringen Sie diesen Schritt. Wenn Sie einen vorhandenen Job aktualisieren, laden Sie die zugehörige YAML-Konfiguration herunter:
gcloud run jobs describe JOB_NAME --format export > job.yaml
Aktualisieren Sie das Attribut
nvidia.com/gpu,annotations: run.googleapis.com/launch-stagefür die Einführungsphase undnodeSelector::
run.googleapis.com/acceleratorapiVersion: run.googleapis.com/v1 kind: Job metadata: name: JOB_NAME labels: cloud.googleapis.com/location: REGION spec: template: metadata: annotations: run.googleapis.com/gpu-zonal-redundancy-disabled: 'true' spec: template: spec: containers: - image: IMAGE_URL limits: cpu: 'CPU' memory: 'MEMORY' nvidia.com/gpu: 'GPU_NUMBER' nodeSelector: run.googleapis.com/accelerator: GPU_TYPE
Ersetzen Sie Folgendes:
- JOB_NAME: Der Name Ihres Cloud Run-Jobs.
- IMAGE_URL: ein Verweis auf das Container-Image, z. B.
us-docker.pkg.dev/cloudrun/container/job:latest - CPU: die Anzahl der CPUs. Für die L4-GPU müssen Sie mindestens
4CPUs angeben. Für die NVIDIA RTX PRO 6000 Blackwell-GPU müssen Sie mindestens20CPUs angeben. - MEMORY: die Größe des Arbeitsspeichers. Für die L4-GPU müssen Sie mindestens
16Gi(16 GiB) angeben. Für die NVIDIA RTX PRO 6000 Blackwell-GPU müssen Sie mindestens80Gi(80 GiB) angeben. - GPU_NUMBER: Der Wert
1(eins), da wir nur das Anhängen einer GPU pro Cloud Run-Instanz unterstützen. - GPU_TYPE: Der GPU-Typ. Geben Sie für die L4-GPU den Wert
nvidia-l4(nvidia-L4 Kleinbuchstabe L, nicht numerischer Wert vierzehn) ein. NVIDIA RTX PRO 6000 Blackwell-GPU, geben Sienvidia-rtx-pro-6000ein.
Erstellen oder aktualisieren Sie den Dienst mit dem folgenden Befehl:
gcloud run jobs replace job.yaml
GPU-Einstellungen aufrufen
So rufen Sie die aktuellen GPU-Einstellungen für Ihren Cloud Run-Job auf:
Console
Wechseln Sie in der Google Cloud -Console zur Seite „Cloud Run-Jobs“:
Klicken Sie auf den gewünschten Job, um die Seite Jobdetails zu öffnen.
Klicken Sie auf Jobkonfiguration ansehen und bearbeiten.
Suchen Sie die GPU-Einstellung in den Konfigurationsdetails.
gcloud
Verwenden Sie den folgenden Befehl:
gcloud run jobs describe JOB_NAME
Suchen Sie in der zurückgegebenen Konfiguration nach der GPU-Einstellung.
GPU-Ressourcen von einem Job trennen
Sie können GPU-Ressourcen über die Google Cloud Console, die Google Cloud CLI oder YAML von einem Job trennen.
Console
Wechseln Sie in der Google Cloud -Console zur Seite Cloud Run-Jobs:
Klicken Sie in der Jobliste auf einen Job, um die Details dieses Jobs zu öffnen.
Klicken Sie auf Jobkonfiguration ansehen und bearbeiten.
Klicken Sie auf Container, Verbindungen, Sicherheit, um die Seite mit den Jobattributen zu maximieren.
Klicken Sie auf den Tab Container.
- Entfernen Sie das Häkchen aus dem Kästchen für die GPU.
Klicken Sie auf Aktualisieren.
gcloud
Wenn Sie GPU-Ressourcen von Ihrem Cloud Run-Job trennen möchten, legen Sie die Anzahl der GPUs mit dem Befehl gcloud run jobs update auf 0 fest:
gcloud run jobs update JOB_NAME --gpu 0
Ersetzen Sie JOB_NAME durch den Namen Ihres Cloud Run-Jobs.
YAML
Wenn Sie einen neuen Job erstellen, überspringen Sie diesen Schritt. Wenn Sie einen vorhandenen Job aktualisieren, laden Sie die zugehörige YAML-Konfiguration herunter:
gcloud run jobs describe JOB_NAME --format export > job.yaml
Löschen Sie die Zeilen
nvidia.com/gpu:,run.googleapis.com/gpu-zonal-redundancy-disabled: 'true'undnodeSelector: run.googleapis.com/accelerator: GPU_TYPE.Erstellen oder aktualisieren Sie den Dienst mit dem folgenden Befehl:
gcloud run jobs replace job.yaml
Treiberbibliotheken
Standardmäßig werden alle NVIDIA L4- und NVIDIA RTX PRO 6000 Blackwell-GPU-Treiberbibliotheken unter /usr/local/nvidia/lib64 bereitgestellt. Cloud Run hängt diesen Pfad automatisch an die Umgebungsvariable LD_LIBRARY_PATH (d.h. ${LD_LIBRARY_PATH}:/usr/local/nvidia/lib64) des Containers mit der GPU an. So kann der dynamische Linker die NVIDIA-Treiberbibliotheken finden. Der Linker sucht und löst Pfade in der Reihenfolge auf, die Sie in der Umgebungsvariable LD_LIBRARY_PATH angeben. Alle Werte, die Sie in dieser Variablen angeben, haben Vorrang vor dem Standardpfad für Cloud Run-Treiberbibliotheken /usr/local/nvidia/lib64.
Wenn Sie eine CUDA-Version höher als 12.2 verwenden möchten, ist es am einfachsten, von einem neueren NVIDIA-Basis-Image abzuhängen, auf dem bereits Pakete für die Aufwärtskompatibilität installiert sind. Eine weitere Möglichkeit besteht darin, die NVIDIA-Pakete für die Aufwärtskompatibilität manuell zu installieren und sie zu LD_LIBRARY_PATH hinzuzufügen. Sehen Sie sich die Kompatibilitätsmatrix von NVIDIA an, um zu ermitteln, welche CUDA-Versionen mit der bereitgestellten NVIDIA-Treiberversion aufwärtskompatibel sind.
GPUs und Parallelität
Wenn Sie parallele Aufgaben in einer Jobausführung ausführen, legen Sie den parallelism-Wert auf einen Wert fest, der kleiner als das GPU-Kontingent ohne zonale Redundanz ist, das für Ihr Projekt zugewiesen wurde. Informationen zum Anfordern einer Kontingenterhöhung finden Sie unter Kontingent erhöhen. GPU-Aufgaben werden so schnell wie möglich gestartet. Der Höchstwert hängt davon ab, wie viel GPU-Kontingent Sie für das Projekt und die ausgewählte Region zugewiesen haben. Cloud Run-Bereitstellungen schlagen fehl, wenn Sie die Parallelität auf einen Wert über dem GPU-Kontingentlimit festlegen.
Um das GPU-Kontingent zu berechnen, das von Ihrem Job pro Ausführung verwendet wird, multiplizieren Sie die Anzahl der GPUs pro Jobaufgabe mit dem Parallelitätswert. Wenn Sie beispielsweise ein GPU-Kontingent von 10 haben und Ihren Cloud Run-Job mit --gpu=1, --parallelism=10 bereitstellen, werden alle 10 GPU-Kontingente für Ihren Job verwendet. Wenn Sie die Bereitstellung mit --gpu=1, --parallelism=20 vornehmen, schlägt sie fehl.
Weitere Informationen finden Sie unter Best Practices: Cloud Run-Jobs mit GPUs.
Nächste Schritte
Anleitungen finden Sie unter KI-Inferenzen auf Cloud Run mit GPUs ausführen.