Thẻ biểu đồ hình ngọn lửa cung cấp biểu đồ lệnh gọi suy ngược để tổng hợp các ngăn xếp lệnh gọi giống nhau. Tức là các phương thức hoặc hàm giống nhau có cùng trình tự phương thức gọi, được thu thập và thể hiện dưới dạng một thanh dài trong biểu đồ ngọn lửa (thay vì hiển thị dưới dạng nhiều thanh ngắn hơn, như minh hoạ trong biểu đồ lệnh gọi). Điều này giúp bạn dễ dàng nhận biết phương thức hoặc hàm nào đang tiêu thụ nhiều thời gian nhất. Tuy nhiên, điều này cũng có nghĩa là trục hoành trên biểu đồ không biểu thị tiến trình; thay vào đó, nó cho biết thời gian tương đối mà mỗi phương thức hoặc hàm cần để thực thi.
Để giúp minh hoạ khái niệm này, hãy xem xét biểu đồ lệnh gọi trong Hình 1. Xin lưu ý rằng phương thức D thực hiện nhiều lệnh gọi đến phương thức B (B1, B2 và B3) và một số trong số các lệnh gọi đến B đó sẽ thực hiện lệnh gọi đến phương thức C (C1 và C3).
Hình 1. Biểu đồ lệnh gọi với nhiều lệnh gọi phương thức cùng chia sẻ một trình tự phương thức gọi chung.
Vì B1, B2 và B3 có cùng một trình tự phương thức gọi (A → D → B) nên các phương thức này được gộp chung lại, như trong Hình 2. Tương tự, hệ thống gộp C1 và C3 vì chúng có cùng trình tự phương thức gọi (A → D → B → C); lưu ý rằng phương thức C2 không được gộp chung lại bởi trình tự phương thức gọi có sự khác biệt (A → D → C).
Hình 2. Tổng hợp các phương thức giống nhau có chung một ngăn xếp lệnh gọi.
Các lệnh gọi tổng hợp được dùng để tạo biểu đồ hình ngọn lửa, như trong Hình 3. Lưu ý rằng đối với bất kỳ lệnh gọi xác định nào trong biểu đồ ngọn lửa, các lệnh gọi chiếm dụng nhiều thời gian CPU nhất sẽ biểu diễn trước.
Hình 3. Hình 5 minh hoạ cho biểu đồ hình ngọn lửa biểu diễn Biểu đồ lệnh gọi.