Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
Impala 2.9.0
-
ghx-label-2
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
- relates to
-
IMPALA-5073 Considering bypassing TCMalloc by default for buffer pool
- Open
-
IMPALA-3200 Replace BufferedBlockMgr with new buffer pool
- Resolved