You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Split machine functions is an optional flag that reorders functions based off their "hotness" within the profile; similarly to BOLT.
It it generally at the cost of larger binaries for a couple of extra percent performance improvement.
For small binaries it is unlikely to do anything but is recommended to try out for mid to large packages when PGO is used.
It must be disabled if using BOLT as the options conflict and BOLT will generally do a better job of it.
Why not just use BOLT? : BOLT still doesn't work on all binaries, BOLT sometimes produces worse performance on mid-size and small binaries, BOLT can balloon the binary size if the reordered .text section doesn't fit in the original .text section (-use-old-text), BOLT introduces an extra profiling step within the build and is fiddly to use.
The text was updated successfully, but these errors were encountered:
https://discourse.llvm.org/t/rfc-machine-function-splitter-split-out-cold-blocks-from-machine-functions-using-profile-data/56093
Split machine functions is an optional flag that reorders functions based off their "hotness" within the profile; similarly to BOLT.
It it generally at the cost of larger binaries for a couple of extra percent performance improvement.
For small binaries it is unlikely to do anything but is recommended to try out for mid to large packages when PGO is used.
It must be disabled if using BOLT as the options conflict and BOLT will generally do a better job of it.
Why not just use BOLT? : BOLT still doesn't work on all binaries, BOLT sometimes produces worse performance on mid-size and small binaries, BOLT can balloon the binary size if the reordered .text section doesn't fit in the original .text section (
-use-old-text
), BOLT introduces an extra profiling step within the build and is fiddly to use.The text was updated successfully, but these errors were encountered: