אופטימיזציה של הרשת באשכול באמצעות NCCL/gIB

במסגרות עבודה מודרניות של למידת מכונה נעשה לעיתים קרובות שימוש בספריית התקשורת הקולקטיבית של NVIDIA‏ (NCCL) לפרימיטיבים של תקשורת בין GPU ל-GPU.

הגרסה המשופרת של NCCL מבית Google נקראת NCCL/gIB והיא זמינה במכונות וירטואליות (VM) מסוג A3 Ultra,‏ A4 ו-A4X של Google Cloud. ‫NCCL/gIB הוא לרוב יעיל יותר מ-NCCL במעלה הזרם בתשתית של Google. הביצועים של NCCL יכולים להשפיע על הביצועים הכוללים של עומס העבודה, ולכן מומלץ להשתמש ב-NCCL/gIB.

‫NCCL/gIB כולל תכונות ואופטימיזציות ספציפיות ל-Google, כמו:

  • תוסף הרשת gIB מציע איזון עומסים משופר ברשתות של Google, וכתוצאה מכך, תפוקה גבוהה וזמן אחזור נמוך באופן עקבי יותר במהלך פעולות משותפות.
  • תוסף מותאם אישית לכוונון, שבוחר את אפשרויות הכוונון הטובות ביותר במכונות וירטואליות. Google Cloud
  • תוסף פרופיל CoMMA מספק מדדי ביצועים מפורטים ונתוני אבחון עבור עומס העבודה.
  • הפלאגין env מספק הגדרות משתנים ספציפיות לפלטפורמה במכונות וירטואליות של Google Cloud .

ארכיטקטורה של NCCL/gIB

‫NCCL/gIB פועל באינטראקציה עם מסגרת למידת המכונה והמעבדים הגרפיים (GPU) של NVIDIA באשכולות כדי לשפר את הביצועים ולאסוף נתוני טלמטריה, כמו שמוצג בתרשים הזה:

עומס העבודה של ה-ML מנוהל על ידי מסגרת ML שמתחברת גם ל-GPU של NVIDIA וגם ל-NCCL, בעוד ש-NCCL מתחבר לתוספים ולכלים שונים של Google.

היתרונות של שימוש ב-NCCL/gIB

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

לדוגמה, בגרף הבא מוצגת השוואה בין NCCL/gIB לבין NCCL במעלה הזרם בביצועים של AllReduce. הביצועים של NCCL/gIB טובים עד פי 12 מאלה של NCCL במעלה הזרם בגדלים מסוימים של הודעות.

תרשים שמראה ש-NCCL/gIB עדיף על NCCL במעלה הזרם במשימות AllReduce.

ביצועים של NCCL AllReduce עם 32 צמתים באמצעות A3 Ultra‏ (H200) ללא תנועת רקע.

באופן דומה, בהשוואה בין NCCL/gIB לבין NCCL במעלה הזרם בביצועים של AllGather עם תנועת נתונים ברקע, הביצועים של NCCL/gIB טובים בכ-50% מאלה של NCCL במעלה הזרם בגדלים גדולים יותר של הודעות, כפי שמוצג בתרשים הזה.

תרשים שמראה ש-NCCL/gIB עדיף על NCCL במעלה הזרם במשימות AllGather.

ביצועים של 32 צמתים ב-NCCL AllGather באמצעות A3 Ultra ‏ (H200) ברשת משותפת עם רעשי רקע.

בנוסף, הפלאגין CoMMA profiler מספק ל-Google טלמטריה מותאמת אישית משופרת, וכך מאפשר לנו לעזור לכם טוב יותר אם תתעורר בעיה ברמת עומס העבודה.

שימוש ב-NCCL/gIB

כדי להריץ בדיקות NCCL/gIB באשכול, בוחרים את הדף מהרשימה הבאה שהכי מתאים לדרישות שלכם:

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