Re: [RFC 0/6] the big khugepaged redesign

From: Davidlohr Bueso
Date: Mon Feb 23 2015 - 17:47:07 EST


On Mon, 2015-02-23 at 13:58 +0100, Vlastimil Babka wrote:
> Recently, there was concern expressed (e.g. [1]) whether the quite aggressive
> THP allocation attempts on page faults are a good performance trade-off.
>
> - THP allocations add to page fault latency, as high-order allocations are
> notoriously expensive. Page allocation slowpath now does extra checks for
> GFP_TRANSHUGE && !PF_KTHREAD to avoid the more expensive synchronous
> compaction for user page faults. But even async compaction can be expensive.
> - During the first page fault in a 2MB range we cannot predict how much of the
> range will be actually accessed - we can theoretically waste as much as 511
> worth of pages [2]. Or, the pages in the range might be accessed from CPUs
> from different NUMA nodes and while base pages could be all local, THP could
> be remote to all but one CPU. The cost of remote accesses due to this false
> sharing would be higher than any savings on the TLB.
> - The interaction with memcg are also problematic [1].
>
> Now I don't have any hard data to show how big these problems are, and I
> expect we will discuss this on LSF/MM (and hope somebody has such data [3]).
> But it's certain that e.g. SAP recommends to disable THPs [4] for their apps
> for performance reasons.

There are plenty of examples of this, ie for Oracle:

https://blogs.oracle.com/linux/entry/performance_issues_with_transparent_huge
http://oracle-base.com/articles/linux/configuring-huge-pages-for-oracle-on-linux-64.php

Thanks,
Davidlohr

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/