Add Profile-Guided Optimization (PGO) support #4437
Replies: 2 comments 1 reply
-
It would be great to have PGO, but I expect it will require considerable thought to implement in a suitably platform-independent way, as I believe all of gcc, clang, msvc and Intel compilers are slightly (or in the case of Microsoft, a lot) different in how they handle this, despite that the general workflow is the same - build-instrumented, training run, rebuild-using-data. (Thanks for putting it here in Discussions, by the way, that's a good place to track in a longer term way any findings on this). Just as one example, gcc produces And what about LTO? |
Beta Was this translation helpful? Give feedback.
-
Some interesting bits here, as it shows recipes for building with four different compilers (all on Windows, which means there would still be more to look up). https://blog.jetbrains.com/clion/2022/05/testing-3-approaches-performance-cpp_apps/ |
Beta Was this translation helpful? Give feedback.
-
Hi!
Here I want to discuss the idea of adding to SCons explicit support for building applications with Profile-Guided Optimization (PGO). According to many articles and benchmarks, PGO can play a huge role in an application optimization path. However, performing PGO optimization manually via tweaking compiler flags can be error-prone. That's why I think adding such a feature to SCons would be helpful.
Some examples of the current situation in other build systems:
b_pgo
in the docs)Beta Was this translation helpful? Give feedback.
All reactions