TPU7x (Ironwood)
בדף הזה מתוארת הארכיטקטורה של TPU7x, ה-TPU הכי חדש שזמין ב- Google Cloud, ומוסברות ההגדרות הזמינות שלו. TPU7x היא הגרסה הראשונה בסדרת Ironwood, Google Cloud's TPU מהדור השביעי. דור Ironwood מיועד לאימון ולהסקת מסקנות של AI בקנה מידה גדול.
עם 9,216 שבבים בכל Pod, TPU7x דומה מאוד ל-TPU v5p. TPU7x מספק ביצועים גבוהים למודלים צפופים ולמודלים של MoE בקנה מידה גדול, לאימון מקדים, לדגימה ולהסקת מסקנות עם פענוח כבד.
כדי להשתמש ב-TPU7x, אפשר להשתמש ב-Google Kubernetes Engine (GKE) או ב-Compute Engine. מידע נוסף על שימוש ב-TPU עם GKE זמין במאמר מידע על TPU ב-GKE.
אפשר להשתמש ב-TPU7x וב-GKE גם במצב All Capacity. מצב 'כל הקיבולת' זמין באמצעות הזמנה של מצב 'כל הקיבולת', שמעניקה לכם גישה מלאה לכל הקיבולת שהזמנתם (ללא הגבלות) ושקיפות מלאה לגבי טופולוגיית חומרת ה-TPU, סטטוס השימוש וסטטוס התקינות. מידע נוסף זמין במאמר סקירה כללית של מצב 'כל הקיבולת'.
ארכיטקטורת המערכת
כל שבב TPU7x מכיל שני TensorCore וארבעה SparseCore. בטבלה הבאה מוצגים המפרטים העיקריים והערכים שלהם עבור TPU7x בהשוואה לדורות קודמים.
| מפרט | v5p | v6e (Trillium) | TPU7x (Ironwood) |
|---|---|---|---|
| מספר הצ'יפים בכל תרמיל | 8960 | 256 | 9216 |
| שיא העיבוד לכל שבב (BF16) (TFLOPs) | 459 | 918 | 2307 |
| שיא העיבוד לכל שבב (FP8) (TFLOPs) | 459 | 918 | 4614 |
| קיבולת HBM לכל שבב (GiB) | 95 | 32 | 192 |
| רוחב הפס של HBM לכל שבב (GBps) | 2765 | 1638 | 7380 |
| מספר המעבדים הווירטואליים (מכונה וירטואלית עם 4 שבבים) | 208 | 180 | 224 |
| RAM (GB) (מכונה וירטואלית עם 4 שבבים) | 448 | 720 | 960 |
| מספר ליבות Tensor בכל שבב | 2 | 1 | 2 |
| מספר ליבות SparseCore בכל שבב | 4 | 2 | 4 |
| רוחב פס דו-כיווני של חיבור בין שבבים (ICI) לכל שבב (GBps) | 1200 | 800 | 1200 |
| רוחב הפס של רשת מרכז הנתונים (DCN) לכל שבב (Gbps) | 50 | 100 | 100 |
התרשים הבא מדגים את הארכיטקטורה של Ironwood:

היררכיית זיכרון
ל-TPU7x יש מערכת זיכרון רב-שכבתית, וניהול העברת הנתונים בין השכבות האלה חיוני לביצועים:
- זיכרון עם רוחב פס גבוה (HBM): כל שבב מצויד ב-192GB של HBM, עם רוחב פס של כ-7.37TB/s. קיבולת ה-HBM הגדולה מאפשרת גדלים גדולים של מנות (batch), מה שיכול לשפר את קצב העברת הנתונים. עם זאת, למרות הגודל שלו, HBM עדיין יכול להיות צוואר בקבוק, במיוחד עבור פעולות וקטוריות שמוגבלות על ידי הזיכרון או דפוסי גישה לא יעילים לנתונים.
- זיכרון וקטורי (VMEM): זיכרון VMEM הוא זיכרון SRAM קטן יותר על השבב (זיכרון גישה אקראית סטטי) עם רוחב פס גבוה משמעותית ליחידת הכפל של המטריצה (MXU) בהשוואה ל-HBM. הזיכרון הזה משמש כלוח טיוטה מהיר לליבות מותאמות אישית. גודל המאגר הזה הוא פרמטר שניתן לשינוי. אופטימיזציה של גודל המאגר חיונית להתאמה של ליבות Pallas בהתאמה אישית, כי גודלי הבלוקים שלהן מוגבלים לעיתים קרובות על ידי ה-VMEM הזמין.
- זיכרון מארח ו-PCIe: כל קבוצה של ארבעה שבבי TPU מחוברת למארח CPU באמצעות רשת PCIe. לחיבור הזה יש רוחב פס נמוך בהרבה מ-HBM, אבל אפשר להשתמש בזיכרון הראשי של המארח כדי להעביר הפעלות או מצבים של אופטימיזציה כדי לפנות מקום ב-HBM. זו טכניקה שימושית במיוחד לניהול עומס על הזיכרון במודלים גדולים.
מידע נוסף על ניהול יעיל של העברת נתונים בין הרמות של היררכיית הזיכרון של TPU7x זמין במאמר אופטימיזציות של ביצועים ב-Ironwood.
ארכיטקטורה של שני צ'יפלטים
מודל התכנות של Ironwood מאפשר גישה לשני שבבי TPU במקום לליבה לוגית אחת (שנקראת גם ארכיטקטורת MegaCore) ששימשה בדורות הקודמים (TPU v4 ו-v5p). השינוי הזה משפר את היעילות של ייצור השבב ואת העלות-תועלת שלו. העיצוב החדש מייצג שינוי ארכיטקטוני, אבל הוא מאפשר לכם לעשות שימוש חוזר במודלים קיימים של תוכנה עם שינויים מינימליים.
מערכות Ironwood TPU מורכבות משני צ'יפלטים נפרדים, שלכל אחד מהם יש מרחב זיכרון ייעודי משלו. זה שונה ממרחב הזיכרון המאוחד של ארכיטקטורת MegaCore.
הרכב של Chiplet: כל Chiplet היא יחידה עצמאית עם TensorCore אחד, שני SparseCore ו-96GB של זיכרון HBM (זיכרון עם רוחב פס גבוה).
חיבור מהיר בין רכיבים: שני הצ'יפלטים מחוברים באמצעות ממשק בין ליבות (D2D) שמהיר פי שישה מקישור ICI (חיבור בין רכיבים) חד-ממדי. התקשורת בין הצ'יפלטים מנוהלת באמצעות פעולות קולקטיביות.
חשיפה של מודל תכנות ומסגרת
מודל התכנות של Ironwood דומה לזה של דורות TPU שקדמו ל-v4, כמו TPU v3. הארכיטקטורה החדשה מוצגת בדרכים הבאות:
שני מכשירים לכל שבב: פלטפורמות כמו JAX חושפות כל שבב Ironwood כשני 'מכשירים' נפרדים, אחד לכל שבב קטן.
מפרט של שבב: אתם יכולים לציין באיזה שבב להשתמש לחישוב. JAX מוסיף מימד רביעי למפרט הטופולוגיה כדי להבחין בין שבבים קטנים. העיצוב הזה מאפשר לכם לעשות שימוש חוזר במודלים קיימים של תוכנה עם שינויים מינימליים.
מידע נוסף על השגת ביצועים אופטימליים באמצעות ארכיטקטורת dual-chiplet זמין במאמר המלצות לשיפור הביצועים של ארכיטקטורת dual-chiplet ב-Ironwood.
הגדרות נתמכות
לשבבי TPU7x יש חיבור ישיר לשבבים השכנים הקרובים ביותר ב-3 מימדים, וכתוצאה מכך נוצר אריג תלת-ממדי של חיבורי רשת. פרוסות גדולות מ-64 שבבים מורכבות מקובייה אחת או יותר של 4x4x4 שבבים.
לשבבי TPU7x יש טופולוגיית חיבורים של טורוס תלת-ממדי. הטופולוגיה הזו מאפשרת להגדיל את מספר השבבים בפרוסות עד 9,216. יש לו רוחב פס דו-כיווני של 200GBps לכל ציר לתקשורת בין שבבים בתוך תרמיל.
בטבלה הבאה מוצגים צורות נפוצות של פרוסות תלת-ממד שנתמכות ב-TPU7x:
| טופולוגיה | צ'יפים של TPU | מארחים | VMs (מכונות וירטואליות) | Cubes | היקף |
|---|---|---|---|---|---|
| 2x2x1 | 4 | 1 | 1 | 1/16 | מארח יחיד |
| 2x2x2 | 8 | 2 | 2 | 1/8 | כמה מארחים |
| 2x2x4 | 16 | 4 | 4 | 1/4 | כמה מארחים |
| 2x4x4 | 32 | 8 | 8 | 1/2 | כמה מארחים |
| 4x4x4 | 64 | 16 | 16 | 1 | כמה מארחים |
| 4x4x8 | 128 | 32 | 32 | 2 | כמה מארחים |
| 4x8x8 | 256 | 64 | 64 | 4 | כמה מארחים |
| 8x8x8 | 512 | 128 | 128 | 8 | כמה מארחים |
| 8x8x16 | 1024 | 256 | 256 | 16 | כמה מארחים |
| 8x16x16 | 2048 | 512 | 512 | 32 | כמה מארחים |
TPU7x VM
כל מכונה וירטואלית (VM) מסוג TPU7x מכילה 4 שבבים. לכל מכונה וירטואלית יש גישה לשני צמתי NUMA. מידע נוסף על צמתי NUMA זמין במאמר Non-uniform memory access (גישה לזיכרון לא אחיד) ב-Wikipedia.
כל חלקי ה-TPU7x משתמשים במכונות וירטואליות של מארח מלא עם 4 שבבים. המפרט הטכני של מכונת TPU7x וירטואלית הוא:
- מספר המעבדים הווירטואליים לכל מכונה וירטואלית: 224
- RAM לכל מכונה וירטואלית: 960GB
- מספר צמתי NUMA לכל מכונה וירטואלית: 2
Hyperdisk
כברירת מחדל, דיסק האתחול של מכונת ה-VM עבור TPU7x הוא Hyperdisk Balanced. אתם יכולים לצרף עוד דיסקים למכונת ה-TPU הווירטואלית כדי לקבל נפח אחסון נוסף. סוגי הדיסקים הבאים נתמכים ב-TPU7x:
- Hyperdisk Balanced
- Hyperdisk ML
מידע נוסף על Hyperdisk זמין במאמר סקירה כללית על Hyperdisk. מידע נוסף על אפשרויות אחסון ל-Cloud TPU זמין במאמר אפשרויות אחסון לנתוני Cloud TPU.
המאמרים הבאים
- שימוש ב-TPU7x עם GKE
- שימוש ב-TPU7x עם מצב All Capacity
- שימוש בפלטפורמת האבחון של Google Cloud ML כדי לבצע אופטימיזציה של עומסי העבודה ולאבחן אותם
- הפעלת עומס עבודה של אימון באמצעות מתכון שעבר אופטימיזציה ל-TPU7x
- הפעלת מיקרו-בנצ'מרק TPU7x
- אופטימיזציות של הביצועים ב-Ironwood
- אימון מודלים של למידת מכונה בהיקף גדול ב-GKE באמצעות Multi-Tier Checkpointing