יצירת מכונות וירטואליות של Cloud TPU עם קבוצות של מכונות וירטואליות שניתנות לניהול (MIG)

קבוצות של מופעי מכונה מנוהלים (MIG) מאפשרות ליצור, להגדיר ולנהל את מחזור החיים של אוסף מכונות וירטואליות באופן אוטומטי. קבוצות MIG מספקות יתרונות כמו זמינות גבוהה באמצעות תיקון תוכנה אוטומטי ופריסות אזוריות (בכמה אזורים), התאמה אוטומטית לעומס כדי להתמודד עם עומסים משתנים ועדכונים בהדרגה פשוטים לאפליקציות. מידע נוסף מופיע במאמר בנושא קבוצות מנוהלות של מופעים.

אפשר להשתמש ב-MIG כדי ליצור ולנהל מכונות וירטואליות של TPU לגרסאות TPU v5p ואילך. אפשר ליצור קבוצות MIG עם מכונת TPU VM אחת, מכונות TPU VM עצמאיות (שנקראות גם פרוסות של מארח יחיד) וקבוצות MIG עם מכונות TPU VM שמחוברות ביניהן (שנקראות גם פרוסות של כמה מארחים).

לכל פרוסה ב-MIG עם מארח יחיד יש מכונת TPU וירטואלית אחת לכל היותר. המכונות הווירטואליות של TPU ב-MIG לא מחוברות באמצעות קישורי inter-chip interconnect ‏ (ICI).

פרוסת TPU מרובת מארחים מכילה כמה מכונות וירטואליות של TPU שמחוברות ביניהן באמצעות קישורי ICI.

קבוצות MIG עם פרוסות TPU במארח יחיד

יצירת קבוצת מופעי מכונה מנוהלים (MIG) עם כמה מופעי TPU עצמאיים מועילה לעומסי עבודה שדורשים כמה מכונות וירטואליות של TPU נפרדות, אבל לא צריכות להיות מקושרות באמצעות קישורי ICI לעומסי עבודה מבוזרים. לדוגמה:

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

מידע נוסף זמין במאמר בנושא יצירת קבוצת MIG עם פרוסות TPU במארח יחיד.

קבוצות של מכונות וירטואליות עם פלח רשת מרובה מארחים

בניגוד לקבוצות של פרוסות TPU עצמאיות, פרוסת MIG שהוגדרה למספר מארחים מנהלת קבוצה של מכונות TPU VM שמקושרות באופן הדוק באמצעות קישורי ICI. כך נוצרת פרוסת TPU לוגית אחת.

הטבות וביצועים

קבוצות של מכונות וירטואליות מנוהלות (MIG) לפרוסות TPU מרובות מארחים מספקות את ההתאמה לעומס ואת הביצועים שנדרשים לעומסי עבודה אינטנסיביים של למידת מכונה.

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

פעולות אטומיות במחזור החיים

כדי לשמור על השלמות של הטופולוגיה המקושרת, ה-MIG מנהל את כל הפלח כיחידה אחת שלא ניתן לחלק לאורך מחזור החיים שלו.

  • יצירה: כל המכונות הווירטואליות בפרוסה מוקצות יחד. אם אין מספיק קיבולת בריאה ומקושרת לכל הטופולוגיה המבוקשת, הפרוסה לא נוצרת.
  • מחיקה: קבוצת ה-MIG מוחקת את כל הפלח כיחידה אחת.
  • שינוי גודל: שינוי הגודל מוגבל לשינוי קנה מידה מ-0 לגודל המלא של הפרוסה, או מהגודל המלא של הפרוסה בחזרה ל-0. אי אפשר לשנות את הגודל של פרוסת מכונות וירטואליות באופן חלקי.

דרישות להגדרה

כדי להגדיר MIG עם כמה מארחים, צריך להגדיר גם את טופולוגיית הקישוריות הפיזית וגם את המאפיינים של כל מופע.

  • מדיניות עומס עבודה: צריך לציין מדיניות עומס עבודה עם הפרמטר accelerator-topology (לדוגמה, 4x4,‏ 8x8 או 4x4x4). ההגדרה הזו קובעת שמערכת ה-MIG תתייחס למופעים כאל פלח יחיד ומקושר. מידע על טופולוגיה זמין במאמר ארכיטקטורת המערכת.
  • תבנית של הגדרות מכונה: מגדירה מאפיינים כמו סוג המכונה, תמונת הדיסק והגדרות אחרות לכל מכונה וירטואלית בפלח.

זמינות של פרוסות ושחזור במקרה של כשל

כשמשתמשים ב-MIG כדי ליצור פלח TPU מרובה-מארחים, ה-MIG מנהל אוטומטית את תהליך השחזור של הפלח. אם מתרחשת שגיאה במארח או ב-ICI, הפרוסה עוברת למצב REACTIVATING. כל המכונות הווירטואליות בפרוסה יעברו למצב REPAIRING, אבל לא בהכרח באותו הזמן. לאחר מכן, ה-MIG יפעיל מחדש את מכונות ה-VM ביחד באופן אוטומטי על קיבולת תקינה כדי לשחזר את הפרוסה.

עם זאת, כשמשתמשים במכונות וירטואליות מסוג Spot, הפסקת השימוש גורמת לסיום המופעים. ה-MIG לא מפעיל מחדש את הפלח באופן אוטומטי.

שחזור לאחר הפרעה במכונה

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

מידע נוסף על מצבי הפרוסות זמין במאמר בנושא צפייה בסטטוס של פרוסת TPU.

מגבלות

ל-MIG עם TPU יש את המגבלות הבאות:

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

  • חלוקת אזורים של קבוצת MIG אזורית: צריך להגדיר את צורת חלוקת היעד לערך ANY_SINGLE_ZONE.

  • עדכוני הגדרות אישיות בקבוצת מופעים מנוהלת (MIG):

    • אי אפשר לעדכן קבוצת MIG שיוצרת פלח TPU עם כמה מארחים בגלל טופולוגיית המאיץ המוגדרת.
    • כדי לעדכן קבוצת MIG שיוצרת פרוסות TPU במארח יחיד, אפשר להשתמש בשיטות אוטומטיות או סלקטיביות. עם זאת, העדכונים של פרוסת TPU עם מארח יחיד לא תומכים בפעולת ההפעלה מחדש (RESTART). אם נדרשת הפעלה מחדש והפעולה הכי משבשת שמותרת היא החלפה (REPLACE), כלי העדכון יחליף את המופע. אחרת, ניסיון העדכון ייכשל עם שגיאה.

  • בנוסף, המגבלות הבאות חלות על MIG שיוצרת פרוסת TPU מרובת מארחים:

    • מדיניות לגבי גודל יעד: צריך להגדיר את מצב המדיניות לגבי גודל יעד לערך BULK. אחרי שמגדירים את המצב הזה, אי אפשר לשנות אותו.

    • גודל היעד: במצב Bulk, אפשר להגדיר את גודל היעד ל-0 או למספר המכונות שנדרשים ליצירת הטופולוגיה של המאיץ.

    • מדיניות עומס עבודה: צריך לציין מדיניות עומס עבודה שבה מוגדרת טופולוגיית המאיץ. אחרי שמגדירים את מדיניות העומס, אי אפשר לשנות או להסיר את המדיניות מה-MIG.

  • תכונות שלא נתמכות: קבוצות של מכונות וירטואליות עם TPUs לא תומכות בתכונות הבאות:

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