linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: David Rientjes <rientjes@google.com>
To: Mel Gorman <mgorman@techsingularity.net>
Cc: Vlastimil Babka <vbabka@suse.cz>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	Hugh Dickins <hughd@google.com>,
	Andrea Arcangeli <aarcange@redhat.com>,
	"Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	Rik van Riel <riel@redhat.com>,
	Joonsoo Kim <iamjoonsoo.kim@lge.com>
Subject: Re: [RFC 1/4] mm, compaction: introduce kcompactd
Date: Fri, 31 Jul 2015 14:17:18 -0700 (PDT)	[thread overview]
Message-ID: <alpine.DEB.2.10.1507311412200.5910@chino.kir.corp.google.com> (raw)
In-Reply-To: <20150730105732.GJ19352@techsingularity.net>

On Thu, 30 Jul 2015, Mel Gorman wrote:

> There will be different opinions on periodic compaction but to be honest,
> periodic compaction also could be implemented from userspace using the
> compact_node sysfs files. The risk with periodic compaction is that it
> can cause stalls in applications that do not care if they fault the pages
> being migrated. This may happen even though there are zero requirements
> for high-order pages from anybody.
> 

When thp is enabled, I think there is always a non-zero requirement for 
high-order pages.  That's why we've shown an increase of 1.4% in cpu 
utilization over all our machines by doing periodic memory compaction.  
It's essential when thp is enabled and no amount of background compaction 
kicked off with a trigger similar to kswapd (which I have agreed with in 
this thread) is going to assist when a very large process is exec'd.

That's why my proposal was for background compaction through kcompactd 
kicked off in the allocator slowpath and for periodic compaction on, at 
the minimum, thp configurations to keep fragmentation low.  Dave Chinner 
seems to also have a usecase absent thp for high-order page cache 
allocation.

I think it would depend on how aggressive you are proposing background 
compaction to be, whether it will ever be MIGRATE_SYNC over all memory, or 
whether it will only terminate when a fragmentation index meets a 
threshold.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2015-07-31 21:17 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-02  8:46 [RFC v2 0/4] Outsourcing compaction for THP allocations to kcompactd Vlastimil Babka
2015-07-02  8:46 ` [RFC 1/4] mm, compaction: introduce kcompactd Vlastimil Babka
2015-07-09 21:53   ` David Rientjes
2015-07-21  9:03     ` Vlastimil Babka
2015-07-21 23:07       ` David Rientjes
2015-07-22 15:23         ` Vlastimil Babka
2015-07-22 22:36           ` David Rientjes
2015-07-23  9:18             ` Vlastimil Babka
2015-07-23 21:21               ` David Rientjes
2015-07-24  6:16                 ` Joonsoo Kim
2015-07-24  6:45                 ` Vlastimil Babka
2015-07-29  0:33                   ` David Rientjes
2015-07-29  6:34                     ` Vlastimil Babka
2015-07-29 21:54                       ` David Rientjes
2015-07-29 23:57                       ` Dave Chinner
2015-07-23  6:03     ` Joonsoo Kim
2015-07-23 20:58       ` David Rientjes
2015-07-24  5:33         ` Joonsoo Kim
2015-07-30 10:58   ` Mel Gorman
2015-07-31 21:17     ` David Rientjes [this message]
2015-07-02  8:46 ` [RFC 2/4] mm, thp: stop preallocating hugepages in khugepaged Vlastimil Babka
2015-07-02  8:46 ` [RFC 3/4] mm, thp: check for hugepage availability " Vlastimil Babka
2015-07-02  8:46 ` [RFC 4/4] mm, thp: check hugepage availability for fault allocations Vlastimil Babka
2015-07-24 14:22 ` [RFC v2 0/4] Outsourcing compaction for THP allocations to kcompactd Rik van Riel
2015-07-27  9:30   ` Vlastimil Babka

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.DEB.2.10.1507311412200.5910@chino.kir.corp.google.com \
    --to=rientjes@google.com \
    --cc=aarcange@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=hughd@google.com \
    --cc=iamjoonsoo.kim@lge.com \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mgorman@techsingularity.net \
    --cc=riel@redhat.com \
    --cc=vbabka@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox