Gérer les VM Spot TPU

Les VM Spot rendent disponible la capacité inutilisée à des tarifs très avantageux. Les VM Spot peuvent être préemptées (arrêtées) à tout moment, mais contrairement aux TPU préemptibles, la durée d'exécution n'est pas limitée. Vous ne pouvez pas redémarrer les VM Spot TPU, et vous devez les recréer après la préemption. Pour en savoir plus sur les VM Spot en général, consultez la documentation Compute Engine sur les VM Spot.

Créer des VM Spot TPU

Vous pouvez créer des VM Spot TPU à l'aide de ressources en file d'attente, ce qui ajoute votre demande de création à une file d'attente et vous permet de recevoir de la capacité une fois qu'elle est disponible. Il est recommandé de créer des TPU en tant que ressources en file d'attente. Pour en savoir plus, consultez le guide de l'utilisateur des ressources en file d'attente.

L'exemple suivant montre comment créer des VM TPU Spot à l'aide de ressources mises en file d'attente:

gcloud

Ajoutez l'option --spot à la commande gcloud compute tpus queued-resources:

gcloud compute tpus queued-resources create QUEUED_RESOURCE_ID \
    --node-id=NODE_ID \
    --zone=europe-west4-a \
    --accelerator-type=v3-8 \
    --runtime-version=tpu-vm-tf-2.18.0-pod-pjrt \
    --spot

curl

Ajoutez spot: {} au corps de la requête:

curl -X POST https://tpu.googleapis.com/v2alpha1/projects/PROJECT_ID/locations/europe-west4-a/queuedResources?queued_resource_id=QUEUED_RESOURCE_ID \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{
        tpu: {
        node_spec: {
            parent: "projects/PROJECT_ID/locations/europe-west4-a",
            node_id: "NODE_ID",
            node: {
            accelerator_type: "v3-8",
            runtime_version: "tpu-vm-tf-2.18.0-pod-pjrt"
            }
        }
        },
        spot: {}
    }'

Console

  1. Dans la console Google Cloud, accédez à la page TPU:

    Accéder aux TPU

  2. Cliquez sur Créer un TPU.

  3. Dans le champ Nom, saisissez un nom pour votre TPU.

  4. Dans le champ Zone, sélectionnez la zone dans laquelle vous souhaitez créer le TPU.

  5. Dans le champ Type de TPU, sélectionnez un type d'accélérateur. Le type d'accélérateur spécifie la version et la taille du Cloud TPU que vous souhaitez créer. Pour en savoir plus sur les types d'accélérateurs compatibles avec chaque version de TPU, consultez la section Versions de TPU.

  6. Dans le champ Version logicielle du TPU, sélectionnez une version logicielle. Lorsque vous créez une VM Cloud TPU, la version logicielle TPU spécifie la version de l'environnement d'exécution TPU à installer. Pour en savoir plus, consultez la section Images de VM TPU.

  7. Cliquez sur le bouton Activer la mise en file d'attente.

  8. Dans le champ Nom de la ressource mise en file d'attente, saisissez un nom pour votre requête de ressource mise en file d'attente.

  9. Développez la section Gestion.

  10. Cochez la case Transformer en VM Spot TPU.

  11. Cliquez sur Créer.

Vous pouvez également créer des VM Spot TPU sans utiliser de ressources en file d'attente:

gcloud

Ajoutez l'option --spot à la commande gcloud compute tpus tpu-vm:

gcloud compute tpus tpu-vm create TPU_NAME \
    --zone=europe-west4-a \
    --accelerator-type=v3-8 \
    --version=tpu-vm-tf-2.18.0-pod-pjrt \
    --spot

curl

Ajoutez scheduling_config: {spot: true} au corps de la requête:

curl -X POST https://tpu.googleapis.com/v2/projects/PROJECT_ID/locations/europe-west4-a/nodes?node_id=TPU_NAME \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{
        accelerator_type: "v3-8",
        runtime_version: "tpu-vm-tf-2.18.0-pod-pjrt",
        network_config: {enable_external_ips: true},
        scheduling_config: {spot: true}
    }'

Console

  1. Dans la console Google Cloud, accédez à la page TPU:

    Accéder aux TPU

  2. Cliquez sur Créer un TPU.

  3. Dans le champ Nom, saisissez un nom pour votre TPU.

  4. Dans le champ Zone, sélectionnez la zone dans laquelle vous souhaitez créer le TPU.

  5. Dans le champ Type de TPU, sélectionnez un type d'accélérateur. Le type d'accélérateur spécifie la version et la taille du Cloud TPU que vous souhaitez créer. Pour en savoir plus sur les types d'accélérateurs compatibles avec chaque version de TPU, consultez la section Versions de TPU.

  6. Dans le champ Version logicielle du TPU, sélectionnez une version logicielle. Lorsque vous créez une VM Cloud TPU, la version logicielle TPU spécifie la version de l'environnement d'exécution TPU à installer. Pour en savoir plus, consultez la section Images de VM TPU.

  7. Développez la section Gestion.

  8. Cochez la case Transformer en VM Spot TPU.

  9. Cliquez sur Créer.

Vérifier si une VM TPU est une VM Spot

gcloud

Pour vérifier si votre VM TPU est une VM Spot, utilisez la commande describe:

gcloud compute tpus tpu-vm describe TPU_NAME --zone=europe-west4-a

Si la VM TPU est une VM Spot, la sortie inclut le champ spot défini sur true, comme suit:

...
schedulingConfig:
spot: true
...

Console

  1. Dans la console Google Cloud, accédez à la page TPU:

    Accéder aux TPU

  2. Cliquez sur le nom de votre Cloud TPU.

    Si la VM TPU est une VM Spot, le niveau est VM Spot.

Tarifs et quotas

Le prix des VM Spot TPU est nettement inférieur à celui des TPU à la demande et réservés. Pour en savoir plus sur la tarification, consultez la section Tarifs des Cloud TPU.

Vous avez besoin d'un quota préemptif pour utiliser des VM Spot TPU. Pour en savoir plus, consultez la section Quotas.