Evaluate using Profile-Guided Optimization (PGO) for the project #1419
zamazan4ik
started this conversation in
Ideas
Replies: 1 comment
-
We're glad to try PGO, thanks for the suggestion. And we're glad to enable LTO, PR welcome! |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi!
I found the project via the article on HackerNews, and was interested in it since Farm cares about performance. Recently I checked Profile-Guided Optimization (PGO) improvements on multiple projects. The results are available here. Since this, I think it will be a good idea to try to optimize Farm even further by applying PGO on it.
I can suggest the following things to do:
For the Rust projects, I suggest trying to start with cargo-pgo.
Here you can find different materials about PGO: benchmarks in different software, examples of how PGO is already integrated with different projects, PGO support in multiple Rust compilers, and some PGO-related pieces of advice.
After PGO, I suggest evaluating the LLVM BOLT optimizer - it can give more aggressive optimizations even after PGO. However, starting with regular PGO will be easier to do.
I would be happy to answer all your questions about PGO!
P.S. Did you think about enabling Link-Time Optimization (LTO) for the project? It can also help achieve better performance and smaller binaries.
Beta Was this translation helpful? Give feedback.
All reactions