משאבי Cloud TPU ב-Compute Engine
אפשר ליצור ולנהל יחידות TPU באמצעות משאבי Compute Engine. בדף הזה מובאת סקירה כללית על השימוש ב-TPU עם Compute Engine. המאמר ממפה את המושגים של Cloud TPU למשאבים של Compute Engine ומתאר את תהליך המעבר ל-Compute Engine.
מושגים עיקריים ב-Cloud TPU
כדי לנהל משאבי TPU ב-Compute Engine, כדאי להבין את המושגים העיקריים הבאים שקשורים ל-TPU:
- TPU VM: מכונה וירטואלית שמתחברת ישירות לחומרת ה-TPU. מכונת TPU וירטואלית אחת זהה לפרוסת TPU במארח יחיד.
- TPU slice: קבוצה לוגית של שבבי TPU שמחוברים זה לזה, שאפשר לגשת אליהם דרך מכונה וירטואלית אחת או יותר של TPU.
ב-TPU API, פרוסת TPU יחידה מיוצגת על ידי אובייקט
NodeאוQueuedResourceREST. לפרוסות יש אחת מההגדרות הבאות:- פרוסת נתונים של מארח יחיד: פרוסת נתונים שמורכבת ממכונת מארח אחת. פרוסת TPU במארח יחיד היא דרך נוספת להתייחס ל-TPU VM יחיד.
- פרוסת מולטי-מארחים: פרוסה שמורכבת מכמה מכונות וירטואליות של TPU שמחוברות ביניהן באמצעות חיבור מהיר בין שבבים (ICI).
-
Node: אובייקט REST מ-Cloud TPU API מדור קודם שמייצג פרוסת TPU אחת. ב-Compute Engine, המיפוי הזה מתבצע למכונה וירטואלית או לקבוצת מופעי מכונה מנוהלים (MIG). -
QueuedResource: אובייקט REST מ-Cloud TPU API מדור קודם שמייצג פרוסות TPU אחת או יותר. משאבים בתור משמשים לבקשה ולניהול של קיבולת TPU דרך תור. ב-Compute Engine, מכונות וירטואליות עם Flex-start מספקות פונקציונליות דומה.
מפת מושגים של TPU ו-Compute Engine
בטבלה הבאה מתואר המיפוי של מושגי TPU למשאבים של Compute Engine:
| מושג Cloud TPU | משאב Compute Engine | פרטי המשאבים | תרחיש שימוש |
|---|---|---|---|
| TPU VM | מופע ב-VM | מכונה וירטואלית ב-Compute Engine שמספקת גישה ישירה לחומרת TPU. | משימות של מכונה וירטואלית ספציפית, הרצת פקודות SSH או ניפוי באגים |
| פרוסת TPU של מארח יחיד או תת-מארח | מכונת VM או קבוצת מופעי מכונה מנוהלים (MIG) עם מכונת VM אחת | הגדרה שכוללת מחשב מארח פיזי אחד. | הסקת מסקנות עם התאמה אוטומטית לעומס |
| פרוסת TPU עם מספר מארחים | MIG עם טופולוגיית מאיץ שצוינה במדיניות עומס העבודה | קבוצה של מכונות וירטואליות של TPU שמחוברות ביניהן באמצעות ICI ומנוהלות כיחידה לוגית אחת. | אימון מבוזר בקנה מידה גדול שדורש הקצאה אטומית |
מעבר מ-Cloud TPU API
הפיתוח של Cloud TPU API כבר לא פעיל. הם כוללים את Google Cloud CLI ל-Cloud TPU API ואת ספריות הלקוח ב-Cloud ל-Cloud TPU API. ממשק Cloud TPU API יקבל רק תיקוני באגים ועדכוני אבטחה. דורות חדשים של חומרה, החל מ-TPU7x (Ironwood), נתמכים רק דרך Compute Engine או Google Kubernetes Engine (GKE). כדי להשתמש בתכונות העדכניות ביותר ולקבל תמיכה בגרסאות העדכניות ביותר של TPU, צריך להחליף את הקריאות הקודמות ל-Cloud TPU API בקריאות שוות ערך ב-Compute Engine או ב-GKE.
בהתאם לדרישות שלכם לגבי תזמור ועומס עבודה, בוחרים באחת מהאפשרויות הבאות:
- Compute Engine: מומלץ למשתמשים שנדרש להם ניהול ישיר ברמת המכונה הווירטואלית או תמונות של מערכת הפעלה בהתאמה אישית. כדי להתחיל להקצות TPU ב-Compute Engine, אפשר לעיין במאמר מדריך למתחילים: יצירת מכונת TPU וירטואלית.
- GKE: מומלץ לעומסי עבודה מבוססי-קונטיינרים, להרחבה אוטומטית ולתיאום בקנה מידה גדול. מידע נוסף על שימוש ב-TPU עם GKE זמין במאמר מידע על TPU ב-GKE.
משאבי TPU קיימים
משאבי TPU שנוצרו באמצעות Cloud TPU API (אובייקטים של Node או QueuedResource REST) לא תואמים ל-Compute Engine ול-GKE. כדי להתחיל להשתמש ב-Compute Engine או ב-GKE:
- לשכתב את כל הסקריפטים שמשתמשים ב-Cloud TPU API כדי להשתמש ב-Compute Engine או ב-GKE APIs.
- מחיקת משאבים באמצעות Cloud TPU API ויצירה מחדש שלהם באמצעות Compute Engine או GKE APIs.
מגבלות
יש מגבלות מסוימות לשימוש ב-TPU ב-Compute Engine:
- גרסאות TPU: Compute Engine תומך בגרסאות v5p, v6e ו-TPU7x.
- מצב קיבולת: מצב כל הקיבולת של TPU לא זמין ב-Compute Engine.
- Multislice: אי אפשר ליצור קבוצות של חלקי TPU מרובי-מארחים שמחוברים זה לזה באמצעות Compute Engine. כדי להשתמש ב-Multislice, צריך להשתמש ב-Google Kubernetes Engine (GKE). מידע נוסף זמין במאמר בנושא פריסת TPU Multislices ב-GKE.
- Collections: אי אפשר לתזמן אוספים ב-Compute Engine. כדי להשתמש בתזמון איסוף, צריך להשתמש ב-GKE. מידע נוסף זמין במאמר בנושא תזמון איסוף במאמרי העזרה של GKE.
המאמרים הבאים
- מדריך למתחילים: יצירת מופע TPU
- יצירת מכונה וירטואלית של Cloud TPU באמצעות Compute Engine
- יצירת מכונות וירטואליות של Cloud TPU עם קבוצות של מכונות מנוהלות