Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-5229

Try using TCMalloc + Huge Pages for buffers

    XMLWordPrintableJSON

Details

    Description

      As well as mmap() + huge pages, we could support TCMalloc + huge pages. I believe TCMalloc will support this well because:

      • We can allocate huge-page-aligned memory via posix_memalign()
      • TCMalloc, by default, always decommits large allocations upon freeing them. So if we undo the HUGEPAGE madvise() before handing the pages back to TCMalloc, then TCMalloc will decommit the huge pages backing the allocation, and we won't get TCMalloc's page heap into a weird state.

      This could give us the perf benefits of huge pages without some of the headaches associated with using mmap() directly.

      Attachments

        Issue Links

          Activity

            People

              tarmstrong Tim Armstrong
              tarmstrong Tim Armstrong
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: