The "other" section makes "self time" unusable? What is "other" and how is it different from "self time"? How to check "self time" when "other" exists?
- Dominant language
- Go
- Stars
- 11.7k
- Forks
- 802
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 80
Description
I tried Java and eBPF, but both have large "other" section. I have searched about it without results, thus I would appreciate if I could know a bit about "other":
1. What is "other", and how is it different from the blank region in a section (i.e. "self-time")? (My wild guess: I know it does not mean "[unknown]" (non-symbolized), does not mean self-time, does not mean call a system function, does not mean call a child function, so I am confused what it really is... For the java case, there is even zero "self-time" (so does "other" mean "self-time"?) For the eBPF, there does have "self-time" as well as "other", so what is that...)
2. How should I check the functions with largest self-time? Especially in Java scenario, the "self-time" seems to be zero for all java functions (and there are large "other" sections), so I cannot use that table.
### Example screenshots
Example 1: Java table

Example 2: Java flamechart
(zoom in to a RedisTemplate execute)

Example 3: eBPF table

Example 4: eBPF flamechart

Example 5: async-profiler (the thing under pyroscope java profiler)
Their demo https://htmlpreview.github.io/?https://github.com/jvm-profiling-tools/async-profiler/blob/master/demo/flamegraph.html has no "other" at all

Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.