Joe McDonnell has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/21121 )
Change subject: IMPALA-12807: Add support for mold linker ...................................................................... IMPALA-12807: Add support for mold linker This adds support for using the mold linker. It changes the existing USE_GOLD_LINKER environment variable to IMPALA_LINKER, which accepts ld, gold, or mold as values. It defaults to 'gold' to match current behavior. Developers can override it in bin/impala-config-local.sh. Clang does not implement -gz properly until version 12. It does not enable compressed debuginfo in the final binary. IMPALA_LINKER=mold doesn't work with IMPALA_COMPRESSED_DEBUG_INFO=true on Clang due to this. This detects Clang <12 and skips -gz as it is ineffective. Mold follows similar to behavior to LLD and requires --exclude-libs to use the full library name (i.e. liblz4.a rather than liblz4). Gold will happily accept the full library name, so this changes to use the full library name. Mold is much faster for incremental builds on my system: (e.g. touch be/src/scheduling/scheduler.cc && make -j8 impalad) gold: 15.8s mold: 2.6s Testing: - Ran builds with IMPALA_LINKER=mold on Centos 7, Redhat 8, and Ubuntu 20. Change-Id: Ia9e9accd06b6ecd182d200d81afaae09a885c241 Reviewed-on: http://gerrit.cloudera.org:8080/21121 Reviewed-by: Michael Smith <[email protected]> Reviewed-by: Andrew Sherman <[email protected]> Tested-by: Impala Public Jenkins <[email protected]> --- M be/CMakeLists.txt M be/src/service/CMakeLists.txt M bin/bootstrap_toolchain.py M bin/impala-config.sh 4 files changed, 40 insertions(+), 15 deletions(-) Approvals: Michael Smith: Looks good to me, but someone else must approve Andrew Sherman: Looks good to me, approved Impala Public Jenkins: Verified -- To view, visit http://gerrit.cloudera.org:8080/21121 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Ia9e9accd06b6ecd182d200d81afaae09a885c241 Gerrit-Change-Number: 21121 Gerrit-PatchSet: 4 Gerrit-Owner: Joe McDonnell <[email protected]> Gerrit-Reviewer: Andrew Sherman <[email protected]> Gerrit-Reviewer: Impala Public Jenkins <[email protected]> Gerrit-Reviewer: Joe McDonnell <[email protected]> Gerrit-Reviewer: Laszlo Gaal <[email protected]> Gerrit-Reviewer: Michael Smith <[email protected]>
