Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-14389

Enable TCMalloс for CI tests

    • Storage Engines, Storage Engines - Foundations
    • StorEng - 2025-04-25, SE Foundations - 2025-05-09
    • 5

      Recently we've discovered that currently LD_PRELOAD=<path_to_tcmalloc_so> is set only during 
      "configure wiredtiger" job and since it's located inside the function, this env variable is unset after function execution ends. So when it comes to running the tests, there is no LD_PRELOAD=<path_to_tcmalloc_so> during the testing.
       
      We did set this LD_PRELOAD during the testing phase before, but it was changed to the current state around a year ago by this PR: https://github.com/wiredtiger/wiredtiger/pull/10464/files
       
      Probably the best option now is to move this logic back to PREPARE_TEST_ENV step, but since the change was made long time ago it requires additional testing.

       

      Also, explicit compiling and linking with TCMalloc is worth considering but it seems like it is how the things worked before and we switched to LD_PRELOAD only support because of compatibility issues with C++ headers used by our customers.

        1. tcmalloc-perf-report-arm-v1.pdf
          5.98 MB
        2. tcmalloc-perf-report-arm-v2.pdf
          15.94 MB
        3. tcmalloc-perf-report-arm-v3.pdf
          16.99 MB
        4. tcmalloc-perf-report-x86-v1.pdf
          6.00 MB
        5. tcmalloc-perf-report-x86-v2.pdf
          15.79 MB
        6. tcmalloc-perf-report-x86-v3.pdf
          17.23 MB

            Assignee:
            ivan.kochin@mongodb.com Ivan Kochin
            Reporter:
            ivan.kochin@mongodb.com Ivan Kochin
            Ravi Giri
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated: