יצירת מכונות וירטואליות של Cloud TPU
כדי ליצור TPU VM, משתמשים ב-Create Node API, ב-queued resources API או ב-Google Kubernetes Engine (GKE).
אתם קוראים ל-Create Node API כשאתם מריצים את הפקודה gcloud compute tpus tpu-vm create באמצעות Google Cloud CLI, וכשאתם יוצרים TPU VM באמצעות מסוףGoogle Cloud . כשמשתמשים ב-Create Node API, המערכת מעבדת את הבקשה באופן מיידי. אם אין מספיק קיבולת כדי למלא את הבקשה, הבקשה נכשלת.
מומלץ ליצור TPU VM באמצעות ה-API של המשאבים בתור. כשיוצרים TPU VM באמצעות ה-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 VM בגרסה 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 VM מסוג v5e עם 8 שבבי TPU:
נכנסים לדף TPUs במסוף Google Cloud :
לוחצים על Create TPU.
בשדה Name, נותנים שם ל-TPU.
בשדה Zone, בוחרים את האזור שבו יוצרים את ה-TPU.
בשדה TPU type, בוחרים סוג מאיץ. סוג המאיץ מציין את הגרסה והגודל של ה-Cloud TPU שאתם יוצרים. למידע נוסף על סוגי המאיצים שנתמכים בכל גרסת TPU, ראו גרסאות TPU.
בשדה TPU software version, בוחרים גרסת תוכנה. כשיוצרים מכונה וירטואלית של Cloud TPU, גרסת התוכנה של ה-TPU מציינת את גרסת סביבת זמן הריצה של ה-TPU שצריך להתקין. מידע נוסף זמין במאמר גרסאות תוכנה של TPU.
לוחצים על Create כדי ליצור את המשאבים.
curl
הפקודה הבאה משתמשת ב-curl כדי ליצור מכונת TPU VM מסוג 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
- האזור שבו יוצרים את ה-Cloud TPU.
node_name
- השם של ה-TPU VM שאתם יוצרים.
Java
דוגמת הקוד הבאה יוצרת מכונת TPU VM v5e עם 8 שבבי TPU באמצעות Cloud TPU API ב-Java.
כדי לבצע אימות ב-Cloud TPU, אתם צריכים להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Node.js
דוגמת הקוד הזו יוצרת מכונת TPU VM בגרסה 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
הפקודה הזו יוצרת 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, אתם צריכים להגדיר את 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 VM
- איך מריצים קוד PyTorch ב-TPU VM