Thẻ Từ trên xuống hiển thị một danh sách các lệnh gọi để mở rộng một phương thức hoặc một nút hàm hiển thị hàm được gọi. Hình 2 minh hoạ một cây đồ thị từ trên xuống cho biểu đồ lệnh gọi sau đây. Mỗi mũi tên trong biểu đồ trỏ từ một lệnh gọi đến hàm được gọi.
Hình 1. Một ví dụ minh hoạ cho biểu đồ lệnh gọi về thời gian tự thực thi, thời gian thực thi các hàm được gọi và tổng thời gian thực thi của phương thức D.
Như minh hoạ trong Hình 2, việc mở rộng nút cho phương thức A trong thẻ Top Down (Từ trên xuống) sẽ cho thấy các hàm được gọi, phương thức B và phương thức D. Sau đó, việc mở rộng nút cho phương thức D sẽ tiết lộ các hàm phương thức đó gọi, chẳng hạn như phương thức B và phương thức C. Tương tự như thẻ Flame chart (Biểu đồ hình ngọn lửa), cây đồ thị từ trên xuống sẽ tổng hợp thông tin theo dõi cho các phương thức giống nhau có cùng một ngăn xếp lệnh gọi. Tức là thẻ Flame chart (Biểu đồ hình ngọn lửa) cung cấp biểu đồ minh hoạ cho thẻ Top Down (Từ trên xuống).
Thẻ Top Down (Từ trên xuống) cung cấp các thông tin dưới đây giúp mô tả thời gian chiếm dụng CPU của mỗi lệnh gọi (thời gian cũng được biểu thị dưới dạng phần trăm trên tổng thời gian luồng chạy trong phạm vi xác định):
- Self (Thời gian tự thực thi): thời gian mà phương thức hoặc lệnh gọi hàm thực thi mã của chính hàm hay phương thức đó, không phải thời gian thực thi của hàm được gọi như minh họa trong Hình 1 cho phương thức D.
- Children (Thời gian hàm được gọi thực thi): thời gian phương thức hoặc lệnh gọi hàm thực thi hàm được gọi mà không phải mã của chính phương thức hoặc lệnh gọi hàm đó, như minh họa trong Hình 1 cho phương thức D.
- Total (Tổng thời gian thực thi): tổng thời gian Self (Tự thực thi) và Children (Thực thi hàm được gọi) của phương pháp. Giá trị này thể hiện tổng thời gian ứng dụng thực thi một lệnh gọi, như minh họa trong Hình 1 cho phương thức D.

Hình 2. Cây đồ thị từ trên xuống.

Hình 3. Cây đồ thị từ dưới lên cho phương thức C dựa theo Hình 5.
Thẻ Bottom Up (Từ dưới lên) hiển thị danh sách các lệnh gọi trong đó khi mở rộng của một hàm hoặc nút của phương thức sẽ hiển thị phương thức gọi. Sử dụng dấu vết mẫu như minh hoạ trong Hình 2, hình 3 cung cấp cây đồ thị từ dưới lên cho phương thức C. Việc mở rộng nút cho phương thức C ở cây đồ thị từ dưới lên sẽ hiển thị từng phương thức gọi riêng, phương thức B và phương thức D. Xin lưu ý rằng, mặc dù phương thức B gọi phương thức C hai lần, nhưng phương thức B chỉ xuất hiện một lần khi mở rộng nút cho phương thức C ở cây đồ thị từ dưới lên. Sau đó, việc mở rộng nút cho phương thức B sẽ hiển thị phương thức gọi tới, phương thức A và phương thức D.
Thẻ Bottom Up (Từ dưới lên) sẽ hữu ích trong việc sắp xếp các phương thức hoặc hàm theo thời gian chiếm dụng nhiều nhất (hoặc ít nhất) của CPU. Bạn có thể kiểm tra từng nút với mục đích xác định phương thức gọi nào chiếm dụng nhiều thời gian CPU nhất để thực thi các phương thức hoặc hàm đó. So với cây đồ thị từ trên xuống, thông tin về thời gian của mỗi phương thức hoặc hàm trong cây đồ thị từ dưới lên tham chiếu đến phương thức ở đỉnh mỗi cây (nút trên cùng). Thời gian của CPU cũng được biểu diễn dưới dạng phần trăm trên tổng thời gian của luồng trong quá trình ghi. Bảng dưới đây diễn giải thông tin cho nút trên cùng và phương thức gọi (nút nhánh).
Thời gian tự thực thi | Thời gian thực thi các hàm được gọi | Tổng | |
---|---|---|---|
Phương thức hoặc hàm ở đỉnh cây đồ thị từ dưới lên (nút trên cùng) | Biểu diễn tổng thời gian mà phương thức hoặc hàm dùng để tự thực thi, không phải thời gian thực thi các hàm được gọi. So với cây đồ thị từ trên xuống, thông tin thời gian của phương pháp duyệt cây này thể hiện tổng thời gian mà tất cả các lệnh gọi đến phương thức hoặc hàm này trong thời gian ghi. | Biểu thị tổng thời gian mà phương thức hoặc hàm dùng để thực thi hàm được gọi, không phải thời gian tự thực thi chính hàm hay phương thức đó. So với cây đồ thị từ trên xuống, thông tin thời gian của phương pháp duyệt cây này thể hiện tổng thời gian mà tất cả các lệnh gọi đến phương thức hoặc hàm của hàm được gọi tới trong thời gian ghi. | Tổng thời gian tự thực thi và thời gian thực thi của hàm được gọi. |
Phương thức gọi (nút nhánh) | Biểu thị tổng thời gian tự thực thi của hàm được gọi trong lúc phương thức gọi tới. Như minh hoạ trong cây đồ thị từ dưới lên ở Hình 6, thời gian tự thực thi của phương thức B sẽ bằng tổng thời gian tự thực thi trong mỗi lần thực thi phương thức C khi được phương thức B gọi. | Biểu thị tổng thời gian thực thi của hàm được gọi trong lúc phương thức gọi gọi tới. Như minh hoạ trong cây đồ thị từ dưới lên ở Hình 6, thời gian thực thi của hàm được gọi đến của phương thức B sẽ bằng tổng thời gian thực thi mỗi lần thực thi phương thức C khi được phương thức B gọi. | Tổng thời gian tự thực thi và thời gian thực thi của hàm được gọi. |
Lưu ý: Đối với một bản ghi cụ thể, Android Studio sẽ ngừng thu thập dữ liệu mới khi trình phân tích tài nguyên đạt đến giới hạn kích thước tệp (tuy nhiên, điều này sẽ không dừng quá trình ghi). Quy trình truy vết này thường thực hiện nhanh hơn nhiều so với truy vết đo lường bởi khi so sánh trên cùng một mẫu dấu vết, loại truy vết này thu thập nhiều dữ liệu hơn và hoàn thành trong khoảng thời gian ngắn hơn. Nếu bạn kéo dài thời gian kiểm tra tới thời điểm chế độ ghi đạt giới hạn, dữ liệu thời gian trong bảng theo dõi sẽ không thay đổi (vì không có dữ liệu mới). Thêm vào đó, nếu bạn chỉ chọn phần bản ghi không có dữ liệu, ngăn theo dõi sẽ hiển thị Mạng nhận biết thiết bị lân cận (NaN) đối với thông tin về thời gian.