יחידות TPU הן מעגלים משולבים לאפליקציות ספציפיות (ASIC) שפותחו על ידי Google כדי להאיץ עומסי עבודה של למידת מכונה (ML) ובינה מלאכותית (AI). לא משנה אם אתם מאמנים מודלים בסיסיים מורכבים במשך שבועות או מריצים הסקות בקנה מידה גדול, מעבדי TPU מציעים משאבי מחשוב מיוחדים וניתנים להתאמה, שעברו אופטימיזציה למסגרות כמו JAX ו-PyTorch.
יחידות ה-Cloud TPU מתוכננות להתמודד עם עומסי העבודה התובעניים ביותר של AI. היתרונות העיקריים:
אופטימיזציה לחישובי מטריצות: יחידות TPU תוכננו במיוחד עם יחידות כפל מטריצות (MXU) כדי לבצע את פעולות המטריצה המאסיביות שחיוניות לאלגוריתמים של ML ביעילות יוצאת דופן.
זיכרון ברוחב פס גבוה (HBM): זיכרון ברוחב פס גבוה על השבב מאפשר לאמן מודלים גדולים יותר ולהשתמש בהם, וגם לנצל ביעילות גודלי אצווה גדולים יותר.
יכולת התאמה לעומס באמצעות פרוסות: אפשר לחבר שבבי TPU בקבוצות שנקראות פרוסות. הפרוסות מאפשרות לעומסי העבודה להגיע לעד אלפי שבבי TPU למשימות אימון מסיביות.
מתי כדאי להשתמש ב-TPU
יחידות TPU מותאמות לעומסי עבודה ספציפיים, כמו:
- מודלים שמתבססים בעיקר על חישובי מטריצות
- מודלים בלי פעולות PyTorch/JAX בהתאמה אישית בתוך לולאת האימון הראשית
- מודלים שמאומנים במשך שבועות או חודשים
- מודלים גדולים עם גודלי אצווה אפקטיביים גדולים
- מודלים עם הטמעות גדולות במיוחד, שנפוצים בעומסי עבודה מתקדמים של דירוג והמלצות
יחידות TPU לא מתאימות לעומסי העבודה הבאים:
- תוכניות אלגברה ליניארית שדורשות הסתעפות תכופה או מכילות הרבה פעולות אלגברה לפי רכיבים
- עומסי עבודה שדורשים חישובים ברמת דיוק גבוהה
- עומסי עבודה של רשתות נוירונים שמכילים פעולות בהתאמה אישית בלולאת האימון הראשית
אפשרויות הקצאת הרשאות ידנית ב- Google Cloud
בהתאם לצרכים התפעוליים שלכם, אתם יכולים לגשת ליחידות TPU ולהקצות אותן באמצעות מוצרי Google Cloud הבאים.
Compute Engine
ב-Compute Engine אתם יכולים ליצור ולנהל פרוסות או מכונות וירטואליות של TPU, וכך לנהל את מחזור החיים המלא של המכונות הווירטואליות של TPU. Google ממליצה להשתמש ב-Compute Engine במקום ב-Cloud TPU API הקודם כדי להקצות את משאבי ה-TPU.
למידע נוסף, קראו את המאמר משאבי Cloud TPU ב-Compute Engine.
Google Kubernetes Engine
Google Kubernetes Engine (GKE) מספק סביבת Kubernetes מנוהלת לחלוטין עם כמה דיירים, שמאפשרת לתזמר עומסי עבודה גדולים של AI. ב-GKE אפשר לנהל את מחזור החיים של צומתי TPU ומאגרי צמתים, כולל יצירה, הגדרה ומחיקה של TPU VM.
מידע נוסף זמין במאמר מידע על יחידות TPU ב-GKE.
Batch
Batch הוא שירות מנוהל שמאפשר לתזמן, להוסיף לתור ולהפעיל עומסי עבודה בקונטיינרים או מבוססי-סקריפטים שפועלים במכונות וירטואליות של TPU ב-Compute Engine.
מידע נוסף זמין במאמר יצירה והרצה של משימה באצווה שמשתמשת ביחידות TPU.
Cloud TPU
הפסקנו לפתח את Cloud TPU API, כולל Google Cloud CLI וספריות הלקוח של Cloud ל-Cloud TPU. כדי להקצות ולנהל משאבי TPU, Google ממליצה להשתמש ב-Compute Engine או ב-GKE, בהתאם לצרכים שלכם בתזמור ובעומסי העבודה.
מידע נוסף זמין במאמר מעבר מ-Cloud TPU API.
גרסאות TPU שנתמכות ב-Compute Engine
ב-Compute Engine אפשר להשתמש בגרסאות הבאות של TPU:
- TPU7x (Ironwood)
- TPU v6e (Trillium)
- TPU v5p
למידע נוסף על כל גרסת TPU, ראו מכונות TPU.