תרשים להבה

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

כדי להמחיש את הרעיון הזה, אפשר לעיין בתרשים השיחות באיור 1. שימו לב שה-method D שולח כמה קריאות ל-method B‏ (B1,‏ B2 ו-B3), וחלק מהקריאות האלה ל-method B שולחות קריאה ל-method C‏ (C1 ו-C3).

איור 1. תרשים של שיחות עם כמה קריאות לשיטות שמשותפות ברצף משותף של מתקשרים.

מכיוון שהקריאות B1, ‏ B2 ו-B3 חולקות את אותו רצף של קריאות (A → D → B), הן מצטברות, כפי שמוצג באיור 2. באופן דומה, C1 ו-C3 מצטברים כי יש להם את אותו רצף של מתקשרים (A → D → B → C). שימו לב ש-C2 לא נכלל כי יש לו רצף שונה של מתקשרים (A → D → C).

איור 2. צבירה של שיטות זהות שחולקות את אותו מחסנית קריאות.

השיחות המצטברות משמשות ליצירת תרשים הלהבות, כמו שמוצג באיור 3. שימו לב שבכל שיחה בתרשים הלהבה, הנמענים שצורכים את הזמן הכי רב של המעבד מופיעים ראשונים.

איור 3. תרשים להבה שמייצג את תרשים השיחות שמוצג באיור 5.