ניהול משאבי TPU
בדף הזה מוסבר איך להציג רשימה של מכונות וירטואליות של TPU, לעצור, להפעיל ולמחוק אותן, ואיך להתחבר אליהן.
דרישות מוקדמות
לפני שמריצים את התהליכים האלה, צריך לבצע את השלבים הבאים:
יוצרים Google Cloud פרויקט עבור ה-TPU כמו שמתואר במאמר בנושא הגדרת Google Cloud פרויקט ל-TPU.
קובעים את הדרישות שלכם ל-TPU כמו שמתואר במאמר תכנון משאבי Cloud TPU.
יוצרים TPU VM כמו שמתואר במאמר יצירת TPU VM.
אם אתם משתמשים באחת מספריות הלקוח של הענן, אתם צריכים לפעול לפי הוראות ההגדרה של השפה שבה אתם משתמשים:
מגדירים משתני סביבה.
export TPU_NAME=your-tpu-name export ZONE=your-zone
התחברות ל-Cloud TPU
אפשר להתחבר ל-Cloud TPU באמצעות SSH.
אם אתם לא מצליחים להתחבר למכונה וירטואלית של TPU באמצעות SSH, יכול להיות שלמכונה הווירטואלית של TPU אין כתובת IP חיצונית. כדי לגשת למכונת TPU וירטואלית ללא כתובת IP חיצונית, פועלים לפי ההוראות במאמר התחברות למכונת TPU וירטואלית ללא כתובת IP ציבורית.
gcloud
מתחברים ל-Cloud TPU באמצעות SSH:
$ gcloud compute tpus tpu-vm ssh $TPU_NAME --zone=$ZONE
כשמבקשים פרוסת TPU גדולה יותר ממארח יחיד, Cloud TPU יוצר מכונת TPU וירטואלית לכל מארח. מספר שבבי ה-TPU בכל מארח תלוי בגרסת ה-TPU.
כדי להתקין קבצים בינאריים או להריץ קוד, מתחברים לכל TPU VM באמצעות tpu-vm ssh הפקודה.
$ gcloud compute tpus tpu-vm ssh $TPU_NAME --zone=$ZONE
כדי להתחבר למכונת TPU ספציפית באמצעות SSH, משתמשים בדגל --worker עם אינדקס מבוסס-0:
$ gcloud compute tpus tpu-vm ssh $TPU_NAME --zone=$ZONE --worker=1
כדי להריץ פקודה בכל מכונות ה-VM של TPU, משתמשים בדגלים --worker=all ו---command:
$ gcloud compute tpus tpu-vm ssh $TPU_NAME \ --zone=$ZONE \ --worker=all \ --command='pip install "jax[tpu]==0.4.20" -f https://storage.googleapis.com/jax-releases/libtpu_releases.html'
ב-Multislice, אפשר להריץ פקודה במכונה וירטואלית אחת באמצעות השם הממוספר של ה-TPU, עם קידומת של כל פרוסה והמספר שנוסף אליה. כדי להריץ פקודה בכל מכונות ה-TPU הווירטואליות בכל הפרוסות, משתמשים בדגלים --node=all, --worker=all ו---command, עם הדגל האופציונלי --batch-size.
$ gcloud compute tpus queued-resources ssh your-queued-resource-id \ --zone=$ZONE \ --node=all \ --worker=all \ --command='pip install jax[tpu] -f https://storage.googleapis.com/jax-releases/libtpu_releases.html' \ --batch-size=4
כשמתחברים למכונות וירטואליות באמצעות Google Cloud CLI, מערכת Compute Engine יוצרת מפתח SSH קבוע.
המסוף
כדי להתחבר ל-TPU במסוף Google Cloud , משתמשים ב-SSH בדפדפן:
נכנסים לדף TPUs במסוף Google Cloud .
ברשימת מכונות ה-TPU הווירטואליות, לוחצים על SSH בשורה של מכונת ה-TPU הווירטואלית שרוצים להתחבר אליה.
כשמתחברים למכונות וירטואליות של TPU באמצעות Google Cloud המסוף, מערכת Compute Engine יוצרת מפתח SSH זמני.
הצגת רשימה של משאבי Cloud TPU
אפשר להציג רשימה של כל משאבי Cloud TPU באזור מסוים.
gcloud
$ gcloud compute tpus tpu-vm list --zone=$ZONE
המסוף
נכנסים לדף TPUs במסוף Google Cloud .
Java
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Node.js
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
אחזור מידע על Cloud TPU
אפשר לאחזר מידע על Cloud TPU ספציפי.
gcloud
$ gcloud compute tpus tpu-vm describe $TPU_NAME \ --zone=$ZONE
המסוף
נכנסים לדף TPUs במסוף Google Cloud .
לוחצים על השם של Cloud TPU. בדף הפרטים של Cloud TPU שמוצג במסוף:
Java
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Node.js
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
הפסקת משאבי Cloud TPU
אפשר להפסיק שימוש ב-Cloud TPU יחיד כדי להימנע מחיובים, בלי לאבד את הגדרות המכונה הווירטואלית והתוכנה שלו.
ה-API של queued resources לא תומך בהפסקת פרוסות TPU או יחידות TPU. כדי להפסיק את החיובים על יחידות TPU שהוקצו דרך ה-API של משאבים בתור, צריך למחוק את ה-TPU.
gcloud
$ gcloud compute tpus tpu-vm stop $TPU_NAME \ --zone=$ZONE
המסוף
נכנסים לדף TPUs במסוף Google Cloud .
מסמנים את התיבה לצד Cloud TPU.
לוחצים על הפסקה.
Java
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Node.js
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
הפעלת משאבי Cloud TPU
אפשר להפעיל Cloud TPU שהופסק.
ה-API של queued resources לא תומך בהפעלת TPU Pods או TPUs.
gcloud
$ gcloud compute tpus tpu-vm start $TPU_NAME \ --zone=$ZONE
המסוף
נכנסים לדף TPUs במסוף Google Cloud .
מסמנים את התיבה לצד Cloud TPU.
לוחצים על התחלה.
Java
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Node.js
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
מחיקה של Cloud TPU
מוחקים את חלקי ה-VM של TPU אחרי הסשן.
gcloud
$ gcloud compute tpus tpu-vm delete $TPU_NAME \ --zone=$ZONE \ --quiet
תיאורים של דגלי פקודות
-
zone: האזור שבו אתם מתכננים למחוק את Cloud TPU. -
quiet: משבית את כל ההנחיות האינטראקטיביות כשמריצים פקודות ב-CLI של gcloud.
המסוף
נכנסים לדף TPUs במסוף Google Cloud .
מסמנים את התיבה לצד Cloud TPU.
לוחצים על מחיקה.
Java
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Node.js
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
כדי לבצע אימות ב-Cloud TPU, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
המאמרים הבאים
- איך מגדירים את הגישה לרשת ול-Cloud TPU
- מידע נוסף על משאבים בתור
- מידע נוסף על TPU ב-GKE
- איך מריצים קוד JAX במכונה וירטואלית של TPU
- איך מריצים קוד PyTorch במכונה וירטואלית של TPU
- איך מריצים עומסי עבודה של למידת מכונה ב-TPU