יצירת מכונות וירטואליות של Cloud TPU
אתם יוצרים מכונות וירטואליות של TPU באמצעות Create Node API, queued resources API או Google Kubernetes Engine (GKE).
מפעילים את ה-API ליצירת צומת כשמריצים את הפקודה gcloud compute tpus tpu-vm create באמצעות Google Cloud CLI, וכשיוצרים מכונת TPU וירטואלית באמצעות מסוףGoogle Cloud . כשמשתמשים ב-Create Node API, המערכת מעבדת את הבקשה באופן מיידי. אם אין מספיק קיבולת כדי למלא את הבקשה, היא תיכשל.
מומלץ ליצור מכונות וירטואליות של TPU באמצעות ה-API של משאבים בתור. כשיוצרים מכונת TPU וירטואלית באמצעות ה-API של משאבים בתור, שירות Cloud TPU מוסיף את בקשת המשאב בתור לתור שהשירות מנהל. כשהמשאב המבוקש הופך לזמין, השירות מקצה אותו לפרויקט שלכם ב- Google Cloud לשימוש מיידי ובלעדי. מידע נוסף מופיע במאמר ניהול משאבים בתור.
אם רוצים להשתמש ב-Google Kubernetes Engine (GKE) כדי לנהל משאבי TPU, צריך קודם ליצור אשכול GKE. אחר כך מוסיפים למערכת האשכולות מאגרי צמתים שכוללים חלקי TPU. מידע נוסף זמין במאמר מידע על TPU ב-GKE.
דרישות מוקדמות
צריך לוודא שמתקיימים התנאים הבאים:
יוצרים Google Cloud פרויקט עבור ה-TPU כמו שמתואר במאמר בנושא הגדרת Google Cloud פרויקט ל-TPU.
קובעים את הדרישות שלכם ל-TPU כמו שמתואר במאמר תכנון משאבי Cloud TPU.
אם אתם משתמשים באחת מספריות הלקוח של Cloud, אתם צריכים לפעול לפי הוראות ההגדרה של השפה שבה אתם משתמשים:
מגדירים משתני סביבה ליצירת TPU מדגם v5e עם שמונה צ'יפים. בדוגמאות הבאות נעשה שימוש ב-TPU מדגם v5e עם שמונה צ'יפים. אפשר לציין סוג ומספר גרסה שונים של מאיץ. מידע נוסף זמין במאמר בנושא גרסאות 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
יצירת Cloud TPU באמצעות Create Node API
יוצרים Cloud TPU באמצעות gcloud, מסוף Google Cloud או Cloud TPU API.
כשיוצרים Cloud TPU, צריך לציין את גרסת התוכנה של TPU (שנקראת גם גרסת זמן ריצה). כדי לדעת באיזו גרסת תוכנה להשתמש, אפשר לעיין במאמר בנושא גרסאות תוכנה של TPU.
בנוסף, צריך לציין את מספר ליבות ה-TensorCore או שבבי ה-TPU בהגדרת ה-TPU שבה אתם משתמשים. מידע נוסף זמין בקטע שמתאים לגרסת ה-TPU שלכם במאמר ארכיטקטורת המערכת.
gcloud
משתמשים בפקודה gcloud compute tpus tpu-vm create כדי ליצור TPU באמצעות Create Node API. כדי להגדיר כתובות IP פנימיות או חיצוניות ספציפיות, אפשר לעיין במאמר בנושא כתובות IP חיצוניות ופנימיות.
הפקודה הבאה יוצרת מכונת TPU וירטואלית מדגם v5e עם 8 שבבי TPU:
gcloud compute tpus tpu-vm create $TPU_NAME \ --project=$PROJECT_ID --zone=$ZONE \ --accelerator-type=$ACCELERATOR_TYPE \ --version=$VERSION
תיאורים של דגלי פקודות
zone
- התחום (zone) שבו יוצרים את Cloud TPU.
accelerator-type- סוג המאיץ מציין את הגרסה והגודל של Cloud TPU שיוצרים. מידע נוסף על סוגי המאיצים הנתמכים בכל גרסת TPU זמין במאמר גרסאות TPU.
version- הגרסה של תוכנת ה-TPU.
המסוף
ההוראות האלה יוצרות מכונת TPU וירטואלית v5e עם 8 שבבי TPU:
נכנסים לדף TPUs במסוף Google Cloud .
לוחצים על יצירת TPU.
בשדה שם, מזינים שם ל-TPU.
בשדה Zone (אזור), בוחרים את האזור שבו רוצים ליצור את ה-TPU.
בשדה TPU type (סוג TPU), בוחרים סוג של מאיץ. סוג המאיץ מציין את הגרסה והגודל של Cloud TPU שיוצרים. מידע נוסף על סוגי המאיצים הנתמכים בכל גרסת TPU זמין במאמר גרסאות TPU.
בשדה TPU software version (גרסת התוכנה של TPU), בוחרים גרסת תוכנה. כשיוצרים מכונת TPU וירטואלית ב-Cloud TPU, גרסת התוכנה של ה-TPU מציינת את גרסת זמן הריצה של ה-TPU שמותקנת. מידע נוסף זמין במאמר בנושא גרסאות תוכנה של TPU.
לוחצים על יצירה כדי ליצור את המשאבים.
curl
הפקודה הבאה משתמשת ב-curl כדי ליצור מכונת TPU וירטואלית מדור v5e עם 8 שבבי TPU.
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
- התחום (zone) שבו יוצרים את Cloud TPU.
node_name
- השם של מכונת ה-TPU VM שאתם יוצרים.
Java
בדוגמת הקוד הזו נוצר TPU VM מדגם v5e עם 8 שבבי TPU באמצעות Cloud TPU API ב-Java.
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Node.js
בדוגמת הקוד הזו נוצרת מכונה וירטואלית של TPU מדגם v5e עם 8 שבבי TPU באמצעות Cloud TPU API ב-Node.js.
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
בדוגמת הקוד הזו נוצר TPU VM מדגם v5e עם 8 שבבי TPU באמצעות Cloud TPU API ב-Python.
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
הפעלת סקריפט לטעינה בזמן ההפעלה
מריצים סקריפט לטעינה בזמן ההפעלה ב-TPU VM על ידי ציון הדגל --metadata startup-script כשיוצרים את ה-TPU VM.
gcloud
הפקודה הזו יוצרת VM של TPU וקובעת סקריפט לטעינה בזמן ההפעלה.
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, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Node.js
בדוגמת הקוד הזו נוצרת מכונת TPU VM ומוגדר סקריפט לטעינה בזמן ההפעלה ב-Node.js.
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
בדוגמת הקוד הזו נוצרת מכונת TPU VM ומוגדר סקריפט לטעינה בזמן ההפעלה ב-Python.
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
המאמרים הבאים
- מידע נוסף על משאבים בתור
- איך מנהלים מכונות וירטואליות של TPU
- מידע נוסף על TPU ב-GKE
- איך מריצים קוד JAX במכונה וירטואלית של TPU
- איך מריצים קוד PyTorch במכונה וירטואלית של TPU
- איך מריצים עומסי עבודה של ML ב-TPU, למשל, Serve Qwen2-72B-Instruct with vLLM on TPUs