管理排入佇列的資源
排入佇列的資源可讓您按照佇列順序要求 Cloud TPU 資源。 如果要求排入佇列的資源,該項要求就會列入 Cloud TPU 服務保有的佇列。當要求的資源可用時,系統會將其指派給您的 Google Cloud 專案,供您立即專屬使用。除非您刪除或遭到搶占,否則該 VM 會繼續指派給專案。只有 TPU Spot VM 和先占 TPU 符合搶占資格。
您可以在已加入佇列的資源要求中,指定選用的開始和結束時間。開始時間指定填入請求的最早時間。如果要求未在指定時間前完成,就會過期。要求過期後仍會保留在佇列中。
已加入佇列的資源要求可能處於下列其中一種狀態:
WAITING_FOR_RESOURCES
- 要求已通過初步驗證,並加入佇列。 如果沒有足夠的可用資源,系統就會維持這個狀態,直到資源充足或配置間隔結束為止,才會開始佈建要求。需求量高時,並非所有要求都能立即佈建。如要更可靠地取得 TPU,請考慮購買預訂。
PROVISIONING
- 系統已從佇列中選取要求,並正在分配資源。
ACTIVE
- 要求已分配。排入佇列的資源要求處於
ACTIVE
狀態時,您可以按照「管理 TPU」一文所述管理 TPU VM。 FAILED
- 要求無法完成,可能是因為要求有問題,或是所要求的資源在分配間隔內無法使用。除非明確刪除,否則要求會一直保留在佇列中。
SUSPENDING
- 系統正在刪除與要求相關聯的資源。
SUSPENDED
- 要求中指定的資源已刪除。要求處於
SUSPENDED
狀態時,就不再符合進一步分配的資格。
必要條件
執行本指南中的指令前,請先安裝 Google Cloud CLI、建立 Google Cloud 專案,並啟用 Cloud TPU API。如需操作說明,請參閱設定 Cloud TPU 環境。
如果您使用 Cloud 用戶端程式庫,請按照所用語言的設定說明操作:
要求隨選排入佇列的資源
隨選資源不會遭到搶占,但隨選配額無法保證有足夠的可用 Cloud TPU 資源來滿足您的要求。如要進一步瞭解隨選資源,請參閱「配額類型」。
gcloud
gcloud compute tpus queued-resources create your-queued-resource-id \ --node-id your-node-id \ --project your-project-id \ --zone us-central1-a \ --accelerator-type v5litepod-8 \ --runtime-version v2-alpha-tpuv5-lite
curl
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "{ 'tpu': { 'node_spec': { 'parent': 'projects/your-project-number/locations/us-central1-a', 'node_id': 'your-node-id', 'node': { 'accelerator_type': 'v5litepod-8', 'runtime_version': 'v2-alpha-tpuv5-lite', } } } }" \ https://tpu.googleapis.com/v2alpha1/projects/your-project-id/locations/us-central1-a/queuedResources?queued_resource_id=your-queued-resource-id
控制台
前往 Google Cloud 控制台的「TPUs」頁面:
按一下「建立 TPU」。
在「Name」(名稱) 欄位中,輸入 TPU 的名稱。
在「Zone」(可用區) 方塊中,選取要建立 TPU 的可用區。
在「TPU type」(TPU 類型) 方塊中,選取加速器類型。加速器類型會指定要建立的 Cloud TPU 版本和大小。如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱「TPU 版本」。
在「TPU 軟體版本」方塊中,選取軟體版本。建立 Cloud TPU VM 時,TPU 軟體版本會指定要安裝的 TPU 執行階段版本。詳情請參閱「TPU 軟體版本」。
按一下「啟用佇列」切換鈕。
在「Queued resource name」(已加入佇列的資源名稱) 欄位中,輸入已加入佇列的資源要求名稱。
按一下「建立」,建立已加入佇列的資源要求。
Java
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
使用預約要求排入佇列的資源
您可以使用預留項目要求佇列資源。如要購買預訂,請與 Google Cloud 帳戶團隊聯絡。
gcloud
gcloud compute tpus queued-resources create your-queued-resource-id \ --node-id your-node-id \ --project your-project-id \ --zone us-central1-a \ --accelerator-type v5litepod-8 \ --runtime-version v2-alpha-tpuv5-lite \ --reserved
指令參數說明
curl
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "{ 'tpu': { 'node_spec': { 'parent': 'projects/your-project-number/locations/us-central1-a', 'node_id': 'your-node-id', 'node': { 'accelerator_type': 'v5litepod-8', 'runtime_version': 'v2-alpha-tpuv5-lite', } } }, 'guaranteed': { 'reserved': true, } }" \ https://tpu.googleapis.com/v2alpha1/projects/your-project-id/locations/us-central1-a/queuedResources?queued_resource_id=your-queued-resource-id
指令參數說明
控制台
前往 Google Cloud 控制台的「TPUs」頁面:
按一下「建立 TPU」。
在「Name」(名稱) 欄位中,輸入 TPU 的名稱。
在「Zone」(可用區) 方塊中,選取要建立 TPU 的可用區。
在「TPU type」(TPU 類型) 方塊中,選取加速器類型。加速器類型會指定要建立的 Cloud TPU 版本和大小。如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱「TPU 版本」。
在「TPU 軟體版本」方塊中,選取軟體版本。建立 Cloud TPU VM 時,TPU 軟體版本會指定要安裝的 TPU 執行階段版本。詳情請參閱「TPU 軟體版本」。
按一下「啟用佇列」切換鈕。
在「Queued resource name」(已加入佇列的資源名稱) 欄位中,輸入已加入佇列的資源要求名稱。
展開「管理」部分。
勾選「使用現有的預留項目」核取方塊。
按一下「建立」,建立已加入佇列的資源要求。
要求 TPU Spot VM 佇列資源
Spot VM 是可隨時先占並指派給其他工作負載的資源。Spot VM 資源的費用較低,與非 Spot VM 要求相比,您可能更快就能存取資源。如要進一步瞭解 TPU Spot VM,請參閱「管理 TPU Spot VM」。
gcloud
gcloud compute tpus queued-resources create your-queued-resource-id \ --node-id your-node-id \ --project your-project-id \ --zone us-central1-a \ --accelerator-type v5litepod-8 \ --runtime-version v2-alpha-tpuv5-lite \ --spot
curl
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "{ 'tpu': { 'node_spec': { 'parent': 'projects/your-project-number/locations/us-central1-a', 'node_id': 'your-node-id', 'node': { 'accelerator_type': 'v5litepod-8', 'runtime_version': 'v2-alpha-tpuv5-lite' } } }, 'spot': {} }" \ https://tpu.googleapis.com/v2alpha1/projects/your-project-id/locations/us-central1-a/queuedResources?queued_resource_id=your-queued-resource-id
控制台
前往 Google Cloud 控制台的「TPUs」頁面:
按一下「建立 TPU」。
在「Name」(名稱) 欄位中,輸入 TPU 的名稱。
在「Zone」(可用區) 方塊中,選取要建立 TPU 的可用區。
在「TPU type」(TPU 類型) 方塊中,選取加速器類型。加速器類型會指定要建立的 Cloud TPU 版本和大小。如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱「TPU 版本」。
在「TPU 軟體版本」方塊中,選取軟體版本。建立 Cloud TPU VM 時,TPU 軟體版本會指定要安裝的 TPU 執行階段版本。詳情請參閱「TPU 軟體版本」。
按一下「啟用佇列」切換鈕。
在「Queued resource name」(已加入佇列的資源名稱) 欄位中,輸入已加入佇列的資源要求名稱。
展開「管理」部分。
勾選「將此設為 TPU Spot VM」核取方塊。
點選「建立」。
Java
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
要求在指定時間之前或之後分配佇列資源
您可以在已加入佇列的資源要求中,指定選填的開始時間或結束時間。開始時間或開始時間長度會指定填寫要求的最早時間。結束時間或結束時間長度會指定要求保持有效的時間長度。 如果要求未在指定結束時間或指定時間長度內填寫完畢,要求就會過期。要求過期後,仍會保留在佇列中,但不再符合分配資格。
您也可以指定開始時間/時間長度和結束時間/時間長度,藉此指定分配間隔。
如需支援的時間戳記和時間長度格式清單,請參閱「日期時間」。
要求在指定時間後完成排入佇列的資源
在已加入佇列的資源要求中,您可以指定資源應在何時或經過多久後分配。
gcloud
下列指令要求在 2022 年 12 月 14 日上午 9 點後分配 v5p-4096 TPU。
gcloud compute tpus queued-resources create your-queued-resource-id \ --node-id your-node-id \ --project your-project-id \ --zone us-east5-a \ --accelerator-type v5p-4096 \ --runtime-version v2-alpha-tpuv5 \ --valid-after-time 2022-12-14T09:00:00Z
指令參數說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
valid-after-time
- 資源應配置的時間。如要進一步瞭解時間格式,請參閱 Google Cloud CLI 主題 datetime。
curl
下列指令要求在 2022 年 12 月 14 日上午 9 點後分配 v5p-4096 TPU。
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "{ 'tpu': { 'node_spec': { 'parent': 'projects/your-project-number/locations/us-east5-a', 'node_id': 'your-node-id', 'node': { 'accelerator_type': 'v5p-4096', 'runtime_version': 'v2-alpha-tpuv5', } } }, 'queueing_policy': { 'valid_after_time': { 'seconds': 2022-12-14T09:00:00Z } } }" \ https://tpu.googleapis.com/v2alpha1/projects/your-project-id/locations/us-east5-a/queuedResources?queued_resource_id=your-queued-resource-id
指令參數說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
valid-after-time
- 資源應配置的時間。如要進一步瞭解時間格式,請參閱 Google Cloud CLI 主題 datetime。
控制台
前往 Google Cloud 控制台的「TPUs」頁面:
按一下「建立 TPU」。
在「Name」(名稱) 欄位中,輸入 TPU 的名稱。
在「Zone」(可用區) 方塊中,選取要建立 TPU 的可用區。
在「TPU type」(TPU 類型) 方塊中,選取加速器類型。加速器類型會指定要建立的 Cloud TPU 版本和大小。如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱「TPU 版本」。
在「TPU 軟體版本」方塊中,選取軟體版本。建立 Cloud TPU VM 時,TPU 軟體版本會指定要安裝的 TPU 執行階段版本。詳情請參閱 TPU 軟體版本。
按一下「啟用佇列」切換鈕。
在「Queued resource name」(已加入佇列的資源名稱) 欄位中,輸入已加入佇列的資源要求名稱。
在「Start request on」(要求開始時間) 欄位中,輸入應分配資源的時間。
按一下「建立」,建立已加入佇列的資源要求。
以下範例要求在六小時後分配 v5p-32。
gcloud
gcloud compute tpus queued-resources create your-queued-resource-id \ --node-id your-node-id \ --project your-project-id \ --zone us-east5-a \ --accelerator-type v5p-32 \ --runtime-version v2-alpha-tpuv5 \ --valid-after-duration 6h
指令參數說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
valid-after-duration
- TPU 不得佈建的時長。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題 datetime
curl
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "{ 'tpu': { 'node_spec': { 'parent': 'projects/your-project-number/locations/us-east5-a', 'node_id': 'your-node-id', 'node': { 'accelerator_type': 'v5p-32', 'runtime_version': 'v2-alpha-tpuv5', } } }, 'queueing_policy': { 'valid_after_duration': { 'seconds': 21600 } }" \ https://tpu.googleapis.com/v2alpha1/projects/your-project-id/locations/us-east5-a/queuedResources?queued_resource_id=your-queued-resource-id
指令參數說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
valid-after-duration
- TPU 不得佈建的時長。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題 datetime
Java
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
要求在指定時間後過期的排入佇列資源
在佇列資源要求中,您可以指定佇列資源要求保持有效的時間長度。如果要求未在指定時間或時間長度內完成,要求就會失效。
gcloud
下列指令會要求 v5p-4096 TPU。如果我們在 2022 年 12 月 14 日上午 9 點前未收到要求,要求就會失效。
gcloud compute tpus queued-resources create your-queued-resource-id \ --node-id your-node-id \ --project your-project-id \ --zone us-east5-a \ --accelerator-type v5p-4096 \ --runtime-version v2-alpha-tpuv5 \ --valid-until-time 2022-12-14T09:00:00Z
指令參數說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 ID。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
valid-until-time
- 要求取消的時間。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題日期時間。
curl
下列指令會要求 v5p-4096 TPU。如果我們在 2022 年 12 月 14 日上午 9 點前未收到要求,要求就會失效。
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "{ 'tpu': { 'node_spec': { 'parent': 'projects/your-project-number/locations/us-east5-a', 'node_id': 'your-node-id', 'node': { 'accelerator_type': 'v5p-4096', 'runtime_version': 'v2-alpha-tpuv5', } } }, 'queueing_policy': { 'valid_until_time': { 'seconds': 1655197200 } } }" \ https://tpu.googleapis.com/v2alpha1/projects/your-project-id/locations/us-east5-a/queuedResources?queued_resource_id=your-queued-resource-id
指令參數說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 ID。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
valid-until-time
- 要求取消的時間。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題日期時間。
控制台
前往 Google Cloud 控制台的「TPUs」頁面:
按一下「建立 TPU」。
在「Name」(名稱) 欄位中,輸入 TPU 的名稱。
在「Zone」(可用區) 方塊中,選取要建立 TPU 的可用區。
在「TPU type」(TPU 類型) 方塊中,選取加速器類型。加速器類型會指定要建立的 Cloud TPU 版本和大小。如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱「TPU 版本」。
在「TPU 軟體版本」方塊中,選取軟體版本。建立 Cloud TPU VM 時,TPU 軟體版本會指定要安裝的 TPU 執行階段版本。詳情請參閱「TPU 軟體版本」。
按一下「啟用佇列」切換鈕。
在「Queued resource name」(已加入佇列的資源名稱) 欄位中,輸入已加入佇列的資源要求名稱。
在「Cancel request on」(取消要求時間) 欄位中,輸入排隊資源要求未填入時的到期時間。
按一下「建立」,建立已加入佇列的資源要求。
以下範例要求 v5p-32。如果要求未在六小時內填寫完畢,就會失效。
gcloud
gcloud compute tpus queued-resources create your-queued-resource-id \ --node-id your-node-id \ --project your-project-id \ --zone us-east5-a \ --accelerator-type v5p-32 \ --runtime-version v2-alpha-tpuv5 \ --valid-until-duration 6h
指令參數說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
valid-until-duration
- 要求的有效期間。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題 datetime
curl
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "{ 'tpu': { 'node_spec': { 'parent': 'projects/your-project-number/locations/us-east5-a', 'node_id': 'your-node-id', 'node': { 'accelerator_type': 'v5p-32', 'runtime_version': 'v2-alpha-tpuv5', } } }, 'queueing_policy': { 'valid_until_duration': { 'seconds': 21600 } }" \ https://tpu.googleapis.com/v2alpha1/projects/your-project-id/locations/us-east5-a/queuedResources?queued_resource_id=your-queued-resource-id
指令參數說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
valid-until-duration
- 要求的有效期間。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題 datetime
Python
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
要求在指定間隔內分配佇列資源
您可以同時指定開始時間/時間長度和結束時間/時間長度,藉此指定分配間隔。
gcloud
下列指令要求在目前時間的 5 小時 30 分後建立 v5p-32,最晚要在 2022 年 12 月 14 日上午 9 點前建立。
gcloud compute tpus queued-resources create your-queued-resource-id \ --node-id your-node-id \ --project your-project-id \ --zone us-east5-a \ --accelerator-type v5p-32 \ --runtime-version v2-alpha-tpuv5 \ --valid-after-duration 5h30m \ --valid-until-time 2022-12-14T09:00:00Z
指令旗標說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 ID。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
valid-until-time
- 要求取消的時間。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題日期時間。
valid-after-duration
- TPU 不得佈建的時長。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題日期時間。
curl
下列指令要求在目前時間的 5 小時 30 分後建立 v5p-32,最晚要在 2022 年 12 月 14 日上午 9 點前建立。
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "{ 'tpu': { 'node_spec': { 'parent': 'projects/your-project-number/locations/us-east5-a', 'node_id': 'your-node-id', 'node': { 'accelerator_type': 'v5p-32', 'runtime_version': 'v2-alpha-tpuv5', } } }, 'queueing_policy': { 'validInterval': { 'startTime': '2022-12-10T14:30:00Z', 'endTime': '2022-12-14T09:00:00Z' } }, }" \ https://tpu.googleapis.com/v2alpha1/projects/your-project-id/locations/us-east5-a/queuedResources?queued_resource_id=your-queued-resource-id
指令旗標說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 ID。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
valid-until-timw
- 要求取消的時間。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題日期時間。
valid-until-duration
- 要求的有效期間。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題日期時間。
控制台
前往 Google Cloud 控制台的「TPUs」頁面:
按一下「建立 TPU」。
在「Name」(名稱) 欄位中,輸入 TPU 的名稱。
在「Zone」(可用區) 方塊中,選取要建立 TPU 的可用區。
在「TPU type」(TPU 類型) 方塊中,選取加速器類型。加速器類型會指定要建立的 Cloud TPU 版本和大小。如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱「TPU 版本」。
在「TPU 軟體版本」方塊中,選取軟體版本。建立 Cloud TPU VM 時,TPU 軟體版本會指定要安裝的 TPU 執行階段版本。詳情請參閱「TPU 軟體版本」。
按一下「啟用佇列」切換鈕。
在「Queued resource name」(已加入佇列的資源名稱) 欄位中,輸入已加入佇列的資源要求名稱。
在「Start request on」(要求開始時間) 欄位中,輸入應分配資源的時間。
在「Cancel request on」(取消要求時間) 欄位中,輸入排隊資源要求未填入時的到期時間。
按一下「建立」,建立已加入佇列的資源要求。
使用開機指令碼要求排入佇列的資源
您可以指定要在佇列資源佈建完成後執行的指令碼。
gcloud
使用 gcloud
指令時,您可以分別使用 --metadata
或 --metadata-from-file
旗標,指定指令碼指令或包含指令碼程式碼的檔案。以下範例會建立已加入佇列的資源要求,以執行 startup-script.sh
指令碼。
gcloud compute tpus queued-resources create your-queued-resource-id \ --node-id your-node-id \ --project your-project-id \ --zone us-central1-a \ --accelerator-type v5litepod-8 \ --runtime-version v2-alpha-tpuv5-lite \ --metadata-from-file='startup-script=startup-script.sh'
指令旗標說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 ID。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
validInterval
- :要求有效時間,過期後要求會遭到取消。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題日期時間。
metadata-from-file
- 指定包含中繼資料的檔案。如果未指定中繼資料檔案的完整路徑,指令會假設該檔案位於目前目錄。在本範例中,檔案包含啟動指令碼,會在佈建佇列資源時執行。
metadata
- 指定要求的相關中繼資料。在本範例中,中繼資料是排隊資源佈建時執行的開機指令碼指令。
curl
使用 curl
時,您必須在 JSON 內容中加入指令碼程式碼。下列範例包含 JSON 主體中的內嵌指令碼。
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "{ tpu: { node_spec: { parent: 'projects/your-project-number/locations/us-central1-a', node_id: 'your-node-id', node: { accelerator_type: 'v5e-8', runtime_version: 'v2-alpha-tpuv5-lite', metadata: { "startup-script": "#! /bin/bash\npwd > /tmp/out.txt\nwhoami >> /tmp/out.txt" } } } }, 'queueing_policy': { 'validInterval': { 'startTime': '2022-12-10T14:30:00Z', 'endTime': '2022-12-14T09:00:00Z' } }, }" \ https://tpu.googleapis.com/v2alpha1/projects/your-project-id/locations/us-central1-a/queuedResources?queued_resource_id=your-queued-resource-id
指令旗標說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
node-id
- 為回應要求而建立的 TPU 使用者定義 ID。
project
- 已分配佇列資源的專案 ID。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
validInterval
- :要求有效時間,過期後要求會遭到取消。如要進一步瞭解時間長度格式,請參閱 Google Cloud CLI 主題日期時間。
metadata-from-file
- 指定包含中繼資料的檔案。如果未指定中繼資料檔案的完整路徑,指令會假設該檔案位於目前目錄。在本範例中,檔案包含啟動指令碼,會在佈建佇列資源時執行。
metadata
- 指定要求的相關中繼資料。在本範例中,中繼資料是排隊資源佈建時執行的開機指令碼指令。
Java
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
使用指定的網路和子網路要求排入佇列的資源
在排入佇列的資源要求中,您可以指定要將 TPU 連線至哪個網路和子網路。
gcloud
gcloud compute tpus queued-resources create your-queued-resource-id \ --node-id your-node-id \ --project your-project-id \ --zone us-central1-a \ --accelerator-type v5e-8 \ --runtime-version v2-alpha-tpuv5-lite \ --network network-name \ --subnetwork subnetwork-name
指令參數說明
queued-resource-id
- 使用者指派的佇列資源要求 ID。
node-id
- 系統分配佇列資源要求時建立的 TPU 使用者指派 ID。
project
- 您的 Google Cloud 專案。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
reserved
- 在要求排入佇列的資源時,請使用這個標記,將資源納入 Cloud TPU 預訂項目。
network
- 排入佇列的資源所屬的網路。
subnetwork
- 排入佇列的資源所屬的子網路。
curl
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "{ 'tpu': { 'node_spec': { 'parent': 'projects/your-project-number/locations/us-central1-a', 'node_id': 'your-node-id', 'node': { 'accelerator_type': 'v5e-8', 'runtime_version': 'v2-alpha-tpuv5-lite', 'network_config': { 'network': 'network-name', 'subnetwork': 'subnetwork-name', 'enable_external_ips': true } } }, 'guaranteed': { 'reserved': true, } }" \ https://tpu.googleapis.com/v2alpha1/projects/your-project-id/locations/us-central1-a/queuedResources?queued_resource_id=your-queued-resource-id
指令參數說明
queued-resource-id
- 使用者指派的佇列資源要求 ID。
node-id
- 系統分配佇列資源要求時建立的 TPU 使用者指派 ID。
project
- 您的 Google Cloud 專案。
zone
- 您要建立 Cloud TPU 的區域。
accelerator-type
- 加速器類型會指定您要建立的 Cloud TPU 版本和大小。 如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱 TPU 版本。
runtime-version
- Cloud TPU 軟體版本。
reserved
- 在要求排入佇列的資源時,請使用這個標記,將資源納入 Cloud TPU 預訂項目。
network
- 排入佇列的資源所屬的網路。
subnetwork
- 排入佇列的資源所屬的子網路。
控制台
前往 Google Cloud 控制台的「TPUs」頁面:
按一下「建立 TPU」。
在「Name」(名稱) 欄位中,輸入 TPU 的名稱。
在「Zone」(可用區) 方塊中,選取要建立 TPU 的可用區。
在「TPU type」(TPU 類型) 方塊中,選取加速器類型。加速器類型會指定要建立的 Cloud TPU 版本和大小。如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱「TPU 版本」。
在「TPU 軟體版本」方塊中,選取軟體版本。建立 Cloud TPU VM 時,TPU 軟體版本會指定要安裝的 TPU 執行階段版本。詳情請參閱「TPU 軟體版本」。
按一下「啟用佇列」切換鈕。
在「Queued resource name」(已加入佇列的資源名稱) 欄位中,輸入已加入佇列的資源要求名稱。
展開「網路」部分。
在「Network」(網路) 和「Subnetwork」(子網路) 欄位中,選取要使用的網路和子網路。
按一下「建立」,建立已加入佇列的資源要求。
Java
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
刪除排入佇列的資源要求
您可以刪除排入佇列的資源要求,以及與要求相關聯的 TPU,方法如下:
gcloud
將 --force
旗標傳遞至 queued-resource delete
指令:
gcloud compute tpus queued-resources delete your-queued-resource-id \ --project your-project-id \ --zone us-central1-a \ --force \ --async
指令旗標說明
your-queued-resource-id
- 使用者指派的佇列資源要求 ID。
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 要刪除的 Cloud TPU 區域。
force
- 刪除 TPU VM 和排入佇列的資源要求。
curl
在 curl
要求中使用查詢參數 force=true
:
curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://tpu.googleapis.com/v2/projects/your-project-id/locations/us-central1-a/queuedResources/your-queued-resource-id?force=true
指令旗標說明
your-queued-resource-id
- 使用者指派的佇列資源要求 ID。
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 要刪除的 Cloud TPU 區域。
force
- 刪除 TPU VM 和排入佇列的資源要求。
控制台
前往 Google Cloud 控制台的「TPUs」頁面:
按一下「已加入佇列的資源」分頁標籤。
選取佇列中的資源要求旁邊的核取方塊。
按一下「刪除」圖示
。
Java
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
如果直接刪除 TPU,也必須刪除排入佇列的資源,如下列範例所示。刪除 TPU 時,排入佇列的資源要求會轉換為 SUSPENDED
狀態,之後即可刪除排入佇列的資源要求。
gcloud
刪除 TPU:
$ gcloud compute tpus tpu-vm delete your-node-id \ --project=your-project-id \ --zone=us-central1-a \ --quiet
指令旗標說明
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 要刪除的 Cloud TPU 區域。
your-node-id
- 要刪除的 TPU 名稱。
刪除 TPU 時,相關聯的佇列資源會進入 SUSPENDING
狀態,然後進入 SUSPENDED
狀態。如果佇列中的資源處於 SUSPENDED
狀態,您可以刪除該資源:
gcloud compute tpus queued-resources delete your-queued-resource-id \ --project your-project-id \ --zone us-central1-a
指令旗標說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 要刪除的 Cloud TPU 區域。
curl
刪除 TPU:
curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://tpu.googleapis.com/v2/projects/your-project/locations/us-central1-a/nodes?node_id=your-node-id
指令旗標說明
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 要刪除的 Cloud TPU 區域。
your-node-id
- 要刪除的 TPU 名稱。
刪除 TPU 時,相關聯的佇列資源會進入 SUSPENDING
狀態,然後進入 SUSPENDED
狀態。如果佇列中的資源處於 SUSPENDED
狀態,您可以刪除該資源:
curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://tpu.googleapis.com/v2/projects/your-project-id/locations/us-central1-a/queuedResources/your-queued-resource-id
指令旗標說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 要刪除的 Cloud TPU 區域。
控制台
刪除 TPU:
前往 Google Cloud 控制台的「TPUs」頁面:
勾選 TPU 旁的核取方塊。
按一下「刪除」圖示
。
刪除 TPU 時,相關聯的佇列資源會進入「正在暫停」狀態,然後進入「已暫停」狀態。如果排入佇列的資源處於「已暫停」狀態,您可以刪除該資源:
- 按一下「已加入佇列的資源」分頁標籤。
- 選取佇列中的資源要求旁邊的核取方塊。
- 按一下「刪除」圖示 。
Java
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
刪除 TPU 時,相關聯的佇列資源會進入 SUSPENDING
狀態,然後進入 SUSPENDED
狀態。排入佇列的資源處於 SUSPENDED
狀態時,您可以刪除該資源:
Python
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
刪除 TPU 時,相關聯的佇列資源會進入 SUSPENDING
狀態,然後進入 SUSPENDED
狀態。排入佇列的資源處於 SUSPENDED
狀態時,您可以刪除該資源:
擷取佇列中資源要求的狀態和診斷資訊
擷取佇列中資源要求的狀態和診斷資訊:
gcloud
gcloud compute tpus queued-resources describe queued-resource-request-id \ --project your-project-id \ --zone us-central1-a
指令旗標說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
project
- 已分配佇列資源的專案 ID。
zone
- 您要建立 Cloud TPU 的區域。
curl
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://tpu.googleapis.com/v2/projects/your-project-id/locations/us-central1-a/queuedResources/your-queued-resource-id
指令旗標說明
queued-resource-request-id
- 使用者指派的佇列資源要求 ID。
project
- 已分配佇列資源的專案 ID。
zone
- 您要建立 Cloud TPU 的區域。
控制台
前往 Google Cloud 控制台的「TPUs」頁面:
按一下「已加入佇列的資源」分頁標籤。
按一下已加入佇列的資源要求名稱。
佈建 TPU 後,您也可以前往「TPU」頁面,找出 TPU 並點選相應的佇列資源要求名稱,查看佇列資源要求的詳細資料。
Java
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
如果要求失敗,輸出內容會包含錯誤資訊。如果要求正在等待資源,輸出內容會類似如下:
gcloud
name: projects/your-project-id/locations/us-central1-a/queuedResources/your-queued-resource-id state: state: WAITING_FOR_RESOURCES tpu: nodeSpec: - node: acceleratorType: v4-8 bootDisk: {} networkConfig: enableExternalIps: true queuedResource: projects/your-project-number/locations/us-central1-a/queuedResources/your-queued-resource-id runtimeVersion: v2-alpha-tpuv5-lite schedulingConfig: {} serviceAccount: {} shieldedInstanceConfig: {} useTpuVm: true nodeId: your-node-id parent: projects/your-project-number/locations/us-central1-a
控制台
「排入佇列的資源狀態」欄位會顯示「正在等待資源」。
列出專案中已加入佇列的資源要求
列出專案中排入佇列的資源要求:
gcloud
gcloud compute tpus queued-resources list --project your-project-id \ --zone us-central1-a
指令旗標說明
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 您要建立 Cloud TPU 的區域。
curl
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://tpu.googleapis.com/v2/projects/your-project-id/locations/your-zone/queuedResources
指令旗標說明
project
- 已分配佇列資源的專案 Google Cloud 。
zone
- 您要建立 Cloud TPU 的區域。
控制台
前往 Google Cloud 控制台的「TPUs」頁面:
按一下「已加入佇列的資源」分頁標籤。
Java
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Python
如要驗證 Cloud TPU,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。