שאלות נפוצות – Cloud TPU
במסמך הזה מפורטת רשימה של שאלות נפוצות בנושא Cloud TPU. הוא מחולק לקטעים:
- שאלות נפוצות שלא תלויות במסגרת – שאלות על שימוש ב-Cloud TPU בלי קשר למסגרת ה-ML שבה אתם משתמשים.
- שאלות נפוצות על JAX – שאלות על שימוש ב-Cloud TPU עם JAX.
- שאלות נפוצות על PyTorch – שאלות על שימוש ב-Cloud TPU עם PyTorch.
שאלות נפוצות שלא קשורות ל-Framework
איך בודקים איזה תהליך משתמש ב-TPU במכונה וירטואלית של Cloud TPU?
מריצים את הפקודה tpu-info במכונת ה-VM של Cloud TPU כדי להדפיס את מזהה התהליך ומידע נוסף על התהליך באמצעות ה-TPU. במאמר בנושא מדדים נתמכים מפורטים המדדים וההגדרות שלהם.
tpu-info
הפלט של tpu-info אמור להיראות כך:
TPU Chips
┏━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━┓
┃ Chip ┃ Type ┃ Devices ┃ PID ┃
┡━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━┩
│ /dev/accel0 │ TPU v4 chip │ 1 │ 130007 │
│ /dev/accel1 │ TPU v4 chip │ 1 │ 130007 │
│ /dev/accel2 │ TPU v4 chip │ 1 │ 130007 │
│ /dev/accel3 │ TPU v4 chip │ 1 │ 130007 │
└─────────────┴─────────────┴─────────┴────────┘
TPU Runtime Utilization
┏━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Device ┃ Memory usage ┃ Duty cycle ┃
┡━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━┩
│ 0 │ 0.00 GiB / 31.75 GiB │ 0.00% │
│ 1 │ 0.00 GiB / 31.75 GiB │ 0.00% │
│ 2 │ 0.00 GiB / 31.75 GiB │ 0.00% │
│ 3 │ 0.00 GiB / 31.75 GiB │ 0.00% │
└────────┴──────────────────────┴────────────┘
TensorCore Utilization
┏━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Chip ID ┃ TensorCore Utilization ┃
┡━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
│ 0 │ 0.00% │
│ 1 │ 0.00% │
│ 3 │ 0.00% │
│ 2 │ 0.00% |
└─────────┴────────────────────────┘
Buffer Transfer Latency
┏━━━━━━━━━━━━━┳━━━━━┳━━━━━┳━━━━━┳━━━━━━┓
┃ Buffer Size ┃ P50 ┃ P90 ┃ P95 ┃ P999 ┃
┡━━━━━━━━━━━━━╇━━━━━╇━━━━━╇━━━━━╇━━━━━━┩
│ 8MB+ | 0us │ 0us │ 0us │ 0us |
└─────────────┴─────┴─────┴─────┴──────┘
איך מוסיפים נפח של דיסק אחסון מתמיד (persistent disk) למכונת Cloud TPU וירטואלית?
מידע נוסף זמין במאמר איך מוסיפים דיסק אחסון מתמיד (persistent disk) למכונת TPU וירטואלית.
אילו אפשרויות אחסון נתמכות או מומלצות לאימון באמצעות מכונת TPU וירטואלית?
מידע נוסף מופיע במאמר אפשרויות אחסון ב-Cloud TPU.
שאלות נפוצות על JAX
איך אפשר לדעת אם התוכנית משתמשת ב-TPU?
יש כמה דרכים לוודא ש-JAX משתמש ב-TPU:
משתמשים בפונקציה
jax.devices(). לדוגמה:assert jax.devices()[0].platform == 'tpu'יוצרים פרופיל של התוכנית ומוודאים שהפרופיל מכיל פעולות TPU. מידע נוסף זמין במאמר בנושא יצירת פרופיל של תוכניות JAX
מידע נוסף זמין בשאלות הנפוצות בנושא JAX
שאלות נפוצות בנושא Pytorch
איך אפשר לדעת אם התוכנית משתמשת ב-TPU?
אפשר להריץ את פקודות Python הבאות:
>>> import torch_xla.core.xla_model as xm
>>> xm.get_xla_supported_devices(devkind="TPU")
בודקים אם מופיעים מכשירי TPU.