Transparent Huge Pages

Justin Lebar justin.lebar at gmail.com
Mon Feb 20 07:59:35 PST 2012


> jemalloc seems to be prone to transparent huge pages
> (https://lwn.net/Articles/423584), presumably due to its use of mmap().  In
> my case (fuse module), the initial memory consumption jumped from ~12M to
> ~27M.  The use of --enable-dss helps a little, bringing the consumption down
> to ~19M.

Ouch!

> Did anyone else experienced similar behavior?  Is there an easy way of
> avoiding transparent huge pages for jemalloc'ed memory?  The only workaround
> that comes to my mind is a malloc wrapper that runs madvise(...,
> MADV_NOHUGEPAGE) on every newly allocated chunk.

You'd probably want to do this only on the 1MB chunks jemalloc
allocates for small and tiny allocations.  For huge allocations (more
than 1MB), it's likely the user will touch the whole thing, so huge
pages could be a benefit.

>
> Cheers,
> Jakob
>
> _______________________________________________
> jemalloc-discuss mailing list
> jemalloc-discuss at canonware.com
> http://www.canonware.com/mailman/listinfo/jemalloc-discuss



More information about the jemalloc-discuss mailing list