שאלות נפוצות – Cloud TPU

במסמך הזה מפורטת רשימה של שאלות נפוצות בנושא Cloud TPU. הוא מחולק לקטעים:

  1. שאלות נפוצות שלא תלויות במסגרת – שאלות על שימוש ב-Cloud TPU בלי קשר למסגרת ה-ML שבה אתם משתמשים.
  2. שאלות נפוצות על JAX – שאלות על שימוש ב-Cloud TPU עם JAX.
  3. שאלות נפוצות על 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 וירטואלית.

מידע נוסף מופיע במאמר אפשרויות אחסון ב-Cloud TPU.

שאלות נפוצות על JAX

איך אפשר לדעת אם התוכנית משתמשת ב-TPU?

יש כמה דרכים לוודא ש-JAX משתמש ב-TPU:

  1. משתמשים בפונקציה jax.devices(). לדוגמה:

    assert jax.devices()[0].platform == 'tpu'
    
  2. יוצרים פרופיל של התוכנית ומוודאים שהפרופיל מכיל פעולות TPU. מידע נוסף זמין במאמר בנושא יצירת פרופיל של תוכניות JAX

מידע נוסף זמין בשאלות הנפוצות בנושא JAX

שאלות נפוצות בנושא Pytorch

איך אפשר לדעת אם התוכנית משתמשת ב-TPU?

אפשר להריץ את פקודות Python הבאות:

>>> import torch_xla.core.xla_model as xm
>>> xm.get_xla_supported_devices(devkind="TPU")

בודקים אם מופיעים מכשירי TPU.