Thread (54 messages) 54 messages, 4 authors, 2020-11-17

Re: [PATCH v3 03/21] mm/hugetlb: Introduce a new config HUGETLB_PAGE_FREE_VMEMMAP

From: Mike Kravetz <hidden>
Date: 2020-11-10 20:33:41
Also in: linux-fsdevel, linux-mm, lkml

On 11/10/20 11:50 AM, Matthew Wilcox wrote:
On Tue, Nov 10, 2020 at 11:31:31AM -0800, Mike Kravetz wrote:
quoted
On 11/9/20 5:52 AM, Oscar Salvador wrote:
quoted
On Sun, Nov 08, 2020 at 10:10:55PM +0800, Muchun Song wrote:
I don't like config options.  I like boot options even less.  I don't
know how to describe to an end-user whether they should select this
or not.  Is there a way to make this not a tradeoff?  Or make the
tradeoff so minimal as to be not worth describing?  (do we have numbers
for the worst possible situation when enabling this option?)
It is not exactly worst case, but Muchun provided some simple benchmarking
results in the cover letter.  Quick summary is that hugetlb page creation
and free time is "~2x slower".  At first glance, one would say that is
terrible.  However, remember that the majority of use cases create hugetlb
pages at or shortly after boot time and add them to the pool.  So, additional
overhead is at pool creation time.  There is no change to 'normal run time'
operations of getting a page from or returning a page to the pool (think
page fault/unmap).
I haven't read through these patches in detail, so maybe we do this
already, but when we free the pages to the buddy allocator, do we retain
the third page to use for the PTEs (and free pages 3-7), or do we allocate
a separate page for the PTES and free pages 2-7?
I haven't got there in this latest series.  But, in previous revisions the
code did allocate a separate page.
-- 
Mike Kravetz
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help