-
Notifications
You must be signed in to change notification settings - Fork 35
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
Set force-frame-pointers=yes on arm machines on arm linux #557
Conversation
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.
Thanks for creating this PR @jackkleeman. Before merging it, what are the implications for Restate when enabling the frame pointers (like why isn't it on by default)?
On a few platform eg apple (rust-lang/rust#85706) and openbsd the frame pointers are actually on by default. This field influences LLVM compiler config, which would otherwise only include frame pointers for some functions based on some factors eg whether they have variable size allocations: This discusses the perf implications of enabling frame pointers: I can change to just enabling this for arm, given thats where we need it (and it already will be enabled on apple targets, so really the delta is just AWS arm servers). I also suspect we don't need this forever, as parca will probably work on getting the same info without frame pointers. |
To enable Parca - parca-dev/parca-agent#1805
Thanks for the pointers @jackkleeman. I will try to see whether I can measure a difference in performance on arm64 on Linux. If not, then this PR should be good to be merged. |
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.
When testing it locally in my Docker environment, I couldn't measure a significant change in performance. Hence, +1 for merging it.
@jackkleeman Have you checked we don't need to build the std library with nightly to enable frame pointers? I've seen this around: https://docs.rs/tracefp/latest/tracefp/ |
I don't believe so, no. Let's see if Parca works with this |
To enable Parca - parca-dev/parca-agent#1805