-
-
Notifications
You must be signed in to change notification settings - Fork 116
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
PGO + Bolt #224
Comments
Thank you for the issue @zamazan4ik we’ll review the blog post, looks interesting for sure - but as you said, at our current size it may not be the most useful. |
Closing this for now because we don't have cycles to explore this. We may get to this at a later stage |
@nitisht I suggest you re-open the issue, so someone in the future can start working on it since the issue will be open. |
Thanks @zamazan4ik . Reopening now.. |
I did primary analysis on results with LTO, just tracking times and binary size, here are the results:
I believe thin LTO should be good enough for perf, let's see if there's demand to improve things in the future and move accordingly? As for PGO and LLVM-bolt optimizations, it might be too much and anyone interested would still be able to do this on their own when compiling themselves. Not sure if we should even guide them to do the same! |
parseable right now does not support building with more advanced optimization techniques like PGO and BOLT. This tooling has an increasing adoption in the community as a tool to additionally optimize programs. With this tooling, there is a huge chance to gain even more performance "for free".
Here I suggest considering an option at least to play with LTO ("fat" version) + PGO + Bolt pipeline (or any combination of them) and test, does it give a performance to the project or not. If yes, would be awesome to have prebuilt binaries with more advanced optimization from the scratch. Also, for the users will be helpful to have the ability to tweak manually their own binaries to their own workloads with the integrated into the build scripts functionality.
Since the project is quite small I do not expect (at least yet) significant improvement from the PGO right now. But at least a good option to try :)
Also, there are some caveats to consider like:
Links:
The text was updated successfully, but these errors were encountered: