-interpreter-instrument-with-probe

הוספת פעולות של interpreter.probe לתוכנית StableHLO.

עובר בתוכנית StableHLO ומכניס אינסטרומנטציה של גשושית פעולה מתאימה לאחר כל פעולה מתאימה (בהמשך מוסבר איך מודל מוגדר). האינסטרומנטציה משמשת לחילוץ ביניים את ערכי הטנזור ממפענח העזר StableHLO להשוואה מאוחרת יותר עם זמני ריצה אחרים.

כל הפעולות נחשבות מתאימות לאינסטרומנטציה, חוץ מפעולה קבועה פעולות שאין להן ערך חזרה tensor (כלומר מחזירה tuple או אסימון, או שלא תיחוו ערכי החזרה). הפעולות המתאימות ימוינו ללא קשר לרמת באמצעות סידור פנימי. כלומר, פעולות בתוך אזורי לולאה/הסתעפויות יהיו גם הן עם אינסטרומנטציה.

ערכי ההחזרה של פעולות מכוונים ייכתבו לדיסק באמצעות את פורמט הנתונים NumPy. אם אישור useDebugInfo מופעלת, ייעשה שימוש במידע על תוצאות ניפוי הבאגים כאשר יהיה זמין לזהות באופן ייחודי ערכי טינזור שעברו אינסטרומנטציה (כלומר, המעבר יחלץ probe_id מ-NamedLoc(probe_id@<...>) בפורמט probe_id.#). אחרת, נתייחס לערכים עם המכשירים המקודדים רצף: probe1, probe2, ... אפשר לראות עוד ב-interpreter.probe על האופן שבו הנתונים מופיעים בסדרה.

אפשרויות

-useDebugInfo : Whether or not to use location debug data as `probe_id` values.