Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-92404

Disable symbol reordering in lld for debug builds

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 8.1.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Server Security
    • Fully Compatible
    • Security 2024-07-22, Security 2024-08-05, Security 2024-08-19
    • 200

      The symbol reordering improves MongoDB performance stability but slows link times. Debug builds are not used for performance tests and we should disable symbol reordering. For mongo/crypto/crypto_test, this was a ~900 ms improvement on the ARM64 cloud workstations.

      Test: Link mongo/crypto/crypto_test

      hyperfine -w 2 "/opt/mongodbtoolchain/v4/bin/clang++ @build/dbg/mongo/crypto/crypto_test.rsp"
      Baseline
        Time (mean ± σ):     10.188 s ±  0.354 s    [User: 19.317 s, System: 3.782 s]
        Range (min … max):    9.593 s … 10.724 s    10 runs
      
      No symbol reordering
        Time (mean ± σ):      9.268 s ±  0.348 s    [User: 18.549 s, System: 3.776 s]
        Range (min … max):    8.648 s …  9.692 s    10 runs
      

            Assignee:
            mark.benvenuto@mongodb.com Mark Benvenuto
            Reporter:
            mark.benvenuto@mongodb.com Mark Benvenuto
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: