בדף הזה מוסבר איך לפתור בעיות נפוצות שאולי תיתקלו בהן במהלך השימוש בכלי CoMMA (Collective Communication Analyzer). CoMMA היא ספרייה שאוספת נתוני טלמטריה עבור Google Cloud שירותים. מידע נוסף זמין במאמר Collective Communication Analyzer (CoMMA).
פתרון בעיות בטעינת CoMMA
יכול להיות שהכלי CoMMA לא ייטען בצורה תקינה. כדי לוודא שהקבצים הבינאריים נטענים בצורה תקינה, מבצעים את השלבים הבאים:
- הפעלת רישום ביומן של ניפוי באגים ב-NCCL. כדי להפעיל את הרישום ביומן, מגדירים את משתנה הסביבה
NCCL_DEBUG=INFO. אפשר גם להשתמש ברמת ניפוי באגים מפורטת יותר. אפשרויות מופיעות בקטעNCCL_DEBUGבמסמכי NVIDIA. - מציינים את מערכת המשנה
INITלניפוי הבאגים. כדי לציין אתINIT, מגדירים אתNCCL_DEBUG_SUBSYS=INIT. אפשר גם להוסיף מערכות משנה אחרות. אפשרויות נוספות של מערכת המשנה מפורטות בקטעNCCL_DEBUG_SUBSYS. מחפשים שורה ביומן NCCL שדומה לשורה הבאה:
NCCL INFO PROFILER/Plugin: Plugin name set by env to PATH_TO_PROFILER_PLUGINאם משתנה הסביבה
NCCL_PROFILER_PLUGINלא מוגדר, יכול להיות ש-NCCL ינסה לטעון את הקובץ הבינאריlibnccl-profiler.soמהנתיב שצוין במשתנה הסביבהLD_LIBRARY_PATH.
כדי לפתור את הבעיה, אפשר לנסות את הפתרונות הבאים:
מוודאים שהשם של הספרייה המשותפת של הפלאגין (
libnccl-profiler.so) נכון.בודקים שהוא נמצא בספרייה שצוינה במשתנה הסביבה
LD_LIBRARY_PATH. אפשרות אחרת היא לוודא שמשתנה הסביבהNCCL_PROFILER_PLUGINמפנה ישירות למיקום של הקובץ הבינאריlibnccl-profiler.so.בודקים שגרסת ה-NCCL היא
2.23ואילך, כי ה-API של פרופיל ה-NCCL דורש את הגרסה הזו.
פתרון בעיות שקשורות לקובצי פלט חסרים
אם הגדרתם את הסביבה שלכם לשליחת נתונים שנאספו על ידי CoMMA לקובץ מקומי, אבל קובץ הפלט חסר, כדאי לבדוק את היומנים של NCCL או את יומני האפליקציה כדי למצוא הודעות שדומות להודעות הבאות:
Failed to open file Failed to log <telemetry type> to file
השגיאות האלה מצביעות על בעיה בסיסית במערכת הקבצים, כמו ספרייה חסרה או נפח אחסון פנוי לא מספיק. אחרי שהשגיאות האלה מתרחשות, CoMMA מפסיק לייצא טלמטריה לקבצים.
כדי לפתור את הבעיה, אפשר לנסות את הפתרונות הבאים:
- בודקים שמשתני הסביבה
NCCL_PROFILER_LATENCY_FILEאוNCCL_PROFILER_SUMMARY_FILEמוגדרים בצורה נכונה. צריך לספק תבנית תקינה של נתיב ושם קובץ, כמו/tmp/latency-%p.txt. - בודקים שלתהליך יש הרשאות כתיבה לספריית הפלט שצוינה.
- אם שיניתם את משתנה הסביבה
NCCL_TELEMETRY_MODE, ודאו שהגדרתם אותו לערך שמאפשר פלט של קובץ מקומי (לדוגמה,1או4).
פתרון בעיות שקשורות לנתונים לא צפויים או לאירועים חסרים
יכול להיות ש-CoMMA יתעד נתונים לא צפויים או לא יתעד אירועים צפויים.
כדי לפתור את הבעיה, צריך לוודא שרמת הגרנולריות הנדרשת מוגדרת.