[Flame Chart] タブには、同一のコールスタックが集約される反転された呼び出しチャートが表示されます。つまり、同じシーケンスの呼び出し元を共有する同一のメソッドまたは関数が集められ、(呼び出しチャートのようにメソッドまたは関数を複数の短いバーで表示せずに)フレーム チャートに 1 つの長いバーとして表されます。これにより、最も時間を消費しているメソッドまたは関数がわかりやすくなります。ただし、この場合横軸はタイムラインを表さず、その代わりに各メソッドの実行にかかった相対的な時間が示されます。
このコンセプトについて、図 1 に示す呼び出しチャートを例に説明します。メソッド D が B に対して複数の呼び出し(B1、B2、B3)を行い、B に対するこれらの呼び出しの一部が C に対して呼び出し(C1 と C3)を行っていることに注意してください。
図 1. 共通のシーケンスの呼び出し元を共有している複数のメソッド呼び出しが含まれた呼び出しチャート。
B1、B2、B3 は、同じシーケンスの呼び出し元(A → D → B)を共有しているため、図 2 のように集約されます。同様に、同じシーケンスの呼び出し元(A → D → B → C)を共有している C1 と C3 も集約されます。C2 の呼び出し元のシーケンスは異なるため(A → D → C)、集約に含まれないことに注意してください。
図 2. 同じコールスタックを共有している同一のメソッドの集約。
集約された呼び出しは、図 3 に示すようにフレーム チャートの作成に使用されます。フレーム チャート内の特定の呼び出しについて、最も CPU 時間を消費する呼び出し先が最初に表示されることに注意してください。
図 3. 図 5 の呼び出しチャートをフレーム チャートで表した図。