חומר עזר של CTPU
סקירה כללית
הכלי ctpu בקוד פתוח משמש ליצירת אוסף של משאבי מחשוב, שכולל מכונה וירטואלית ב-Compute Engine ומכשיר Cloud TPU אחד או יותר. הכלי מותקן מראש ב-Cloud Shell.
אפשר למצוא מסמכי עזרה וקוד של ctpu ב-GitHub.
בכלי ctpu משתמשים בתחביר הבא:
ctpu <subcommand> <flags> <subcommand> <subcommand args>
אלה פקודות המשנה של ctpu:
auth
- תיאור
- הגדרה או הצגה של הרשאות ל-Cloud TPU
- Usage
ctpu auth <flags> <subcommand> <subcommand args>
- דוגמה
ctpu auth list --project="my-project" --zone=us-central1-a ctpu auth list --project my-project --zone us-central1-a
- פקודות משנה
הפקודה
ctpu authתומכת בפקודות המשנה הבאות:- add-bigtable – מוודא שיש ליחידות Cloud TPU הרשאה ל-Cloud Bigtable
- add-gcs – מוודא של-Cloud TPU יש הרשאה ל-Cloud Storage
- list – הצגת ההרשאות של חשבון השירות ב-Cloud TPU
- commands – הצגת רשימה של כל שמות הפקודות
- flags - describe all known top-level flags
- help - describe subcommands and their syntax
- דגלים אופציונליים
אלה פקודות אופציונליות ל-
ctpu auth.name | project | zone
מחיקה (rm)
- תיאור
- מוחקים את המכונה הווירטואלית ב-Compute Engine ואת Cloud TPU.
- Usage
ctpu rm <flags>
- דוגמה
ctpu rm --zone=us-central1-b
help
- תיאור
- רשימה של כל פקודות המשנה
ctpuוהדגלים ברמה העליונה. - Usage
ctpu help ctpu help <subcommand>
- דוגמה
ctpu help // list all ctpu subcommands and top level flags ctpu help auth // list all flags that can be used with `ctpu auth` ctpu help up // list all flags that can be used with `ctpu up`
רשימה (ls)
- תיאור
- מציג רשימה של כל המכונות הווירטואליות של Compute Engine ושל Cloud TPU באזור שצוין.
- Usage
ctpu ls <flags>
- דוגמה
ctpu ls --zone=us-central1-b
pause (zz)
- תיאור
מפסיקים את המכונה הווירטואלית ב-Compute Engine ומוחקים את Cloud TPU. הפסקת החיוב על השימוש ב-Cloud TPU עד להפעלת הפקודה
ctpu up.כדי לוודא ש-Cloud TPU הופסק, צריך לציין את השם של Cloud TPU ואת האזור בשורת הפקודה.
- Usage
ctpu pause <name, zone>
- דוגמה
ctpu pause --name=my-tpu --zone=us-central1-a // pause the named TPU in the specified zone
print-config (cfg)
- תיאור
- הדפסה על המסך של ההגדרה הנוכחית של השם של Cloud TPU, שם הפרויקט והאזור.
- דוגמה
ctpu print-config
מכסה
- תיאור
- הצגת כתובת URL שבה אפשר לראות את המכסות.
- Usage
ctpu quota
- דוגמה
ctpu quota Output: Quotas cannot currently be displayed within
ctpu. To view your quota, open <url> Request additional quota from <url>
להפעיל מחדש
- תיאור
מפעיל מחדש Cloud TPU שנמצא עדיין במצב RUNNING (מוצג ב-
ctpu status), אבל הפסיק לפעול בגלל בעיית חומרה. אם ה-TPU במצב STOPPED, משתמשים ב-gcloud compute tpu startאו בלחצן START בדף Compute Engine > TPUs ב-מסוף Cloud.
restartלא מפעיל מחדש Cloud TPU שנפסק. צריך להריץ את הפקודותctpu deleteו-ctpu upאם בוצעה קדימה (preemption) ב-Cloud TPU.- Usage
ctpu restart <flags>
- דוגמה
ctpu restart --zone=us-central1-a
סטטוס (st)
- תיאור
שליחת שאילתה אל GCP APIs (אזור ברירת המחדל בלבד) כדי לקבוע את הסטטוס הנוכחי של Cloud TPU ושל מכונת Compute Engine VM.
- Usage
ctpu st
- דוגמה
ctpu st --zone=us-central1-a Status message: Your cluster is running! Compute Engine VM: RUNNING Cloud TPU: RUNNING
tpu-locations
- תיאור
- רשימת כל האזורים שבהם זמינים סוגי TPU.
- Usage
- ctpu tpu-locations
- תשובה
Cloud TPU Locations: asia-east1-c europe-west4-a us-central1-a us-central1-b us-central1-c
tpu-sizes
- תיאור
- רשימה של כל הגדלים הזמינים של TPU באזור שצוין. חלק מהגדלים זמינים רק באזורים מסוימים. (ברירת מחדל = אזור ברירת מחדל)
- Usage
tpu-sizes <zone>
- דוגמה
ctpu tpu-sizes --zone=us-central1-a
חץ למעלה
- תיאור
מציגים קבוצת משאבים של
ctpu. בפעם הראשונה שמריצים את הפקודהctpu upבפרויקט, התהליך ארוך יותר מאשר בהרצות הבאות, כי הפקודה מבצעת משימות כמו הפצה של מפתחות SSH והפעלה של API.- הפעלת השירותים Compute Engine ו-Cloud TPU.
- יוצר מכונה וירטואלית ב-Compute Engine עם הגרסה היציבה העדכנית של TensorFlow שכבר מותקנת.
- מערכת תקצה אזור ברירת מחדל, כמו
us-central1-b, על סמך המיקום שלכם. - השם של Cloud TPU מועבר למכונה הווירטואלית ב-Compute Engine כמשתנה סביבה (
TPU_NAME). - הסוכן מוודא של-Cloud TPU יש גישה למשאבים שהוא צריך מ Google Cloud הפרויקט שלכם, על ידי הקצאת תפקידי IAM ספציפיים לחשבון השירות של Cloud TPU.
- מבצע מספר בדיקות אחרות.
- המערכת תכניס אתכם למכונה הווירטואלית החדשה ב-Compute Engine. הנחיית המעטפת תשתנה מ-
username@projectל-username@tpuname.
אפשר להריץ את הפקודה
ctpu upכמה פעמים שרוצים. לדוגמה, אם איבדתם את חיבור ה-SSH למכונה וירטואלית ב-Compute Engine, מריצים את הפקודהctpu upכדי לשחזר את החיבור. חובה לציין תחום (zone) אם Compute Engine לא נמצא בתחום ברירת המחדל. לדוגמה:$ ctpu up --zone=us-central1-a
- Usage
ctpu up <flags>
- דוגמה
ctpu up --tpu-size=v2-8 --disk-size-gb=320 --preemptible
- דגלים
--disk-size-gb
מגדירים את גודל נפח האחסון הבסיסי של המכונה הווירטואלית ב-Compute Engine. הערך חייב להיות מספר שלם. (ברירת מחדל = 250)--dry-run
לא מבצעים שינויים, מדפיסים רק את מה שהיה קורה.--forward-agent
מפעילים העברה של סוכן SSH כשמתחברים ל-SSH במכונת ה-VM של Compute Engine. העברת סוכן SSH מאפשרת גישה למאגרים משותפים (כמו GitHub) בלי להציב מפתחות פרטיים במכונה וירטואלית של Compute Engine. (ברירת מחדל = true)--forward-ports
העברה אוטומטית של יציאות שימושיות מהמכונה הווירטואלית ב-Compute Engine למחשב המקומי. היציאות שמועברות הן: 6006 (tensorboard), 8888 (jupyter notebooks), 8470 (יציאת TPU), 8466 (יציאת פרופיל TPU). (ברירת מחדל = true)--gce-image
עוקפים את תמונת Compute Engine שנבחרה באופן אוטומטי. משתמשים בדגל הזה כשמשתמשים בתמונות מותאמות אישית משלכם במקום בתמונות שמסופקות עם TensorFlow המותקן.--gcp-network
מציינים את הרשת שבה צריך ליצור את Cloud TPU ואת מכונת ה-VM המשויכת. מידע על רשתות זמין במאמר בנושא סקירה כללית של רשתות בענן וירטואלי פרטי (VPC). (ברירת מחדל = רשת ברירת המחדל)--log-http
הדפסת התוכן המלא של זוגות בקשות ותגובות HTTP. כדי להפעיל את ההדפסה, מגדירים את התכונה הניסיונית הזו כ-true. משתמשים בדגל הזה כשצריך פלט יומן כדי לדווח על באג ב-ctpu. פרטים נוספים מופיעים בקובץ ה-README שלctpu.--machine-type
מגדירים את הגודל של מכונת ה-VM ב-Compute Engine. רשימה מלאה של סוגי המכונות זמינה בדף סוגי המכונות ב-Cloud. (ברירת מחדל = n1-standard-2)--name
שינוי השם שמשמש למכונות וירטואליות ול-Cloud TPU. (ברירת מחדל = שם המשתמש)--noconf
דילוג על אישור.
--preemptible
יוצרים צומת Cloud TPU זמני. עלות השימוש ב-Cloud TPU שניתן להפסיק את הפעולה שלו נמוכה יותר לשעה מאשר עלות השימוש ב-Cloud TPU שלא ניתן להפסיק את הפעולה שלו. שירות Cloud TPU יכול לצאת ממכשיר שניתן להפסיק את הפעולה שלו בכל שלב. (ברירת מחדל = לא ניתן להגדרה כקדימה)--preemptible-vm
יוצרים מכונה וירטואלית (VM) ב-Compute Engine שאפשר להפסיק את הפעולה שלה. העלות של VM זמני לשעה נמוכה יותר מהעלות של מכונה רגילה. שירות Compute Engine יכול לצאת מהמכונה הווירטואלית בכל שלב. (ברירת מחדל = לא ניתן להגדרה כקדימה)--print-welcome
הדפסה תמיד של הודעת הפתיחה.--project
החלפת שם הפרויקט ב-GCP שבו ישתמשו להקצאת מכונות וירטואליות ו-TPU. מציינים ערך מתוך cloud config או מטא נתונים של Compute Engine, בדרך כלל שם הפרויקט. אם לא נמצא ערך טוב, צריך לספק ערך בשורת הפקודה.--tf-version
מגדירים את הגרסה של TensorFlow שבה רוצים להשתמש כשיוצרים את מכונת ה-VM ב-Compute Engine ואת Cloud TPU. (ברירת מחדל = הגרסה היציבה האחרונה)--tpu-only
הקצאת Cloud TPU בלבד. משתמשים באפשרות הזו רק אם כבר יש מכונה וירטואלית זמינה.--tpu-size
הגדרת הגודל וגרסת החומרה של Cloud TPU.--use-dl-images
במקום תמונות של מכונות TPU, צריך להשתמש בתמונות VM של למידה עמוקה (Deep Learning) (ראו מסמכים: https://cloud.google.com/deep-learning-vm/). (ברירת מחדל = תמונות מכונה של TPU)--vm-only
הקצאת מכונה וירטואלית בלבד. משתמשים באפשרות הזו כשלא מוכנים להגדיר TPU ולשלם עליו.--zone
החלפת האזור ב-Compute Engine שבו יש להשתמש בהקצאת מכונות וירטואליות ו-Cloud TPU. מריצים את הפקודהctpu help upבשורת הפקודה כדי לראות את הרשימה.
גרסה
- תיאור
- מדפיס את הגרסה של
ctpuשהותקנה. - Usage
ctpu version
- תשובה
ctpu version Output: ctpu version: 1.9