Joe McDonnell created IMPALA-13308:
--------------------------------------
Summary: Build toolchain GCC with profile guided optimization
Key: IMPALA-13308
URL: https://issues.apache.org/jira/browse/IMPALA-13308
Project: IMPALA
Issue Type: Improvement
Components: Infrastructure
Affects Versions: Impala 4.5.0
Reporter: Joe McDonnell
GCC has an option to build a profiled GCC binary by using the "make
profiledbootstrap" target. This produces a profile by compiling GCC, so it
isn't targeted to Impala's codebase, but it still improves GCC compile times by
about 5%:
{noformat}
Time comparison for "make -j16 impalad" (release build):
Current toolchain GCC (LTO):
real 4m58.416s
user 70m41.989s
sys 6m41.961s
GCC with PGO, no LTO:
real 4m45.360s
user 67m12.081s
sys 6m40.376s
GCC with PGO + LTO:
real 4m42.042s
user 66m32.943s
sys 6m39.523s
# User time comparison:
Baseline (LTO): 1.000
PGO,no LTO: 0.951
PGO+LTO: 0.941{noformat}
LTO doesn't seem to help much, so maybe it would be better to disable it.
I don't know how ccache interacts with PGO, but I had it disabled for the PGO
and PGO+LTO builds.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)