[all-commits] [llvm/llvm-project] b53c04: Reapply [ELF] Making cdsort default for function r...

spupyrev via All-commits all-commits at lists.llvm.org
Fri Nov 3 16:08:48 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b53c04a8dac49889b3ee8784fbf6ad32b41aa3d0
      https://github.com/llvm/llvm-project/commit/b53c04a8dac49889b3ee8784fbf6ad32b41aa3d0
  Author: spupyrev <spupyrev at users.noreply.github.com>
  Date:   2023-11-03 (Fri, 03 Nov 2023)

  Changed paths:
    M lld/ELF/Driver.cpp
    M lld/ELF/Options.td
    M lld/docs/ld.lld.1
    M lld/test/ELF/cgprofile-txt.s

  Log Message:
  -----------
  Reapply [ELF] Making cdsort default for function reordering (#68638)

Edited lld/ELF/Options.td to cdsort as well

CDSort function reordering outperforms the existing default heuristic (
hfsort/C^3) in terms of the performance of generated binaries while
being (almost) as fast. Thus, the suggestion is to change the default.
The speedup is up to 1.5% perf for large front-end binaries, and can be
moderate/neutral for "small" benchmarks.

High-level **perf impact** on two selected binaries:
clang-10 binary (built with LTO+AutoFDO/CSSPGO): wins on top of C^3 in
[0.3%..0.8%]
rocksDB-8 binary (built with LTO+CSSPGO): wins on top of C^3 in
[0.8%..1.5%]

More detailed measurements on the clang binary is at
[here](https://reviews.llvm.org/D152834#4445042)




More information about the All-commits mailing list