You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues-all@impala.apache.org by "Joe McDonnell (Jira)" <ji...@apache.org> on 2024/08/19 17:34:00 UTC

[jira] [Created] (IMPALA-13308) Build toolchain GCC with profile guided optimization

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)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscribe@impala.apache.org
For additional commands, e-mail: issues-all-help@impala.apache.org