Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[doc] how to read pprof dot graph? #493

Closed
AlmogBaku opened this issue Oct 24, 2019 · 4 comments · Fixed by #530
Closed

[doc] how to read pprof dot graph? #493

AlmogBaku opened this issue Oct 24, 2019 · 4 comments · Fixed by #530
Assignees

Comments

@AlmogBaku
Copy link

AlmogBaku commented Oct 24, 2019

How to read the graph? Explanations and legend of the signs in the graph can be very useful!

I.e. what is dotted line? what is dashed line? what are the number means? what are the boxes(n the end of the tree) means?

Also- improving the labels/captions(title when hovering a dom item) can be very useful

@nolanmar511
Copy link
Contributor

Having an in-graph legend would definitely be useful!!

Just for reference, I'm going to note some of the features which we might consider documenting in a legend here:

  • Dotted/dashed lines indicated that that intervening nodes have been removed. Nodes are removed to keep graphs small enough for visualization.
  • The wider an arrow the more of the metric being measured is used along that path.
  • Nodes and edges are colored according to their total value (total being the amount of a metric used by a node and all of its children); large positive values are red; large negative values are green.

And some of the text which could be better documented:

  • Within each Node, there is text reading "1024kB (5%) of 2048kB(10%)". That indicates that 1024kB were allocated in that location (a function or line number), 2048kB were allocated by that location and all functions it calls, and that the 1024kB allocated in that location account for 5% of all allocations in the profile and the 2048kB allocated by that location and all of its children accoount for 10% of all allocations in the profile.
  • The numbers next to the arrows indicated how much of a metric is used going down that path.

And, in heap profiles, there are those cube-like boxes coming from leaf nodes, like the following:
image
Those show the size of the allocation (with the number next to the arrow indicated how much memory is allocated in allocations of that size.

Please point out any features which I missed!

@nolanmar511
Copy link
Contributor

I'm thinking that we maybe should add a legend which shows the meaning of node and line colors, line widths, and dashed/solid lines.

Other features that I mentioned, we've thought about adding a graph with labels showing the meaning of all features to our documentation. I hope that might help.

@AlmogBaku
Copy link
Author

In the meanwhile, maybe you can explain it here and let's add a ref in the docs?

@nolanmar511
Copy link
Contributor

@AlmogBaku -- I'd added an explanation of how to read the graph view in #493 (comment). Is any information missing there?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants