Test Profile-Guided Optimization (PGO) and LLVM BOLT performance benefits for Move language tooling.
Motivation
Is your feature request related to a problem? Please describe.
It's not exactly a problem - just an idea of how to improve the project performance.
Pitch
I did a lot of Profile-Guided Optimization (PGO) benchmarks recently on different kinds of software (including many compilers and compiler-like projects) - all currently available results are located at https://github.com/zamazan4ik/awesome-pgo . According to the tests, PGO usually helps a lot for compiler-like workloads. That's why I think testing PGO would be a good idea for the Move language ecosystem.
I can suggest to do the following things:
Evaluate PGO on the Move toolchain
If it benefits Move - add a note to the Move documentation about building with PGO. In this case, users and maintainers who build their own Move packages will be aware of PGO as an additional way to optimize the project
Optimize provided by Move team binaries on the CI (like it's already done for other projects like Rustc), if any
After that, I suggest trying to apply LLVM BOLT as an additional post-PGO step. Rustc already does it on some platforms
For the Rust projects, I suggest PGO optimizing with cargo-pgo.
🚀 Feature Request
Test Profile-Guided Optimization (PGO) and LLVM BOLT performance benefits for Move language tooling.
Motivation
Is your feature request related to a problem? Please describe. It's not exactly a problem - just an idea of how to improve the project performance.
Pitch
I did a lot of Profile-Guided Optimization (PGO) benchmarks recently on different kinds of software (including many compilers and compiler-like projects) - all currently available results are located at https://github.com/zamazan4ik/awesome-pgo . According to the tests, PGO usually helps a lot for compiler-like workloads. That's why I think testing PGO would be a good idea for the Move language ecosystem.
I can suggest to do the following things:
For the Rust projects, I suggest PGO optimizing with cargo-pgo.