Hugepages support?

Does Vertica support hugepages? The only reference I can find is https://my.vertica.com/docs/6.1.x/HTML/index.htm#19181.htm where it is asked to turn off defragmentation. Thanks,

Comments

  • Hi Guillaume, What, precisely, do you mean by "support hugepages"? The technology (particularly the Linux-kernel APIs for it) has gone through several iterations. Vertica does not support mapping pages from a hugetlbfs mountpoint (or, equivalently, via libhugetlbfs); we don't provide a way for you to point Vertica at a hugetlbfs mountpoint. That approach, one of the early kernel APIs for hugepages, did provide some performance gains when working with large allocations, but it was quite restrictive and had a number of disadvantages as well. Vertica does make use of the more-modern allocation technique whereby the kernel transparently uses hugepages to back regular memory allocations. Your kernel (if it's a recent kernel) is probably already doing this for us, unless you are aware of all this and have configured it differently. The reason that we recommend disabling defragmentation is that the kernel memory defragmenter, in current kernels at least, is actually rather slow in some cases. So there's a risk that you lose more time via the defragmentation process than you gain by using hugepages. I can't give specifics on our implementation; but our experience with this risk has led to this recommendation :-) Adam
  • Hi Adam, Thanks for this, it does answer my question indeed.

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file