משאבי TPU ב-Compute Engine

אפשר ליצור ולנהל יחידות TPU באמצעות משאבי Compute Engine. בדף הזה מובאת סקירה כללית על השימוש ב-TPU עם Compute Engine. המאמר ממפה את המושגים של TPU למשאבי Compute Engine, ומתאר את תהליך המעבר ל-Compute Engine.

מושגים שקשורים ל-TPU ול-Compute Engine

כדי לנהל משאבי TPU ב-Compute Engine, כדאי להבין את המושגים העיקריים האלה של TPU ו-Compute Engine:

  • ‫TPU VM: מכונה וירטואלית שמתחברת ישירות לחומרת ה-TPU. TPU VM אחת זהה לפרוסת TPU במארח יחיד.
  • ‫TPU slice: קבוצה לוגית של שבבי TPU שמחוברים זה לזה, שאפשר לגשת אליהם דרך מכונה וירטואלית אחת או יותר של TPU. לפרוסות יש אחת מההגדרות הבאות:
    • פרוסת נתונים של מארח יחיד: פרוסת נתונים שמורכבת ממכונת מארח אחת. פרוסת TPU במארח יחיד היא דרך נוספת להתייחס ל-TPU VM יחיד.
    • פרוסת TPU עם כמה מארחים: פרוסה שמורכבת מכמה מכונות וירטואליות של TPU שמחוברות ביניהן באמצעות חיבור מהיר בין שבבים (ICI).

כדי ליצור ולנהל משאבי TPU ב-Compute Engine, משתמשים במשאבי Compute Engine הבאים:

  • מכונה וירטואלית (VM): מכונה וירטואלית של Compute Engine. פרוסת TPU עם מארח יחיד נוצרת כמכונת VM נפרדת. ב-Cloud TPU API מדור קודם, פרוסת TPU אחת מיוצגת על ידי אובייקט Node REST.
  • קבוצת מופעי מכונה מנוהלים (MIG): אוסף של מופעי מכונות וירטואליות שמנוהלים כיחידה אחת. פרוסות TPU מרובות מארחים נוצרות כ-MIG עם טופולוגיית מאיץ שמוגדרת במדיניות עומס העבודה. ב-Cloud TPU API מדור קודם, פרוסות אחת או יותר מיוצגות באמצעות אובייקטים של REST‏ QueuedResource או Node.

מפת מושגים של TPU ו-Compute Engine

בטבלה הבאה מפורט המיפוי של מושגי TPU למשאבים של Compute Engine:

מושג 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 VM.
  • ‫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.
  • ‫Multislice: אי אפשר ליצור קבוצות של חלקי TPU מרובי-מארחים שמחוברים זה לזה באמצעות Compute Engine. כדי להשתמש ב-Multislice, צריך להשתמש ב-Google Kubernetes Engine‏ (GKE). מידע נוסף זמין במאמר בנושא פריסת TPU Multislices ב-GKE.
  • אוספים: אי אפשר לתזמן אוספים ב-Compute Engine. כדי להשתמש בתזמון איסוף, צריך להשתמש ב-GKE. מידע נוסף זמין במאמר תזמון איסוף במאמרי העזרה של GKE.

המאמרים הבאים