-
-
Notifications
You must be signed in to change notification settings - Fork 289
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
docs: generating and using flamegraphs #5519
Conversation
Performance Report✔️ no performance regression detected Full benchmark results
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nice guide thank you! some minor comments
@dapplion I went through the issue one last time to make sure i covered everything and noticed that I had some references stored in my work repo. I added them to the bottom. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great thanks!
🎉 This PR is included in v1.9.0 🎉 |
Motivation
We often need do do processor profiling and using the
--inspect
flag has detrimental effect on performance. It is also difficult to profile for a short period of time and revert performance back to normal so its not great for production nodes. The existing flamegraph libraries (0x
is a good example) are not capable of turning on and off for a node in production to get real world data.Description
Includes instructions for how to do cpu profiling on a running production node.
Closes #5341
Steps to test or reproduce
Follow instructions in
docs/tools/flamegraphs.md
Note for Future
There is a flamegraph panel for Grafana so it should be possible to pull them with a cron job and visualize from our dashboard
https://grafana.com/docs/grafana/latest/panels-visualizations/visualizations/flame-graph/