בקשת מכונות וירטואליות מסוג TPU Flex-start

מכונות וירטואליות עם TPU Flex-start, שמבוססות על Dynamic Workload Scheduler, מספקות דרך גמישה וחסכונית לגשת למשאבי TPU לעומסי עבודה של AI. מכונות וירטואליות עם הפעלה גמישה מאפשרות הקצאה דינמית של TPU לפי הצורך, למשך עד 7 ימים, ללא הזמנות לטווח ארוך או ניהול מורכב של מכסות. עם מכונות וירטואליות של TPU Flex-start, אתם שולחים בקשה להקצאת TPU שנשמרת עד שהקיבולת הופכת לזמינה. אחרי שהם זמינים, מכונות ה-TPU הווירטואליות פועלות למשך הזמן שציינתם בבקשה.

מכונות וירטואליות עם TPU Flex-start מתאימות לניסויים מהירים, לבדיקות בקנה מידה קטן, להקצאה דינמית של TPUs לעומסי עבודה של הסקת מסקנות, לכוונון עדין של מודלים ולהרצת עומסי עבודה שנמשכים פחות מ-7 ימים. מידע נוסף על אפשרויות אחרות לשימוש ב-TPU זמין במאמר אפשרויות לשימוש ב-Cloud TPU.

אתם יכולים למחוק את משאבי ה-TPU בכל שלב כדי להפסיק את החיוב. למידע נוסף על תמחור TPU, ראו תמחור Cloud TPU.

מגבלות

למכונות וירטואליות עם TPU Flex-start יש את המגבלות הבאות:

  • אפשר לבקש מכונות וירטואליות עם TPU Flex-start למשך עד 7 ימים.
  • אפשר לבקש את הגרסאות והאזורים הבאים של Cloud TPU:
    • TPU v6e: ‏ asia-northeast1-b, ‏ us-east5-a, ‏ us-south1-ai1b
    • TPU v5p: us-east5-a
    • TPU v5e: us-west4-a
  • כדי להשתמש במכונות וירטואליות עם TPU Flex-start, צריך להשתמש ב-queued resources API.

לפני שמתחילים

לפני שמבקשים מכונות וירטואליות עם TPU Flex-start, צריך:

  • התקנת Google Cloud CLI
  • יצירת Google Cloud פרויקט
  • הפעלת Cloud TPU API

מידע נוסף זמין במאמר בנושא הגדרת סביבת Cloud TPU.

כדאי גם לוודא שיש לכם מספיק מכסות של מכונות וירטואליות עם אפשרות קדימה כדי להשתמש במכונות וירטואליות עם TPU Flex-start. אם אתם צריכים יותר ליבות TPU מהכמות שמוקצית במכסת ברירת המחדל, אתם צריכים לבקש הקצאה של מכסה גבוהה יותר. מידע נוסף על הגדרות ברירת מחדל ועל בקשות להגדלת המכסות זמין במאמר בנושא מכסות של Cloud TPU.

בקשת מכונות וירטואליות מסוג TPU Flex-start

מכונות וירטואליות עם TPU Flex-start משתמשות ב-API של משאבים בתור כדי לבקש משאבי TPU בתור. כשהמשאב המבוקש יהיה זמין, הוא יוקצה לפרויקט Google Cloud שלכם לשימוש מיידי ובלעדי. אחרי משך ההפעלה שצוין בבקשה, מכונות ה-TPU הווירטואליות נמחקות והמשאב שנמצא בתור עובר למצב SUSPENDED. מידע נוסף על משאבים בתור זמין במאמר ניהול משאבים בתור.

כדי לבקש מכונות וירטואליות עם TPU Flex-start, משתמשים בפקודה gcloud alpha compute tpus queued-resources create עם הדגל --provisioning-model שמוגדר ל-flex-start והדגל --max-run-duration שמוגדר למשך הזמן שבו רוצים שה-TPU יפעל.

gcloud alpha compute tpus queued-resources create QUEUED_RESOURCE_ID \
    --zone=ZONE \
    --accelerator-type=ACCELERATOR_TYPE \
    --runtime-version=RUNTIME_VERSION \
    --node-id=NODE_ID \
    --provisioning-model=flex-start \
    --max-run-duration=RUN_DURATION

מחליפים את ה-placeholders הבאים:

  • QUEUED_RESOURCE_ID: מזהה שהמשתמש הקצה לבקשת המשאב שנוספה לתור.
  • ZONE: האזור שבו רוצים ליצור את מכונת ה-TPU הווירטואלית.
  • ACCELERATOR_TYPE: מציין את הגרסה והגודל של Cloud TPU שרוצים ליצור. למידע נוסף על סוגי המאיצים הנתמכים בכל גרסת TPU, ראו גרסאות TPU.
  • RUNTIME_VERSION: גרסת התוכנה של Cloud TPU.
  • NODE_ID: מזהה שהמשתמש מקצה ל-TPU שנוצר כשהבקשה למשאב בתור מוקצית.
  • RUN_DURATION: משך הזמן שבו יופעלו יחידות ה-TPU. צריך להזין את משך הזמן כמספר הימים, השעות, הדקות והשניות, ואחרי כל אחד מהם להוסיף את הסימן d, h, m ו-s בהתאמה. לדוגמה, כדי להגדיר משך זמן של 72 שעות, מציינים 72h, וכדי להגדיר משך זמן של יום אחד, שעתיים, 3 דקות ו-4 שניות, מציינים 1d2h3m4s. הערך המקסימלי הוא 7 ימים.

אפשר להתאים אישית את בקשת המשאבים שנוספה לתור כדי להפעיל אותה בזמנים ספציפיים באמצעות דגלים נוספים:

  • --valid-after-duration: משך הזמן שלפניו אסור להקצות את ה-TPU.
  • --valid-after-time: השעה שלפני כן אסור להקצות את ה-TPU.
  • --valid-until-duration: משך הזמן שהבקשה תקפה. אם הבקשה לא תטופל במהלך הזמן הזה, התוקף שלה יפוג והיא תעבור למצב FAILED.
  • --valid-until-time: הזמן שבו הבקשה תקפה. אם הבקשה לא תטופל עד אז, התוקף שלה יפוג והיא תעבור למצב FAILED.

מידע נוסף על דגלים אופציונליים מופיע במאמרי העזרה בנושא gcloud alpha compute tpus queued-resources create.

קבלת הסטטוס של בקשה למכונות TPU Flex-start

כדי לעקוב אחרי הסטטוס של הבקשה שלכם למכונות וירטואליות עם TPU Flex-start, משתמשים ב-Queued Resources API כדי לקבל את הסטטוס של בקשת המשאב בתור באמצעות הפקודה gcloud alpha compute tpus queued-resources describe:

gcloud alpha compute tpus queued-resources describe QUEUED_RESOURCE_ID \
    --zone ZONE

משאב בתור יכול להיות באחד מהסטטוסים הבאים:

  • WAITING_FOR_RESOURCES: הבקשה עברה אימות ראשוני והיא נוספה לתור.
  • PROVISIONING: הבקשה נבחרה מהתור, ומכונות ה-TPU הווירטואליות נוצרות.
  • ACTIVE: הבקשה בוצעה, ומכונות ה-TPU הווירטואליות מוכנות.
  • FAILED: לא ניתן להשלים את הבקשה. משתמשים בפקודה describe כדי לקבל פרטים נוספים.
  • SUSPENDING: המשאבים שמשויכים לבקשה נמחקים.
  • SUSPENDED: המשאבים שמשויכים לבקשה נמחקו.

מידע נוסף זמין במאמר אחזור של מצב ומידע אבחוני לגבי בקשה למשאב שנמצא בתור.

מעקב אחר זמן הריצה של מכונות וירטואליות מסוג TPU Flex-start

אפשר לעקוב אחרי זמן הריצה של מכונות וירטואליות עם TPU Flex-start על ידי בדיקת חותמת הזמן של סיום ה-TPU:

  1. איך מקבלים את הפרטים של בקשת משאבים שנמצאת בתור
  2. בוחרים אחת מהאפשרויות הבאות בהתאם לשאלה אם יחידות ה-TPU נוצרו:

    • אם המשאב בתור ממתין למשאבים: בשדה maxRunDuration בפלט. בשדה הזה מציינים כמה זמן יפעלו יחידות ה-TPU אחרי שהן ייווצרו.

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

מחיקה של משאב בתור

כדי למחוק בקשה למשאב בתור ואת יחידות ה-TPU שמשויכות לבקשה, צריך למחוק את הבקשה למשאב בתור ולהעביר את האפשרות --force לפקודה queued-resources delete:

gcloud alpha compute tpus queued-resources delete QUEUED_RESOURCE_ID \
    --force

אם מוחקים את ה-TPU ישירות באמצעות הפקודה gcloud compute tpus tpu-vm delete, צריך גם למחוק את המשאב שנוסף לתור, כמו שמוצג בדוגמה הבאה. כשמוחקים את ה-TPU, בקשת המשאב שבהמתנה עוברת למצב SUSPENDED, ואז אפשר למחוק את בקשת המשאב שבהמתנה.

כדי למחוק TPU, משתמשים בפקודה gcloud compute tpus tpu-vm delete:

gcloud compute tpus tpu-vm delete NODE_ID \
    --zone ZONE

כדי למחוק את המשאב שנוסף לתור, משתמשים בפקודה gcloud alpha compute tpus queued-resources delete:

gcloud alpha compute tpus queued-resources delete QUEUED_RESOURCE_ID \
    --zone ZONE

מידע נוסף מופיע במאמר בנושא מחיקת בקשה למשאב שנמצא בתור.