הוספה או הסרה של יחידות GPU

‫Compute Engine מספק יחידות לעיבוד גרפי (GPU) שאפשר להוסיף למכונות של Compute Engine. אתם יכולים להשתמש במעבדי ה-GPU האלה כדי להאיץ עומסי עבודה ספציפיים במופעי המחשוב, כמו בינה מלאכותית (AI), למידת מכונה (ML) ועומסי עבודה שדורשים הרבה גרפיקה.

אפשר להשתמש רק בשתי משפחות של מכונות כשמריצים GPU ב-Compute Engine:

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

  • כדי לעיין בשלבים נוספים של דרישות מוקדמות, כמו בחירת תמונת מערכת הפעלה ובדיקת מכסת ה-GPU, אפשר לעיין במסמך הסקירה הכללית.
  • אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות. אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Google Cloud . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:

    צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:

    המסוף

    כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Google Cloud

    REST

    כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.

      התקינו את ה-CLI של Google Cloud.

      אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

    מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Google Cloud .

מופעים שעברו אופטימיזציה למאיץ

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

  • אי אפשר להסיר GPUs מסוגי מכונות שעברו אופטימיזציה למאיצים.

  • במקרים של מופעי A4X Max,‏ A4X,‏ A4,‏ A3 Ultra,‏ A3 Mega,‏ A3 High,‏ A3 Edge ו-A2 Ultra, אי אפשר לשנות את סוג המכונה. אם אתם צריכים לעבור לסוג מכונה ממשפחה או מסדרה אחרת של מכונות, אתם צריכים ליצור מופע חדש עם סוג המכונה שבחרתם. לאחר מכן, מעבירים את עומס העבודה למופע החדש.

  • במכונות וירטואליות מסוג G4,‏ G2 ו-A2 Standard, אפשר לשנות את מספר ה-GPU על ידי מעבר לסוג מכונה אחר באותה סדרת מכונות. לדוגמה, כדי להוסיף יחידות GPU למכונת G2, אפשר לשנות את סוג המכונה מ-g2-standard-16 ל-g2-standard-48.

    אי אפשר להעביר מכונות וירטואליות מסוג G4,‏ G2 או A2 Standard לסוג מכונה מסדרה או ממשפחה אחרת של מכונות. לדוגמה, אי אפשר לשנות את סוג המכונה של מופע מ-g2-standard-16 ל-g4-standard-48 כי G2 ו-G4 הן סדרות מכונות שונות. אם אתם צריכים לעבור לסוג מכונה מסדרת מכונות או ממשפחת מכונות אחרת, אתם צריכים ליצור מופע חדש עם סוג המכונה שבחרתם. לאחר מכן, מעבירים את עומס העבודה למופע החדש.

שינוי מספר ה-GPU

אפשר לשנות את מספר ה-GPU של מכונה וירטואלית מסוג G4,‏ G2 או A2 שמותאמת למאיץ רגיל באמצעות Google Cloud המסוף או REST.

המסוף

כדי לשנות את מספר ה-GPU של האינסטנס, צריך לעצור את האינסטנס ולערוך את הגדרות האינסטנס.

  1. מוודאים שכל האפליקציות הקריטיות הופסקו במופע.

  2. נכנסים לדף VM instances במסוף Google Cloud כדי לראות את רשימת המכונות הווירטואליות.

    כניסה לדף VM instances

  3. לוחצים על השם של המופע שרוצים לשנות את מספר ה-GPU שלו. הדף פרטים נפתח.

  4. מבצעים את השלבים הבאים בדף פרטים.

    1. אם המכונה פועלת, לוחצים על Stop כדי לעצור אותה. אם אין אפשרות עצירה, לוחצים על עוד פעולות > עצירה.

    2. לוחצים על עריכה.

    3. בקטע Machine configuration, בוחרים את משפחת המכונות GPUs ומבצעים את הפעולות הבאות:

      1. ברשימה מספר המעבדים הגרפיים, מגדילים או מקטינים את מספר המעבדים הגרפיים.

    4. כדי להחיל את השינויים, לוחצים על שמירה.

    5. כדי להפעיל מחדש את המכונה, לוחצים על התחלה/המשך.

REST

כדי לשנות את מספר ה-GPU במכונה, צריך לעצור את המכונה ולשנות את סוג המכונה. לכל מכונה וירטואלית מותאמת למאיץ יש מספר מסוים של יחידות GPU שמחוברות אליה. אם משנים את סוג המכונה, מספר מעבדי ה-GPU שמצורפים למכונה משתנה בהתאם.

  1. מוודאים שכל האפליקציות הקריטיות שלכם הופסקו במופע, ואז יוצרים בקשת POST להפסקת המופע כדי שניתן יהיה להעביר אותו למערכת מארחת שבה יש מעבדי GPU.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
    
  2. אחרי שהמופע מפסיק, יוצרים בקשת POST לשינוי סוג המכונה.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setMachineType
    
    {
       machineType: "zones/ZONE/machineTypes/MACHINE_TYPE"
    }
    
  3. יוצרים בקשת POST כדי להפעיל את המכונה.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
    

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT_ID: מזהה הפרויקט.
  • VM_NAME: השם של המכונה שרוצים להוסיף לה יחידות GPU.
  • ZONE: האזור שבו נמצאת המכונה. באזור הזה צריכה להיות תמיכה ב-GPU.
  • MACHINE_TYPE: סוג המכונה שרוצים להשתמש בה. הפורמט חייב להיות אחד מהפורמטים הבאים:

    • אם המופע שלכם משתמש במכונת G4, צריך לבחור סוג מכונת G4 אחר.
    • אם המכונה שלכם היא מסוג G2, צריך לבחור סוג מכונה G2 אחר. סוגי המכונות G2 תומכים גם בזיכרון בהתאמה אישית. הזיכרון צריך להיות כפולה של 1,024MB, ובטווח הזיכרון הנתמך. לדוגמה, שם סוג המכונה של מכונה עם 4 ליבות vCPU וזיכרון בנפח 19GB יהיה g2-custom-4-19456.
    • אם המופע שלכם משתמש במכונה רגילה מסוג A2, בוחרים סוג מכונה רגילה אחר מסוג A2.

מגבלות

מופעים מסוג G4

מופעי G2

מכונות A2

‫N1 – מכונות וירטואליות לשימוש כללי

בקטע הזה מוסבר איך להוסיף יחידות GPU למכונה וירטואלית, לשנות אותן או להסיר אותן ממכונה וירטואלית שנוצרה באמצעות סוג מכונה למטרות כלליות N1.

לסיכום, התהליך להוספה, לשינוי או להסרה של כרטיסי GPU ממופע קיים הוא כדלקמן:

  1. בודקים שלמופע יש דיסק הפעלה בגודל של 40 GiB לפחות.
  2. עוצרים את המופע.
  3. מוסיפים, משנים או מסירים את כרטיסי ה-GPU.

    אם למופע N1 שלכם לא מצורפים כרטיסי GPU, אתם צריכים לבצע את השלבים הבאים:

    1. מכינים את המופע לשינוי.
    2. משנים את הגדרת תחזוקת המארח עבור המופע. אי אפשר לבצע מיגרציה פעילה של מכונות וירטואליות עם כרטיסי GPU כי הן מוקצות למכשירי חומרה ספציפיים. מידע נוסף זמין במאמר בנושא הגבלות על GPU.
    3. משנים את סוג המכונה. כרטיסי GPU נתמכים רק בסוגים נבחרים של מכונות N1.
    4. מתקינים דרייבר של GPU במופע, כדי שהמערכת תוכל להשתמש במכשיר ה-GPU.

הכנת המופע

כשמוסיפים GPU למכונה, הסדר של ממשק הרשת עשוי להשתנות.

לרוב התמונות הציבוריות ב-Compute Engine אין שמות קבועים של ממשקי רשת, והן מותאמות לסדר החדש.

עם זאת, אם אתם משתמשים ב-SLES או בתמונה בהתאמה אישית, אתם צריכים לעדכן את הגדרת המערכת כדי למנוע את השמירה של ממשק הרשת. כדי למנוע את השמירה של ממשק הרשת, מריצים את הפקודה הבאה במכונה:

 rm /etc/udev/rules.d/70-persistent-net.rules 

הוספת יחידות GPU או שינוי סוג ה-GPU במכונות קיימות

בקטע הזה מוסבר איך להוסיף יחידות GPU או לשנות את סוג ה-GPU במופע קיים של N1 למטרות כלליות. התהליך הזה תומך בסוגי ה-GPU הבאים:

מעבדי GPU של NVIDIA:

  • ‫NVIDIA T4: nvidia-tesla-t4
  • ‫NVIDIA P4: nvidia-tesla-p4
  • ‫NVIDIA P100: nvidia-tesla-p100
  • ‫NVIDIA V100: nvidia-tesla-v100

‫NVIDIA RTX Virtual Workstation‏ (vWS) (לשעבר NVIDIA GRID):

  • NVIDIA T4 Virtual Workstation: nvidia-tesla-t4-vws
  • NVIDIA P4 Virtual Workstation: nvidia-tesla-p4-vws
  • תחנת עבודה וירטואלית NVIDIA P100: nvidia-tesla-p100-vws

    לכל תחנות העבודה הווירטואליות האלה, רישיון של תחנת עבודה וירטואלית (vWS) של NVIDIA RTX מתווסף אוטומטית למופע.

המסוף

כדי להוסיף יחידות GPU או לשנות את סוג ה-GPU, מבצעים את השלבים הבאים.

  1. מוודאים שכל האפליקציות הקריטיות הופסקו במופע.

  2. נכנסים לדף VM instances במסוף Google Cloud כדי לראות את רשימת המכונות הווירטואליות.

    כניסה לדף VM instances

  3. לוחצים על השם של המכונה שרוצים לעדכן. הדף פרטים נפתח.

  4. מבצעים את השלבים הבאים בדף פרטים.

    1. אם המופע פועל, לוחצים על Stop (עצירה). אם אין אפשרות עצירה, לוחצים על עוד פעולות > עצירה.

    2. לוחצים על עריכה.

    3. בקטע Machine configuration, בוחרים את משפחת המכונות GPUs ומבצעים את הפעולות הבאות:

      1. ברשימה GPU type, בוחרים או עוברים לאחד מסוגי ה-GPU שנתמכים במכונות וירטואליות מסוג N1.

      2. ברשימה Number of GPUs (מספר יחידות ה-GPU), בוחרים את מספר יחידות ה-GPU.

      3. אם מודל ה-GPU שלכם תומך בתחנות עבודה וירטואליות של NVIDIA RTX‏ (vWS) לעומסי עבודה של גרפיקה, ואתם מתכננים להריץ בעותק הזה עומסי עבודה שדורשים הרבה גרפיקה, בוחרים באפשרות הפעלת תחנת עבודה וירטואלית (NVIDIA GRID).

    4. אם לא צורפו למופע שלכם יחידות GPU לפני כן, צריך לבצע את הפעולות הבאות:

      1. אם למכונה יש סוג מכונה עם ליבה משותפת, צריך לשנות את סוג המכונה. ברשימה Machine type, בוחרים באחד מסוגי המכונות המוגדרים מראש מסוג N1. אפשר גם לציין הגדרות מותאמות אישית של סוג המכונה.

      2. בקטע ניהול, מבצעים את הפעולות הבאות:

        1. ברשימה On host maintenance בוחרים באפשרות Terminate VM instance. לא ניתן לבצע מיגרציה פעילה של מכונות עם כרטיסי GPU מצורפים. איך מטפלים באירועים של מארח GPU

        2. ברשימה Automatic restart בוחרים באפשרות On.

    5. כדי להחיל את השינויים, לוחצים על שמירה.

    6. כדי להפעיל מחדש את המכונה הווירטואלית, לוחצים על התחלה/המשך.

REST

כדי להוסיף או לשנות יחידות GPU במופע, צריך לעצור את המופע ולשנות את ההגדרה שלו באמצעות ה-API.

  1. מוודאים שכל האפליקציות הקריטיות מושבתות במופע, ואז יוצרים בקשת POST להשבתת המופע כדי להעביר אותו למערכת מארחת שבה יש יחידות GPU.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
    
  2. אם לא מצורפים למופע שלכם כרטיסי GPU, פועלים לפי השלבים הבאים:

    1. מזהים את סוג ה-GPU שרוצים להוסיף למופע. אפשר לשלוח בקשה GET כדי לקבל רשימה של סוגי ה-GPU שזמינים לפרויקט באזור מסוים.

      GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/acceleratorTypes
      
    2. אם למכונה יש סוג מכונה עם ליבה משותפת, צריך לשנות את סוג המכונה כך שתהיה לה לפחות ליבת vCPU אחת. אי אפשר להוסיף מאיצים למופעים עם סוגי מכונות של ליבות משותפות.

    3. יוצרים בקשת POST כדי להגדיר את אפשרויות התזמון של המכונה.

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setScheduling
      
      {
      "onHostMaintenance": "TERMINATE",
      "automaticRestart": true
      }
      
  3. יוצרים POSTבקשה להוספה או לשינוי של יחידות ה-GPU שמצורפות למופע.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setMachineResources
    
        {
         "guestAccelerators": [
          {
            "acceleratorCount": ACCELERATOR_COUNT,
            "acceleratorType": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_TYPE"
          }
         ]
        }
    
  4. יוצרים בקשת POST כדי להפעיל את המכונה.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
    

מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT_ID: מזהה הפרויקט.
  • VM_NAME: השם של המכונה שרוצים להוסיף לה יחידות GPU.
  • ZONE: האזור שבו נמצאת המכונה.
  • ACCELERATOR_COUNT: מספר יחידות ה-GPU שרוצים לצרף למכונה. רשימת מגבלות ה-GPU לפי סוג המכונה של המופע זמינה במאמר מעבדי GPU ב-Compute Engine.
  • ACCELERATOR_TYPE: מודל ה-GPU שרוצים לצרף או לעבור אליו. אם אתם מתכננים להריץ במכונה הזו עומסי עבודה שדורשים הרבה משאבים גרפיים, כדאי להשתמש באחד מהמודלים של תחנות עבודה וירטואליות.

    בוחרים אחד מהערכים הבאים:

    • מעבדי GPU של NVIDIA:

      • ‫NVIDIA T4: nvidia-tesla-t4
      • ‫NVIDIA P4: nvidia-tesla-p4
      • ‫NVIDIA P100: nvidia-tesla-p100
      • ‫NVIDIA V100: nvidia-tesla-v100
    • ‫NVIDIA RTX Virtual Workstation‏ (vWS) (לשעבר NVIDIA GRID):

      • NVIDIA T4 Virtual Workstation: nvidia-tesla-t4-vws
      • NVIDIA P4 Virtual Workstation: nvidia-tesla-p4-vws
      • תחנת עבודה וירטואלית NVIDIA P100: nvidia-tesla-p100-vws

        לכל תחנות העבודה הווירטואליות האלה, רישיון NVIDIA RTX Virtual Workstation ‏ (vWS) מתווסף באופן אוטומטי למופע שלכם.

התקנת מנהלי התקנים

כדי להתקין את הדרייברים, בוחרים באחת מהאפשרויות הבאות:

הסרת יחידות GPU

בקטע הזה מוסבר איך להסיר את סוגי ה-GPU הבאים ממופע קיים של N1 למטרות כלליות.

מעבדי GPU של NVIDIA:

  • ‫NVIDIA T4: nvidia-tesla-t4
  • ‫NVIDIA P4: nvidia-tesla-p4
  • ‫NVIDIA P100: nvidia-tesla-p100
  • ‫NVIDIA V100: nvidia-tesla-v100

‫NVIDIA RTX Virtual Workstation‏ (vWS) (לשעבר NVIDIA GRID):

  • NVIDIA T4 Virtual Workstation: nvidia-tesla-t4-vws
  • NVIDIA P4 Virtual Workstation: nvidia-tesla-p4-vws
  • תחנת עבודה וירטואלית NVIDIA P100: nvidia-tesla-p100-vws

    לכל תחנות העבודה הווירטואליות האלה, רישיון של תחנת עבודה וירטואלית (vWS) של NVIDIA RTX מתווסף אוטומטית למופע.

אפשר להשתמש ב Google Cloud console כדי להסיר יחידות GPU ממכונה קיימת. כדי להסיר כרטיסי GPU, מבצעים את השלבים הבאים:

  1. מוודאים שכל האפליקציות הקריטיות הופסקו במופע.

  2. נכנסים לדף VM instances במסוף Google Cloud כדי לראות את רשימת המכונות הווירטואליות.

    כניסה לדף VM instances

  3. לוחצים על שם המופע שרוצים להסיר ממנו את יחידות ה-GPU. הדף פרטים נפתח.

  4. מבצעים את השלבים הבאים בדף פרטים.

    1. אם המכונה פועלת, לוחצים על Stop כדי לעצור אותה. אם אין אפשרות עצירה, לוחצים על עוד פעולות > עצירה.

    2. בסרגל הכלים, לוחצים על עריכה.

    3. בקטע Machine configuration, בוחרים את משפחת המכונות General purpose ומבצעים את הפעולות הבאות:

      1. כדי לראות את המעבדים הגרפיים המצורפים, מרחיבים את הגדרות מתקדמות.

      2. בקטע GPUs, מסירים GPU באמצעות אחת מהאפשרויות הבאות:

        • כדי להסיר חלק מה-GPU, בוחרים מספר חדש ברשימה מספר ה-GPU.

        • כדי להסיר את כל כרטיסי ה-GPU, לוחצים על מחיקת GPU.

    4. אופציונלי: משנים את הגדרת מדיניות התחזוקה של המארח של המופע. במקרים של מופעים עם יחידות GPU, מדיניות התחזוקה של המארח חייבת להיות מוגדרת לערך Terminate VM instance. אבל אם הסרתם את כל יחידות ה-GPU, תוכלו לבצע מיגרציה פעילה של המופע הזה במהלך תחזוקת המארח. מידע נוסף זמין במאמר הגדרת מדיניות תחזוקה של מארח מכונה וירטואלית.

    5. כדי להחיל את השינויים, לוחצים על שמירה.

    6. כדי להפעיל מחדש את המכונה, לוחצים על התחלה/המשך.

מה השלב הבא?