On Tue, May 06, 2014 at 07:22:50PM -0700, David Rientjes wrote: > Synchronous memory compaction can be very expensive: it can iterate an > enormous > amount of memory without aborting, constantly rescheduling, waiting on page > locks and lru_lock, etc, if a pageblock cannot be defragmented. > > Unfortunately, it's too expensive for transparent hugepage page faults and > it's much better to simply fallback to pages. On 128GB machines, we find > that > synchronous memory compaction can take O(seconds) for a single thp fault. > > Now that async compaction remembers where it left off without strictly relying > on sync compaction, this makes thp allocations best-effort without causing > egregious latency during fault. We still need to retry async compaction after > reclaim, but this won't stall for seconds. > > Signed-off-by: David Rientjes <[email protected]>
Acked-by: Mel Gorman <[email protected]> -- Mel Gorman SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

