Announcement

Collapse
No announcement yet.

Facebook Is Looking To Upstream Their BOLT Binary Performance Optimizer Into LLVM

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Facebook Is Looking To Upstream Their BOLT Binary Performance Optimizer Into LLVM

    Phoronix: Facebook Is Looking To Upstream Their BOLT Binary Performance Optimizer Into LLVM

    Facebook's BOLT is a multi-year project focused on speeding up the performance of binaries. This open-source project initially focused on being able to better optimize Linux x86_64/ARM64 ELF binaries as a post-link optimizer. BOLT has been seeing much success with even Google using it now for better performance and now there is work to upstream it as part of the LLVM project...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2

    From the mailing list post: "Additionally, BOLT can add new code to a linked ELF binary. We have recently used that capability to allocate frequently-executed code on huge pages automatically. Even legacy applications can now use 2MB pages for code on x86-64 Linux systems to reduce the number of iTLB misses. BOLT's ability to process and optimize binary code without source code, such as legacy/distributed binaries, or code from third-party and assembly-written code, provides another advantage over a pure compiler-based approach."

    This sounds very interesting! I can't wait to try it on the Kernel, Mesa and game binaries.

    Comment


    • #3
      does it corrupt symbols ? I.e. what happens with backtraces on such binaries when crashes happen ?

      Comment


      • #4
        dev_null It is rearranging data. Backtraces and data are completely separate things. Symbol names have nothing to do with the layout of a structure

        Comment

        Working...
        X