Wenn Sie ein benutzerdefiniertes Training durchführen, wird der Trainingscode auf einer oder mehreren VM-Instanzen ausgeführt. Sie können konfigurieren, welche VM-Typen für das Training verwendet werden sollen: Wenn Sie VMs mit mehr Rechenressourcen verwenden, kann das Training beschleunigt werden und Sie können mit größeren Datasets arbeiten. Dies kann jedoch auch höhere Trainingskosten verursachen.
In einigen Fällen können Sie GPUs auch verwenden, um das Training zu beschleunigen. Für GPUs fallen zusätzliche Kosten an.
Sie können auch den Typ und die Größe der Bootlaufwerke Ihrer Trainings-VMs anpassen.
In diesem Dokument werden die verschiedenen Rechenressourcen beschrieben, die Sie für das benutzerdefinierte Training verwenden können, und wie diese konfiguriert werden.
Kosten und Verfügbarkeit verwalten
Vertex AI bietet folgende Funktionen, um die Kosten zu kontrollieren und die Verfügbarkeit von VM-Ressourcen zu gewährleisten:
Um sicherzustellen, dass VM-Ressourcen verfügbar sind, wenn Ihre Trainings-Jobs sie benötigen, können Sie Compute Engine-Reservierungen verwenden. Reservierungen bieten ein hohes Maß an Sicherheit beim Beschaffen von Kapazitäten für Ressourcen von Compute Engine. Weitere Informationen finden Sie unter Reservierungen mit Schulungen verwenden.
Mit Spot-VMs können Sie die Kosten für die Ausführung Ihrer Trainingsjobs senken. Spot-VMs sind VM-Instanzen, die überschüssige Compute Engine-Kapazität darstellen. Für Spot-VMs gibt es erhebliche Rabatte. Compute Engine kann jedoch Spot-VMs jederzeit vorzeitig beenden oder löschen, um die Kapazität zurückzugewinnen. Weitere Informationen finden Sie unter Spot-VMs für das Training verwenden.
Bei benutzerdefinierten Trainingsjobs, für die GPU-Ressourcen angefordert werden, können Sie mit Dynamic Workload Scheduler die Jobs basierend darauf planen, wann die angeforderten GPU-Ressourcen verfügbar werden. Weitere Informationen finden Sie unter Trainingsjobs basierend auf der Ressourcenverfügbarkeit planen.
Hier geben Sie Rechenressourcen an
Geben Sie die Konfigurationsdetails in einem WorkerPoolSpec
an. Je nachdem, wie Sie das benutzerdefinierte Training durchführen, platzieren Sie diese WorkerPoolSpec
in einem der folgenden API-Felder:
Wenn Sie eine
CustomJob
-Ressource erstellen, geben SieWorkerPoolSpec
inCustomJob.jobSpec.workerPoolSpecs
an.Wenn Sie die Google Cloud CLI verwenden, können Sie das Flag
--worker-pool-spec
oder--config
des Befehlsgcloud ai custom-jobs create
verwenden, um Optionen für Worker-Pools festzulegenWeitere Informationen zum Erstellen eines
CustomJob
.Wenn Sie eine
HyperparameterTuningJob
-Ressource erstellen, geben SieWorkerPoolSpec
inHyperparameterTuningJob.trialJobSpec.workerPoolSpecs
an.Wenn Sie die gcloud CLI verwenden, können Sie mit dem Flag
--config
im Befehlgcloud ai hpt-tuning-jobs create
die Optionen für Worker-Pools angeben.Weitere Informationen zum Erstellen von
HyperparameterTuningJob
.Wenn Sie eine
TrainingPipeline
-Ressource ohne Hyperparameter-Abstimmung erstellen, geben SieWorkerPoolSpec
inTrainingPipeline.trainingTaskInputs.workerPoolSpecs
an.Weitere Informationen zum Erstellen einer benutzerdefinierten
TrainingPipeline
Wenn Sie eine
TrainingPipeline
mit Hyperparameter-Abstimmung erstellen, geben SieWorkerPoolSpec
inTrainingPipeline.trainingTaskInputs.trialJobSpec.workerPoolSpecs
an.
Wenn Sie ein verteiltes Training machen, können Sie für jeden Worker-Pool unterschiedliche Einstellungen verwenden.
Maschinentypen
In WorkerPoolSpec
müssen Sie einen der folgenden Maschinentypen im Feld machineSpec.machineType
angeben. Jedes Replikat im Worker-Pool wird auf einer separaten VM mit dem angegebenen Maschinentyp ausgeführt.
a2-ultragpu-1g
*a2-ultragpu-2g
*a2-ultragpu-4g
*a2-ultragpu-8g
*a2-highgpu-1g
*a2-highgpu-2g
*a2-highgpu-4g
*a2-highgpu-8g
*a2-megagpu-16g
*a3-highgpu-8g
*e2-standard-4
e2-standard-8
e2-standard-16
e2-standard-32
e2-highmem-2
e2-highmem-4
e2-highmem-8
e2-highmem-16
e2-highcpu-16
e2-highcpu-32
n2-standard-4
n2-standard-8
n2-standard-16
n2-standard-32
n2-standard-48
n2-standard-64
n2-standard-80
n2-highmem-2
n2-highmem-4
n2-highmem-8
n2-highmem-16
n2-highmem-32
n2-highmem-48
n2-highmem-64
n2-highmem-80
n2-highcpu-16
n2-highcpu-32
n2-highcpu-48
n2-highcpu-64
n2-highcpu-80
n1-standard-4
n1-standard-8
n1-standard-16
n1-standard-32
n1-standard-64
n1-standard-96
n1-highmem-2
n1-highmem-4
n1-highmem-8
n1-highmem-16
n1-highmem-32
n1-highmem-64
n1-highmem-96
n1-highcpu-16
n1-highcpu-32
n1-highcpu-64
n1-highcpu-96
c2-standard-4
c2-standard-8
c2-standard-16
c2-standard-30
c2-standard-60
ct5lp-hightpu-1t
*ct5lp-hightpu-4t
*ct5lp-hightpu-8t
*c2-standard-60
c2-standard-60
c2-standard-60
c2-standard-60
m1-ultramem-40
m1-ultramem-80
m1-ultramem-160
m1-megamem-96
g2-standard-4
*g2-standard-8
*g2-standard-12
*g2-standard-16
*g2-standard-24
*g2-standard-32
*g2-standard-48
*g2-standard-96
*cloud-tpu
*
* Maschinentypen mit Sternchen in der vorherigen Liste müssen mit bestimmten GPUs oder TPUs verwendet werden. Weitere Informationen finden Sie in den folgenden Abschnitten dieses Leitfadens.
Weitere Informationen zu den technischen Spezifikationen jedes Maschinentyps finden Sie in der Compute Engine-Dokumentation zu Maschinentypen. Weitere Informationen zu den Kosten für die Verwendung der einzelnen Maschinentypen finden Sie unter Preise.
In den folgenden Beispielen wird gezeigt, wo Sie beim Erstellen eines CustomJob
einen Maschinentyp angeben:
Console
In der Google Cloud Console können Sie einen CustomJob
nicht direkt erstellen. Sie können jedoch eine TrainingPipeline
erstellen, die einen CustomJob
erstellt. Wenn Sie eine TrainingPipeline
in der Google Cloud Console erstellen, geben Sie einen Maschinentyp für jeden Worker-Pool im Schritt Computing und Preise im Feld Maschinentyp ein.
gcloud
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--worker-pool-spec=machine-type=MACHINE_TYPE,replica-count=REPLICA_COUNT,container-image-uri=CUSTOM_CONTAINER_IMAGE_URI
Java
Bevor Sie dieses Beispiel anwenden, folgen Sie den Java Schritten zur Einrichtung in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Java API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Node.js
Bevor Sie dieses Beispiel anwenden, folgen Sie den Node.js-Einrichtungsschritten in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Node.js API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Informationen zur Installation des Vertex AI SDK for Python finden Sie unter Vertex AI SDK for Python installieren. Weitere Informationen finden Sie in der Referenzdokumentation zur Python API.
Weitere Informationen finden Sie im Leitfaden zum Erstellen von CustomJob
.
GPUs
Wenn Sie Ihren Trainingscode zur Verwendung von GPUs geschrieben haben, können Sie Ihren Worker-Pool so konfigurieren, dass auf jeder VM eine oder mehrere GPUs verwendet werden. Für die Verwendung von GPUs müssen Sie
den Maschinentyp A2, N1 oder G2 verwenden. Außerdem können kleinere Maschinentypen wie n1-highmem-2
mit GPUs dazu führen, dass das Logging bei einigen Arbeitslasten aufgrund von CPU-Einschränkungen fehlschlägt. Wenn Ihr Trainingsjob keine Logs mehr zurückgibt, sollten Sie einen größeren Maschinentyp auszuwählen.
Vertex AI unterstützt die folgenden GPU-Typen für benutzerdefiniertes Training:
NVIDIA_H100_80GB
NVIDIA_A100_80GB
NVIDIA_TESLA_A100
(NVIDIA A100 40 GB)NVIDIA_TESLA_P4
NVIDIA_TESLA_P100
NVIDIA_TESLA_T4
NVIDIA_TESLA_V100
NVIDIA_L4
Weitere Informationen zur technischen Spezifikation für jeden GPU-Typ finden Sie in der kurzen Dokumentation zu Compute Engine für GPUs. Weitere Informationen zu den Kosten für die Verwendung der einzelnen Maschinentypen für benutzerdefiniertes Training finden Sie unter Preise.
Geben Sie in Ihrem WorkerPoolSpec
den GPU-Typ an, den Sie im Feld machineSpec.acceleratorType
verwenden möchten, sowie die Anzahl der GPUs, die jede VM des Worker-Pools im Feld machineSpec.acceleratorCount
verwenden soll. Ihre Auswahl für diese Felder muss jedoch die folgenden Einschränkungen erfüllen:
Der ausgewählte GPU-Typ muss an dem Ort verfügbar sein, an dem Sie benutzerdefiniertes Training durchführen. Nicht alle GPU-Typen sind in allen Regionen verfügbar. Weitere Informationen zur regionalen Verfügbarkeit.
Sie können in der Konfiguration nur eine bestimmte Anzahl von GPUs verwenden. Sie können beispielsweise 2 oder 4
NVIDIA_TESLA_T4
-GPUs auf einer VM verwenden, aber nicht 3. Die für die einzelnen GPU-Typen gültigenacceleratorCount
-Werte finden Sie in der unten stehenden Kompatibilitätstabelle.Achten Sie darauf, dass Ihre GPU-Konfiguration für den verwendeten Maschinentyp ausreichend virtuelle CPUs und genügend Arbeitsspeicher bietet. Wenn Sie beispielsweise in Ihrem Worker-Pool den Maschinentyp
n1-standard-32
verwenden, hat jede VM 32 virtuelle CPUs und 120 GB Arbeitsspeicher. Da jedeNVIDIA_TESLA_V100
-GPU bis zu 12 virtuelle CPUs und 76 GB Arbeitsspeicher bereitstellen kann, müssen Sie mindestens 4 GPUs für jeden1-standard-32
-VM verwenden, um die Anforderungen zu erfüllen. (2 GPUs bieten nicht genügend Ressourcen und Sie können nicht 3 GPUs angeben.)Diese Anforderung wird in der unten stehenden Kompatibilitätstabelle beschrieben.
Beachten Sie die folgende zusätzliche Einschränkung bei der Verwendung von GPUs für benutzerdefiniertes Training, die sich von der Verwendung von GPUs mit Compute Engine unterscheidet:
- Eine Konfiguration mit 4
NVIDIA_TESLA_P100
-GPUs bietet in allen Regionen und Zonen nur bis zu 64 virtuelle CPUs und bis zu 208 GB Arbeitsspeicher.
- Eine Konfiguration mit 4
Die folgende Kompatibilitätstabelle enthält die gültigen Werte für machineSpec.acceleratorCount
, abhängig von Ihren Auswahlmöglichkeiten für machineSpec.machineType
und machineSpec.acceleratorType
:
Gültige GPU-Anzahl für Maschinentypen | |||||||||
---|---|---|---|---|---|---|---|---|---|
Maschinentyp | NVIDIA_H100_80GB |
NVIDIA_A100_80GB |
NVIDIA_TESLA_A100 |
NVIDIA_TESLA_P4 |
NVIDIA_TESLA_P100 |
NVIDIA_TESLA_T4 |
NVIDIA_TESLA_V100 |
NVIDIA_L4 |
|
a3-highgpu-8g |
8 | ||||||||
a2-ultragpu-1g |
1 | ||||||||
a2-ultragpu-2g |
2 | ||||||||
a2-ultragpu-4g |
4 | ||||||||
a2-ultragpu-8g |
8 | ||||||||
a2-highgpu-1g |
1 | ||||||||
a2-highgpu-2g |
2 | ||||||||
a2-highgpu-4g |
4 | ||||||||
a2-highgpu-8g |
8 | ||||||||
a2-megagpu-16g |
16 | ||||||||
n1-standard-4 |
1, 2, 4 | 1, 2, 4 | 1, 2, 4 | 1, 2, 4, 8 | |||||
n1-standard-8 |
1, 2, 4 | 1, 2, 4 | 1, 2, 4 | 1, 2, 4, 8 | |||||
n1-standard-16 |
1, 2, 4 | 1, 2, 4 | 1, 2, 4 | 2, 4, 8 | |||||
n1-standard-32 |
2, 4 | 2, 4 | 2, 4 | 4, 8 | |||||
n1-standard-64 |
4 | 4 | 8 | ||||||
n1-standard-96 |
4 | 4 | 8 | ||||||
n1-highmem-2 |
1, 2, 4 | 1, 2, 4 | 1, 2, 4 | 1, 2, 4, 8 | |||||
n1-highmem-4 |
1, 2, 4 | 1, 2, 4 | 1, 2, 4 | 1, 2, 4, 8 | |||||
n1-highmem-8 |
1, 2, 4 | 1, 2, 4 | 1, 2, 4 | 1, 2, 4, 8 | |||||
n1-highmem-16 |
1, 2, 4 | 1, 2, 4 | 1, 2, 4 | 2, 4, 8 | |||||
n1-highmem-32 |
2, 4 | 2, 4 | 2, 4 | 4, 8 | |||||
n1-highmem-64 |
4 | 4 | 8 | ||||||
n1-highmem-96 |
4 | 4 | 8 | ||||||
n1-highcpu-16 |
1, 2, 4 | 1, 2, 4 | 1, 2, 4 | 2, 4, 8 | |||||
n1-highcpu-32 |
2, 4 | 2, 4 | 2, 4 | 4, 8 | |||||
n1-highcpu-64 |
4 | 4 | 4 | 8 | |||||
n1-highcpu-96 |
4 | 4 | 8 | ||||||
g2-standard-4 |
1 | ||||||||
g2-standard-8 |
1 | ||||||||
g2-standard-12 |
1 | ||||||||
g2-standard-16 |
1 | ||||||||
g2-standard-24 |
2 | ||||||||
g2-standard-32 |
1 | ||||||||
g2-standard-48 |
4 | ||||||||
g2-standard-96 |
8 |
In den folgenden Beispielen wird gezeigt, wo Sie GPUs angeben können, wenn Sie einen CustomJob
erstellen:
Console
In der Google Cloud Console können Sie einen CustomJob
nicht direkt erstellen.
Sie können jedoch ein TrainingPipeline
erstellen, das eine CustomJob
erstellt. Wenn Sie eine TrainingPipeline
in der Google Cloud Console erstellen, können Sie im Schritt Computing und Preise GPUs für jeden Worker-Pool angeben. Geben Sie zuerst einen Maschinentyp an. Anschließend können Sie GPU-Details in den Feldern Beschleunigertyp und Beschleunigeranzahl angeben.
gcloud
Wenn Sie GPUs mit der Google Cloud CLI angeben möchten, müssen Sie eine config.yaml
-Datei verwenden. Beispiel:
config.yaml
workerPoolSpecs:
machineSpec:
machineType: MACHINE_TYPE
acceleratorType: ACCELERATOR_TYPE
acceleratorCount: ACCELERATOR_COUNT
replicaCount: REPLICA_COUNT
containerSpec:
imageUri: CUSTOM_CONTAINER_IMAGE_URI
Führen Sie dann einen Befehl wie den folgenden aus:
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--config=config.yaml
Node.js
Bevor Sie dieses Beispiel anwenden, folgen Sie den Node.js Schritten zur Einrichtung in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Node.js API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Informationen zur Installation des Vertex AI SDK for Python finden Sie unter Vertex AI SDK for Python installieren. Weitere Informationen finden Sie in der Referenzdokumentation zur Python API.
Weitere Informationen finden Sie im Leitfaden zum Erstellen von CustomJob
.
TPUs
Wenn Sie Tensor Processing Units (TPUs) für das benutzerdefinierte Training in Vertex AI verwenden möchten, können Sie einen Worker-Pool für die Verwendung einer TPU-VM konfigurieren.
Wenn Sie eine TPU-VM in Vertex AI verwenden, dürfen Sie nur einen einzelnen Worker-Pool für benutzerdefiniertes Training verwenden. Dieser Worker-Pool muss so konfiguriert werden, dass nur ein Replikat verwendet wird.
TPU v2 und v3
Zur Verwendung von TPU v2- oder v3-VMs in Ihrem Worker-Pool müssen Sie eine der folgenden Konfigurationen verwenden:
Geben Sie zum Konfigurieren einer TPU-VM mit TPU v2 die folgenden Felder in
WorkerPoolSpec
an:- Setzen Sie
machineSpec.machineType
aufcloud-tpu
. - Setzen Sie
machineSpec.acceleratorType
aufTPU_V2
. - Legen Sie
machineSpec.acceleratorCount
für einzelne TPUs auf8
oder für TPU-Pods auf32 or multiple of 32
fest. - Setzen Sie
replicaCount
auf1
.
- Setzen Sie
Geben Sie zum Konfigurieren einer TPU-VM mit TPU v3 die folgenden Felder in
WorkerPoolSpec
an:- Setzen Sie
machineSpec.machineType
aufcloud-tpu
. - Setzen Sie
machineSpec.acceleratorType
aufTPU_V3
. - Legen Sie
machineSpec.acceleratorCount
für einzelne TPUs auf8
oder für TPU-Pods auf32+
fest. - Setzen Sie
replicaCount
auf1
.
- Setzen Sie
TPU v5e
TPU v5e erfordert JAX 0.4.6 oder höher, TensorFlow 2.15+ oder PyTorch 2.1+. Um eine TPU-VM mit TPU v5e zu konfigurieren, geben Sie die folgenden Felder in WorkerPoolSpec
an:
- Legen Sie
machineSpec.machineType
aufct5lp-hightpu-1t
,ct5lp-hightpu-4t
oderct5lp-hightpu-8t
fest. - Legen Sie für
machineSpec.tpuTopology
eine unterstützte Topologie für den Maschinentyp fest. Weitere Informationen finden Sie in der folgenden Tabelle. - Setzen Sie
replicaCount
auf1
.
In der folgenden Tabelle sind die TPU v5e-Maschinentypen und -Topologien aufgeführt, die für benutzerdefiniertes Training unterstützt werden:
Maschinentyp | Topologie | Anzahl der TPU-Chips | Anzahl der VMs | Empfohlener Anwendungsfall |
---|---|---|---|---|
ct5lp-hightpu-1t |
1x1 | 1 | 1 | Kleines bis mittelgroßes Training |
ct5lp-hightpu-4t |
2x2 | 4 | 1 | Kleines bis mittelgroßes Training |
ct5lp-hightpu-8t |
2x4 | 8 | 1 | Kleines bis mittelgroßes Training |
ct5lp-hightpu-4t |
2x4 | 8 | 2 | Kleines bis mittelgroßes Training |
ct5lp-hightpu-4t |
4x4 | 16 | 4 | Umfangreiches Training |
ct5lp-hightpu-4t |
4x8 | 32 | 8 | Umfangreiches Training |
ct5lp-hightpu-4t |
8x8 | 64 | 16 | Umfangreiches Training |
ct5lp-hightpu-4t |
8x16 | 128 | 32 | Umfangreiches Training |
ct5lp-hightpu-4t |
16x16 | 256 | 64 | Umfangreiches Training |
Benutzerdefinierte Trainingsjobs, die auf TPU v5e-VMs ausgeführt werden, sind für Durchsatz und Verfügbarkeit optimiert. Weitere Informationen finden Sie unter Beschleunigertypen für v5e Training.
TPU v5e-Maschinen sind in us-west1
und us-west4
für Vertex AI für ein benutzerdefiniertes Training verfügbar. Weitere Informationen zu TPU v5e finden Sie unter Cloud TPU v5e-Training.
Vergleich der Maschinentypen:
Maschinentyp | ct5lp-hightpu-1t | ct5lp-hightpu-4t | ct5lp-hightpu-8t |
---|---|---|---|
Anzahl der v5e-Chips | 1 | 4 | 8 |
Anzahl der vCPUs | 24 | 112 | 224 |
RAM (GB) | 48 | 192 | 384 |
Anzahl der NUMA-Knoten | 1 | 1 | 2 |
Wahrscheinlichkeit eines vorzeitigen Beendens | Hoch | Mittel | Niedrig |
Beispiel für CustomJob
zum Angeben einer TPU-VM
Das folgende Beispiel zeigt, wie Sie beim Erstellen eines CustomJob
eine TPU-VM angeben:
gcloud
Wenn Sie eine TPU-VM mit dem gcloud CLI-Tool angeben möchten, müssen Sie eine config.yaml
-Datei verwenden.
Wählen Sie einen der folgenden Tabs aus, um ein Beispiel aufzurufen:
TPU v2/v3
workerPoolSpecs:
machineSpec:
machineType: cloud-tpu
acceleratorType: TPU_V2
acceleratorCount: 8
replicaCount: 1
containerSpec:
imageUri: CUSTOM_CONTAINER_IMAGE_URI
TPU v5e
workerPoolSpecs:
machineSpec:
machineType: ct5lp-hightpu-4t
tpuTopology: 4x4
replicaCount: 1
containerSpec:
imageUri: CUSTOM_CONTAINER_IMAGE_URI
Führen Sie dann einen Befehl wie den folgenden aus:
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--config=config.yaml
Python
Bevor Sie dieses Beispiel anwenden, folgen Sie den Python Schritten zur Einrichtung in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Python API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Informationen zum Angeben einer TPU-VM mit dem Vertex AI SDK für Python finden Sie im folgenden Beispiel:
from google.cloud.aiplatform import aiplatform job = aiplatform.CustomContainerTrainingJob( display_name='DISPLAY_NAME', location='us-west1', project='PROJECT_ID', staging_bucket="gs://CLOUD_STORAGE_URI", container_uri='CONTAINER_URI') job.run(machine_type='ct5lp-hightpu-4t', tpu_topology='2x2')
Weitere Informationen zum Erstellen eines benutzerdefinierten Trainingsjobs finden Sie unter Benutzerdefinierte Trainingsjobs erstellen.
Bootlaufwerksoptionen
Sie können die Bootlaufwerke für Ihre Trainings-VMs optional anpassen. Alle VMs in einem Worker-Pool verwenden den gleichen Typ und die gleiche Größe wie das Bootlaufwerk.
Geben Sie das Feld
diskSpec.bootDiskType
in IhremWorkerPoolSpec
an, um den Typ des von jeder Trainings-VM verwendeten Bootlaufwerks anzupassen.Sie können dieses Feld auf
pd-standard
festlegen, um einen nichtflüchtigen Standardspeicher zu verwenden, der von einer Standardfestplatte gesichert wird, oder Sie setzen aufpd-ssd
, um einen nichtflüchtigen SSD-Speicher durch ein SSD zu ersetzen. Der Standardwert istpd-ssd
.Die Verwendung von
pd-ssd
kann die Leistung verbessern, wenn Ihr Trainingscode Daten auf das Laufwerk liest und schreibt. Weitere Informationen zu Laufwerkstypen.Passen Sie die Größe (in GB) des von jeder Trainings-VM verwendeten Bootlaufwerks an. Geben Sie den Parameter im Feld
diskSpec.bootDiskSizeGb
in IhremWorkerPoolSpec
an.Für dieses Feld können Sie eine Ganzzahl zwischen 100 und 64.000 (einschließlich) angeben. Der Standardwert ist
100
.Sie können die Größe des Bootlaufwerks erhöhen, wenn Ihr Trainingscode viele temporäre Daten auf das Laufwerk schreibt. Alle Daten, die Sie auf das Bootlaufwerk schreiben, sind temporär und können nach Abschluss des Trainings nicht mehr abgerufen werden.
Die Änderung des Typs und der Größe Ihrer Bootlaufwerke wirkt sich auf die benutzerdefinierten Trainingspreise aus.
Die folgenden Beispiele zeigen, wo Sie beim Erstellen eines CustomJob
Optionen für Bootlaufwerke angeben können:
Console
In der Google Cloud Console können Sie einen CustomJob
nicht direkt erstellen.
Sie können jedoch ein TrainingPipeline
erstellen, das eine CustomJob
erstellt. Wenn Sie eine TrainingPipeline
in der Google Cloud Console erstellen, können Sie Optionen für Bootlaufwerke für jeden Worker-Pool im Schritt Computing und Preise in der Drop-down-Liste Laufwerkstyp und im Feld Laufwerksgröße (GB) festlegen.
gcloud
Wenn Sie Bootlaufwerksoptionen mit der Google Cloud CLI angeben möchten, müssen Sie eine config.yaml
-Datei verwenden. Beispiel:
config.yaml
workerPoolSpecs:
machineSpec:
machineType: MACHINE_TYPE
diskSpec:
bootDiskType: DISK_TYPE
bootDiskSizeGb: DISK_SIZE
replicaCount: REPLICA_COUNT
containerSpec:
imageUri: CUSTOM_CONTAINER_IMAGE_URI
Führen Sie dann einen Befehl wie den folgenden aus:
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--config=config.yaml
Weitere Informationen finden Sie im Leitfaden zum Erstellen von CustomJob
.
Nächste Schritte
- Weitere Informationen zum Ausführen benutzerdefinierter Trainingsjobs finden Sie unter Erstellen einer nichtflüchtigen Ressource.
- Weitere Informationen zum Ausführen eines benutzerdefinierten Trainings erhalten Sie unter
CustomJob
erstellen.