במסגרות מודרניות של למידת מכונה, לעיתים קרובות משתמשים ב-NVIDIA Collective Communications Library (NCCL) לפעולות בסיסיות של תקשורת בין יחידות GPU.
הגרסה המשופרת של Google ל-NCCL נקראת NCCL/gIB, והיא זמינה במכונות A5X, A4X Max, A4X, A4 ו-A3 Ultra שלGoogle Cloud. לרוב, NCCL/gIB מניב ביצועים טובים יותר מאשר NCCL במעלה הזרם בתשתית של Google. הביצועים של NCCL יכולים להשפיע על הביצועים הכוללים של עומס העבודה, ולכן מומלץ להשתמש ב-NCCL/gIB.
NCCL/gIB כולל תכונות ואופטימיזציות ספציפיות ל-Google, כמו:
- פלאגין הרשת gIB משפר את איזון העומסים ברשתות של Google, וכך מאפשר קצב העברת נתונים גבוה וזמן אחזור קצר באופן עקבי יותר במהלך פעולות קולקטיביות.
- פלאגין כוונון בהתאמה אישית, שבוחר את אפשרויות הכוונון הטובות ביותר במכונות וירטואליות של Google Cloud .
- הפלאגין CoMMA profiler מספק מדדי ביצועים מפורטים ונתוני אבחון של עומס העבודה.
- הפלאגין env מספק הגדרות משתנים ספציפיות לפלטפורמה במכונות הווירטואליות של Google Cloud .
ארכיטקטורת NCCL/gIB
NCCL/gIB יוצר אינטראקציה עם מסגרת למידת המכונה ועם המעבדים הגרפיים של NVIDIA באשכולות כדי לשפר את הביצועים ולאסוף נתוני טלמטריה, כמו שמוצג בתרשים הבא:

יתרונות השימוש ב-NCCL/gIB
אפשר להשתמש ב-NVIDIA Collective Communications Library במכונות וירטואליות של Google Cloud בלי בעיות יציבות, אבל NCCL/gIB מותאם יותר ל- Google Cloud וההבדל בביצועים יכול להיות משמעותי מאוד בדפוסי תקשורת מסוימים, גם עם אותם פרמטרים של NCCL.
לדוגמה, בתרשים הבא מוצגת השוואה בין NCCL/gIB לבין NCCL במעלה הזרם בביצועי AllReduce. NCCL/gIB עולה בביצועים על NCCL במעלה הזרם עד פי 12 בגדלים מסוימים של הודעות.

ביצועי NCCL AllReduce עם 32 צמתים באמצעות A3 Ultra (H200) ללא תנועה ברקע.
באופן דומה, בהשוואה של NCCL/gIB עם NCCL במעלה הזרם בביצועי AllGather עם תנועה ברקע, NCCL/gIB עולה על NCCL במעלה הזרם בכ-50% בגודלי הודעות גדולים יותר, כפי שמוצג בתרשים הזה.

ביצועי AllGather של NCCL עם 32 צמתים באמצעות A3 Ultra (H200) במארג משותף עם רקע רועש.
בנוסף, הפלאגין של CoMMA profiler מספק ל-Google טלמטריה משופרת בהתאמה אישית, שמאפשרת לנו לעזור לכם בצורה טובה יותר אם תתעורר בעיה ברמת עומס העבודה.
התקנת NCCL/gIB
לפני שמריצים בדיקות NCCL, צריך להתקין את NCCL/gIB בסביבת זמן הריצה.
שימוש ב-NCCL/gIB
כדי להריץ בדיקות NCCL/gIB באשכול, בחרו את הדף מהרשימה הבאה שהכי מתאים לדרישות שלכם:
- שימוש בפלאגינים של gIB NCCL בקונטיינרים של NVIDIA NGC
- הרצת בדיקות NCCL במכונות של Compute Engine
- הפעלת NCCL באשכולות GKE שמשתמשים ב-Cluster Toolkit
- הפעלת NCCL באשכולות GKE שמשתמשים ב-A4X Max
- הפעלת NCCL באשכולות GKE שמשתמשים ב-A4X
- הפעלת NCCL באשכולות GKE שמשתמשים ב-A4 או ב-A3 Ultra
- הרצת בדיקות NCCL באשכולות Slurm
- הרצת בדיקות NCCL ב-Cluster Director
כדי לקבל הוראות להפעלת NCCL/gIB באשכולות GKE שמשתמשים ב-A5X, פנו לנציג שלכם ב- Google Cloud .
במאמר איסוף והבנה של יומני NCCL/gIB לצורך פתרון בעיות מוסבר איך לטפל בבעיות באשכול אחרי הרצת הבדיקות.