申請使用 TPU Spot VM
Spot VM 提供未使用的容量,並大幅降低費率。Spot VM 可能隨時遭到先占,但與先占 TPU 不同,Spot VM 沒有執行時間上限。如要重新啟動 Spot VM 執行個體或 MIG,必須先刪除再重新建立。
如要進一步瞭解 Spot VM,請參閱 Compute Engine 說明文件中的 Spot VM 相關資訊。
建立 TPU Spot VM
您可以建立個別的 TPU Spot VM,也可以將其納入代管執行個體群組 (MIG)。
使用 MIG 建立多主機切片 (建議)
如要使用 MIG 建立 TPU Spot VM,請在執行個體範本中指定 Spot 佈建模型。
建立執行個體範本:
gcloud
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --project=PROJECT_ID \ --machine-type=MACHINE_TYPE \ --maintenance-policy=TERMINATE \ --instance-termination-action=STOP \ --provisioning-model=SPOT \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECTREST
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "name": "INSTANCE_TEMPLATE_NAME", "properties": { "machineType": "MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" } } ], "scheduling": { "onHostMaintenance": "TERMINATE", "provisioningModel": "SPOT", "instanceTerminationAction": "STOP" }, "networkInterfaces": [ { "network": "global/networks/default" } ] } }' \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates"替換下列預留位置:
建立工作負載政策
下列指令會建立工作負載政策,單一主機的切片可省略這項設定。
gcloud
gcloud compute resource-policies create workload-policy WORKLOAD_POLICY_NAME \ --type=high-throughput \ --accelerator-topology=TOPOLOGY \ --region=REGIONREST
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "name": "WORKLOAD_POLICY_NAME", "workloadPolicy": { "type": "HIGH_THROUGHPUT", "acceleratorTopology": "TOPOLOGY" } }' \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies"替換下列預留位置:
建立 MIG:
gcloud
gcloud compute instance-groups managed create MIG_NAME \ --size=MIG_SIZE \ --target-size-policy-mode=bulk \ --template=INSTANCE_TEMPLATE_URL \ --zone=ZONE \ --default-action-on-vm-failure=do-nothing \ --workload-policy=WORKLOAD_POLICY_URLREST
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "name": "MIG_NAME", "targetSize": MIG_SIZE, "targetSizePolicy": { "mode": "BULK" }, "instanceTemplate": "INSTANCE_TEMPLATE_URL", "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" }, "resourcePolicies": { "workloadPolicy": "WORKLOAD_POLICY_URL" } }' \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers"替換下列預留位置:
PROJECT_ID:專案的 ID。 Google CloudMIG_NAME:MIG 的名稱。MIG_SIZE:MIG 的大小。INSTANCE_TEMPLATE_URL:您要用於在 MIG 中建立執行個體的執行個體範本網址。網址可以包含執行個體範本的ID 或名稱。請指定下列其中一個值:- 如果是區域執行個體範本:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - 全域執行個體範本:
INSTANCE_TEMPLATE_ID
- 如果是區域執行個體範本:
ZONE:MIG 的區域。WORKLOAD_POLICY_URL:您要用來在 MIG 中建立執行個體的 workload 政策網址。例如:projects/PROJECT_ID/regions/WORKLOAD_POLICY_REGION/resourcePolicies/WORKLOAD_POLICY_NAME。
使用單一 TPU VM
您也可以建立單一 TPU Spot VM。
gcloud
gcloud compute instances create TPU_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--provisioning-model=SPOT \
--instance-termination-action=DELETE \
--maintenance-policy=TERMINATE
REST
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"name": "TPU_NAME",
"machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
"disks": [
{
"boot": true,
"initializeParams": {
"sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
}
}
],
"scheduling": {
"onHostMaintenance": "TERMINATE",
"provisioningModel": "SPOT",
"instanceTerminationAction": "DELETE"
},
"networkInterfaces": [
{
"network": "global/networks/default"
}
]
}' \
"https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances"
替換下列預留位置:
- PROJECT_ID:專案的 ID。 Google Cloud
- TPU_NAME:TPU VM 的名稱。
- MACHINE_TYPE:TPU VM 的機型 (例如
ct6e-standard-8t)。 - IMAGE_FAMILY:TPU VM 的作業系統映像檔系列。如要安裝特定 OS 版本,請使用
--image旗標。如要進一步瞭解 OS 映像檔,請參閱「OS 映像檔」。 - IMAGE_PROJECT:包含 OS 映像檔的專案。如果是 TPU 映像檔,則為
ubuntu-os-accelerator-images。 - ZONE:TPU VM 的區域 (例如
us-central1-b)。
如要進一步瞭解 Compute Engine 中的 Spot VM,請參閱「Spot VM」。
定價與配額
TPU Spot VM 的價格遠低於隨選和預留 TPU。如要進一步瞭解定價,請參閱 Cloud TPU 定價。
如要使用 TPU Spot VM,必須有先占配額。詳情請參閱「配額」。
後續步驟
- 瞭解如何管理 TPU