Last updated:
Find Hot Functions in the Table
Select Table to rank functions by their contribution to the selected measurement.
Read the columns
| Column | What to inspect |
|---|---|
| Function Name | The function to investigate. |
| Self | The value and percentage attributed directly to the function, excluding its callees. |
| Total | The value and percentage attributed to the function together with its callees. |
See Self and Total for why totals overlap. Read values in the selected profile type's units. The screenshot uses On-CPU and shows time values.
Find the largest contributors
- Select the profile type, workload, and time range in the explorer.
- Select Table.
- Sort by Self to bring the largest direct contributors to the top, as shown in the screenshot.
- Compare Total with Self to distinguish work in the function from work in its callees.
- Enter a function name in Search functions... to find a known function in the table.
In the On-CPU screenshot, compress/flate.(*compressor).deflate has 1.35 minutes of self time and 3.06 minutes of total time. The difference comes from its callees. For any profile type, nearly equal Self and Total values mean that most of the contribution belongs to the function itself.
Continue with call context
The table ranks functions without showing their callers. Use Flame Graph to inspect call paths, or Sandwich for callers and callees.
Use Search functions... to find table entries. Use Add filter to apply stack and frame filters that change which code you analyze.
Further Reading
- About Profiling — Overview of the available visualizations.
- Analyze Flame Graphs — Investigate the call paths behind a hotspot.
- Investigate Callers and Callees — Follow incoming and outgoing calls around a frame.
- Key Concepts — Interpret the table's values and units.
