שיעור 31: Profiling עם Nsight — מדדים וצווארי בקבוק
אופטימיזציה בלי מדידה היא ניחוש. הכלים Nsight Systems (תמונת-על של הזמן: kernels, העברות זיכרון, חפיפות) ו-Nsight Compute (ניתוח עמוק של kernel בודד) נותנים לך מספרים אמיתיים במקום תחושות בטן. המדדים המרכזיים: achieved occupancy (כמה warps פעילים מתוך המקסימום), memory throughput כאחוז משיא רוחב-הפס
Profiling זה כמו רופא שמודד לך דופק, חום ולחץ-דם לפני שהוא רושם תרופה. בלי המדידות הוא רק מנחש מה כואב; עם המספרים הוא יודע בדיוק מה לטפל.
- Nsight Systems
- כלי profiling ברמת המערכת: ציר-זמן של kernels, העברות זיכרון וחפיפות. טוב לזיהוי איפה הולך הזמן בכלל.
- Nsight Compute
- כלי profiling ברמת kernel בודד: occupancy, throughput, סיבות stall. טוב לניתוח עמוק של kernel אחד.
- achieved occupancy
- היחס בין ה-warps הפעילים בפועל למקסימום האפשרי ל-SM. נמוך = ה-GPU לא מנוצל מלא.
- חסום-זיכרון (memory-bound)
- kernel שצוואר הבקבוק שלו הוא רוחב-הפס לזיכרון, לא החישוב. נראה כ-memory throughput גבוה וחישוב נמוך.