建立 Cloud TPU VM
您可以使用「建立節點」API、排隊資源 API 或 Google Kubernetes Engine (GKE) 建立 TPU VM。
使用 Google Cloud CLI 執行 gcloud compute tpus tpu-vm create 指令時,以及使用Google Cloud 控制台建立 TPU VM 時,系統會呼叫 Create Node API。使用「建立節點」API 時,系統會立即處理您的要求。如果容量不足,無法完成要求,要求就會失敗。
建議使用佇列資源 API 建立 TPU VM。使用佇列資源 API 建立 TPU VM 時,Cloud TPU 服務會將佇列資源要求新增至服務維護的佇列。當要求的資源可用時,服務會將其指派給您的 Google Cloud 專案,供您立即專屬使用。詳情請參閱「管理佇列資源」。
如要使用 Google Kubernetes Engine (GKE) 管理 TPU 資源,請先建立 GKE 叢集。接著,在叢集中新增包含 TPU 節點的節點集區。詳情請參閱「GKE 中的 TPU 簡介」。
必要條件
完成下列必要條件:
如「設定 TPU 專案」一文所述,為 TPU 建立 Google Cloud 專案。 Google Cloud
如「規劃 Cloud TPU 資源」一文所述,判斷 TPU 需求。
如果您使用Cloud 用戶端程式庫,請按照所用語言的設定說明操作:
設定環境變數,建立含有八個晶片的 v5e TPU。下列範例使用八個晶片的 v5e TPU。您可以指定其他加速器類型和版本。詳情請參閱「TPU 版本」。
export TPU_NAME=your-tpu-name export PROJECT_ID=your-project export ZONE=us-central1-a export ACCELERATOR_TYPE=v5litepod-8 export VERSION=v2-alpha-tpuv5-lite
使用 Create Node API 建立 Cloud TPU
您可以使用 gcloud、 Google Cloud 控制台或 Cloud TPU API 建立 Cloud TPU。
建立 Cloud TPU 時,請指定 TPU 軟體版本 (也稱為執行階段版本)。如要判斷要使用的軟體版本,請參閱「TPU 軟體版本」。
此外,請為使用的 TPU 設定指定 TensorCore 或 TPU 晶片的數量。詳情請參閱「系統架構」中 TPU 版本的相關章節。
gcloud
使用 gcloud compute tpus tpu-vm create 指令,透過 Create Node API 建立 TPU。如要設定特定內部或外部 IP 位址,請參閱「外部和內部 IP 位址」。
下列指令會建立含有 8 個 TPU 晶片的 v5e TPU VM:
gcloud compute tpus tpu-vm create $TPU_NAME \ --project=$PROJECT_ID --zone=$ZONE \ --accelerator-type=$ACCELERATOR_TYPE \ --version=$VERSION
指令旗標說明
控制台
以下操作說明會建立具有 8 個 TPU 晶片的 v5e TPU VM:
前往 Google Cloud 控制台的「TPUs」頁面:
按一下「建立 TPU」。
在「Name」(名稱) 欄位中,輸入 TPU 的名稱。
在「Zone」(可用區) 欄位中,選取建立 TPU 的可用區。
在「TPU type」(TPU 類型) 欄位中,選取加速器類型。 加速器類型會指定您建立的 Cloud TPU 版本和大小。如要進一步瞭解各個 TPU 版本支援的加速器類型,請參閱「TPU 版本」。
在「TPU 軟體版本」欄位中,選取軟體版本。建立 Cloud TPU VM 時,TPU 軟體版本會指定要安裝的 TPU 執行階段版本。詳情請參閱「TPU 軟體版本」。
按一下「建立」即可建立資源。
curl
下列指令會使用 curl 建立含有 8 個 TPU 晶片的 v5e TPU VM。
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d "{accelerator_type: $ACCELERATOR_TYPE, \ runtime_version:'$VERSION', \ network_config: {enable_external_ips: true}, \ shielded_instance_config: { enable_secure_boot: true }}" \ https://tpu.googleapis.com/v2/projects/$PROJECT_ID/locations/$ZONE/nodes?node_id=$TPU_NAME
必填欄位
runtime_version- 您使用的 Cloud TPU 執行階段版本。
project-id- 已註冊 Google Cloud 專案的名稱。
zone- 您建立 Cloud TPU 的區域。
node_name- 您建立的 TPU VM 名稱。
Java
這個程式碼範例會使用 Java 中的 Cloud TPU API,建立具有 8 個 TPU 晶片的 v5e TPU VM。
如要向 Cloud TPU 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Node.js
這個程式碼範例會使用 Node.js 中的 Cloud TPU API,建立具有 8 個 TPU 晶片的 v5e TPU VM。
如要向 Cloud TPU 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Python
這個程式碼範例會使用 Python 中的 Cloud TPU API,建立具有 8 個 TPU 晶片的 v5e TPU VM。
如要向 Cloud TPU 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
執行開機指令碼
如要在 TPU VM 上執行啟動指令碼,請在建立 TPU VM 時指定 --metadata startup-script 標記。
gcloud
這個指令會建立 TPU VM,並指定啟動指令碼。
gcloud compute tpus tpu-vm create $TPU_NAME \ --zone=$ZONE \ --accelerator-type=$ACCELERATOR_TYPE \ --version=$VERSION \ --metadata startup-script='#! /bin/bash pip3 install numpy EOF'
Java
這個程式碼範例會建立 TPU VM,並以 Java 指定開機指令碼。
如要向 Cloud TPU 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Node.js
這個程式碼範例會建立 TPU VM,並在 Node.js 中指定開機指令碼。
如要向 Cloud TPU 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Python
這個程式碼範例會建立 TPU VM,並以 Python 指定開機指令碼。
如要向 Cloud TPU 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
後續步驟
- 瞭解排入佇列的資源。
- 瞭解如何管理 TPU VM。
- 瞭解 GKE 中的 TPU。
- 瞭解如何在 TPU VM 上執行 JAX 程式碼。
- 瞭解如何在 TPU VM 上執行 PyTorch 程式碼。
- 瞭解如何在 TPU 上執行機器學習工作負載,例如使用 vLLM 在 TPU 上提供 Qwen2-72B-Instruct 服務。