Evaluate using Profile-Guided Optimization (PGO) and Post-Link Optimization (PLO) #990
zamazan4ik
started this conversation in
Ideas
Replies: 2 comments 2 replies
-
Hello, I tested PGO with BOLT like 6 months ago, we got ~15% performance improvement. We have this issue: I have branch somewhere with kind-of basic flow (build with pgo, run performance tests, build again, build with bolt, etc.) For now, we simply don't have enough time to pursuit this :) I know this is really nice low hanging fruit and we will probably do it in future. |
Beta Was this translation helpful? Give feedback.
1 reply
-
Also, thank you! I will ping you if I'll have more questions - did you already join our discord? |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi!
Recently I checked many optimizations like PGO and PLO (mostly with LLVM BOLT) improvements on multiple projects including many databases - the results are available here. According to the tests, these optimizations can help to achieve better performance in many cases. I think trying to optimize Iggy's performance with PGO and PLO can be an interesting idea.
I can suggest the following action points:
iggy-server
according to their workloads.Here are some examples of how PGO optimization is integrated into other projects:
Unfortunately, for now, building the project with LTO and PGO enabled at the same time fails due to a bug in the compiler: rust-lang/rust#115344 (comment) . I suggest waiting for the fix in the upstream since disabling LTO is a worse option (IMHO).
I would be happy to answer your questions about all the optimizations above.
Beta Was this translation helpful? Give feedback.
All reactions