XProf: ניתוח ביצועים של מאיץ

‫XProf הוא כלי ליצירת פרופילים ולניתוח ביצועים של למידת מכונה.

תכונות

  • מידע איכותי על הפרופיל שמבוסס על אירועים ומונים של חומרה, ועל מטא-נתונים של קומפיילר.
  • תקורה נמוכה של איסוף, בדרך כלל פחות מ-1% ב-TPU ופחות מ-5% ב-GPU במהלך תקופת יצירת הפרופיל.
  • חבילה רחבה של כלים שמספקים הבנה מעמיקה של עומס העבודה:
    • דף הסקירה הכללית: כאן מוצגת תצוגה מצטברת ברמה העליונה של ביצועי המודל במהלך הרצת פרופיל, כולל מידת הניצול של משאבי החומרה.
    • כלי לצפייה במעקב: הצגה חזותית של ציר זמן מפורט של אירועים שהתרחשו, ושל החלק במערכת שהפעיל אותם (למשל, CPU,‏ TPU או GPU).
    • Graph Viewer: תצוגה חזותית של מבנה התרשים של תוכנית XLA. מוצג גרף של פעולות ברמה גבוהה (HLO).
    • Memory Viewer: הדמיה של השימוש בזיכרון במהלך חיי התוכנית, ופירוט של תוכן הזיכרון בנקודת השיא של השימוש בזיכרון.
    • פרופיל זיכרון: אפשר לראות את השימוש הדינמי בזיכרון של המאיצים במהלך ההרצה של התוכנית.
    • פרופיל HLO Op: מאפשר להבין את ביצועי החומרה עבור קטגוריות שונות של פעולות ברמה גבוהה (HLO) שמופעלות על ידי התוכנית.
    • HLO Op Stats (נתונים סטטיסטיים של פעולות HLO): כאן אפשר לראות את נתוני הביצועים של פעולות High Level Optimizer‏ (HLO) שבוצעו על ידי התוכנית, ולזהות את הפעולות שהכי גוזלות זמן בתרשים HLO.
    • Framework Op Stats: הצגת נתוני הביצועים של פעולות ברמת המסגרת (למשל, ‫JAX,‏ TensorFlow או PyTorch/XLA) שמופעלים במארח ובמאיץ.
    • ניתוח Roofline: מודל ביצועים חזותי ואינטואיטיבי שמציג מגבלות חומרה מובנות שמשפיעות על הביצועים של התוכנה, ומציין אם הביצועים מוגבלים על ידי הזיכרון או על ידי יכולת החישוב.
    • Megascale Stats: ניתוח של ביצועי התקשורת בין חלקי עומסי עבודה שמתפרסים על פני כמה חלקי TPU שמתקשרים ברשת של מרכז הנתונים (DCN).
    • נתונים סטטיסטיים של ליבת GPU: אפשר לראות נתוני ביצועים ואת פעולת המסגרת המקורית של כל ליבת GPU מואצת בתוכנית.

תחילת העבודה

הוראות התקנה מופיעות במאמר מדריך למתחילים של XProf.

אם אתם משתמשים ב-Google Cloud כדי להריץ את עומסי העבודה, מומלץ להשתמש בכלי xprofiler. היא מספקת חוויה יעילה של איסוף פרופילים וצפייה בהם באמצעות מכונות וירטואליות (VM) שמריצות XProf.

כדי לראות הדגמה מהירה של היכולות של XProf, אפשר לנסות את מחברת ההדגמה.

שילוב עם Tensorboard

בעבר, הדרך היחידה להתקין את XProf ולהשתמש בו הייתה באמצעות Tensorboard. הוא נקרא פרופיל של תוסף TensorBoard. יכול להיות שבחלק מהמסמכים הישנים עדיין נעשה שימוש במונח הזה. השילוב הזה הוא עכשיו אופציונלי: אפשר לחשוב על Tensorboard כעל מאגר של חבילת הכלים XProf, שאפשר גם להתקין ולהשתמש בה בנפרד, עם התנהגות זהה.