From: Mel Gorman <mgorman@suse.de>
To: Rik van Riel <riel@redhat.com>
Cc: Minchan Kim <minchan@kernel.org>, Linux-MM <linux-mm@kvack.org>,
Jim Schutt <jaschut@sandia.gov>,
LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 2/6] mm: vmscan: Scale number of pages reclaimed by reclaim/compaction based on failures
Date: Fri, 10 Aug 2012 09:14:28 +0100 [thread overview]
Message-ID: <20120810081428.GL12690@suse.de> (raw)
In-Reply-To: <50241DC5.7090704@redhat.com>
On Thu, Aug 09, 2012 at 04:29:57PM -0400, Rik van Riel wrote:
> On 08/09/2012 05:20 AM, Mel Gorman wrote:
>
> >The intention is that an allocation can fail but each subsequent attempt will
> >try harder until there is success. Each allocation request does a portion
> >of the necessary work to spread the cost between multiple requests.
>
> At some point we need to stop doing that work, though.
>
> Otherwise we could end up back at the problem where
> way too much memory gets evicted, and we get swap
> storms.
That's the case without this patch as it'll still be running
reclaim/compaction just less aggressively. For it to continually try like
the system must be either continually under load preventing compaction ever
working (which may be undesirable for order-3 and the like) or so badly
fragmented it cannot recover (not aware of a situation where this happened).
You could add a separate patch that checked if
defer_shift == COMPACT_MAX_DEFER_SHIFT and to disable reclaim/compaction in
that case but that will require enough SWAP_CLUSTER_MAX pages to be reclaimed
over time or a large process to exit before compaction succeeds again.
I would expect rates under load to be very low with such a patch
applied.
--
Mel Gorman
SUSE Labs
--
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>
WARNING: multiple messages have this Message-ID (diff)
From: Mel Gorman <mgorman@suse.de>
To: Rik van Riel <riel@redhat.com>
Cc: Minchan Kim <minchan@kernel.org>, Linux-MM <linux-mm@kvack.org>,
Jim Schutt <jaschut@sandia.gov>,
LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 2/6] mm: vmscan: Scale number of pages reclaimed by reclaim/compaction based on failures
Date: Fri, 10 Aug 2012 09:14:28 +0100 [thread overview]
Message-ID: <20120810081428.GL12690@suse.de> (raw)
In-Reply-To: <50241DC5.7090704@redhat.com>
On Thu, Aug 09, 2012 at 04:29:57PM -0400, Rik van Riel wrote:
> On 08/09/2012 05:20 AM, Mel Gorman wrote:
>
> >The intention is that an allocation can fail but each subsequent attempt will
> >try harder until there is success. Each allocation request does a portion
> >of the necessary work to spread the cost between multiple requests.
>
> At some point we need to stop doing that work, though.
>
> Otherwise we could end up back at the problem where
> way too much memory gets evicted, and we get swap
> storms.
That's the case without this patch as it'll still be running
reclaim/compaction just less aggressively. For it to continually try like
the system must be either continually under load preventing compaction ever
working (which may be undesirable for order-3 and the like) or so badly
fragmented it cannot recover (not aware of a situation where this happened).
You could add a separate patch that checked if
defer_shift == COMPACT_MAX_DEFER_SHIFT and to disable reclaim/compaction in
that case but that will require enough SWAP_CLUSTER_MAX pages to be reclaimed
over time or a large process to exit before compaction succeeds again.
I would expect rates under load to be very low with such a patch
applied.
--
Mel Gorman
SUSE Labs
next prev parent reply other threads:[~2012-08-10 8:14 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-07 12:31 [RFC PATCH 0/6] Improve hugepage allocation success rates under load Mel Gorman
2012-08-07 12:31 ` Mel Gorman
2012-08-07 12:31 ` [PATCH 1/6] mm: compaction: Update comment in try_to_compact_pages Mel Gorman
2012-08-07 12:31 ` Mel Gorman
2012-08-07 13:19 ` Rik van Riel
2012-08-07 13:19 ` Rik van Riel
2012-08-07 23:25 ` Minchan Kim
2012-08-07 23:25 ` Minchan Kim
2012-08-07 12:31 ` [PATCH 2/6] mm: vmscan: Scale number of pages reclaimed by reclaim/compaction based on failures Mel Gorman
2012-08-07 12:31 ` Mel Gorman
2012-08-07 13:23 ` Rik van Riel
2012-08-07 13:23 ` Rik van Riel
2012-08-08 1:48 ` Minchan Kim
2012-08-08 1:48 ` Minchan Kim
2012-08-08 7:55 ` Mel Gorman
2012-08-08 7:55 ` Mel Gorman
2012-08-08 8:27 ` Minchan Kim
2012-08-08 8:27 ` Minchan Kim
2012-08-08 8:51 ` Mel Gorman
2012-08-08 8:51 ` Mel Gorman
2012-08-08 23:51 ` Minchan Kim
2012-08-08 23:51 ` Minchan Kim
2012-08-09 7:49 ` Mel Gorman
2012-08-09 7:49 ` Mel Gorman
2012-08-09 8:27 ` Minchan Kim
2012-08-09 8:27 ` Minchan Kim
2012-08-09 9:20 ` Mel Gorman
2012-08-09 9:20 ` Mel Gorman
2012-08-09 20:29 ` Rik van Riel
2012-08-09 20:29 ` Rik van Riel
2012-08-10 8:14 ` Mel Gorman [this message]
2012-08-10 8:14 ` Mel Gorman
2012-08-09 23:27 ` Minchan Kim
2012-08-09 23:27 ` Minchan Kim
2012-08-10 8:34 ` Mel Gorman
2012-08-10 8:34 ` Mel Gorman
2012-08-10 8:48 ` Minchan Kim
2012-08-10 8:48 ` Minchan Kim
2012-08-07 12:31 ` [PATCH 3/6] mm: kswapd: Continue reclaiming for reclaim/compaction if the minimum number of pages have not been reclaimed Mel Gorman
2012-08-07 12:31 ` Mel Gorman
2012-08-07 13:26 ` Rik van Riel
2012-08-07 13:26 ` Rik van Riel
2012-08-08 2:07 ` Minchan Kim
2012-08-08 2:07 ` Minchan Kim
2012-08-08 9:07 ` Mel Gorman
2012-08-08 9:07 ` Mel Gorman
2012-08-08 9:58 ` Mel Gorman
2012-08-08 9:58 ` Mel Gorman
2012-08-07 12:31 ` [PATCH 4/6] mm: compaction: Capture a suitable high-order page immediately when it is made available Mel Gorman
2012-08-07 12:31 ` Mel Gorman
2012-08-07 13:30 ` Rik van Riel
2012-08-07 13:30 ` Rik van Riel
2012-08-07 12:31 ` [PATCH 5/6] mm: have order > 0 compaction start off where it left Mel Gorman
2012-08-07 12:31 ` Mel Gorman
2012-08-07 12:31 ` [PATCH 6/6] mm: have order > 0 compaction start near a pageblock with free pages Mel Gorman
2012-08-07 12:31 ` Mel Gorman
2012-08-07 14:45 ` Rik van Riel
2012-08-07 14:45 ` Rik van Riel
2012-08-07 14:52 ` Mel Gorman
2012-08-07 14:52 ` Mel Gorman
2012-08-07 15:20 ` Jim Schutt
2012-08-07 15:20 ` Jim Schutt
2012-08-07 15:45 ` Mel Gorman
2012-08-07 15:45 ` Mel Gorman
2012-08-08 4:36 ` Minchan Kim
2012-08-08 4:36 ` Minchan Kim
2012-08-08 10:18 ` Mel Gorman
2012-08-08 10:18 ` Mel Gorman
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=20120810081428.GL12690@suse.de \
--to=mgorman@suse.de \
--cc=jaschut@sandia.gov \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=minchan@kernel.org \
--cc=riel@redhat.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.