All of lore.kernel.org
 help / color / mirror / Atom feed
From: Xishi Qiu <qiuxishi@huawei.com>
To: Mel Gorman <mgorman@techsingularity.net>
Cc: Vlastimil Babka <vbabka@suse.cz>,
	ChengYi He <chengyihetaipei@gmail.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Michal Hocko <mhocko@suse.com>,
	David Rientjes <rientjes@google.com>,
	Joonsoo Kim <js1304@gmail.com>, "Yaowei Bai" <bywxiaobai@163.com>,
	Alexander Duyck <alexander.h.duyck@redhat.com>,
	"'Kirill A . Shutemov'" <kirill.shutemov@linux.intel.com>,
	Johannes Weiner <hannes@cmpxchg.org>, <linux-mm@kvack.org>,
	<linux-kernel@vger.kernel.org>
Subject: Re: [RFC PATCH 0/2] avoid external fragmentation related to migration fallback
Date: Tue, 2 Feb 2016 09:01:56 +0800	[thread overview]
Message-ID: <56B00004.1070706@huawei.com> (raw)
In-Reply-To: <20160201135351.GB8337@techsingularity.net>

On 2016/2/1 21:53, Mel Gorman wrote:

> On Fri, Jan 29, 2016 at 10:03:52PM +0100, Vlastimil Babka wrote:
>>> Since the root cause is that fallbacks might frequently split order-2
>>> and order-3 pages of the other migration types. This patch tweaks
>>> fallback mechanism to avoid splitting order-2 and order-3 pages. while
>>> fallbacks happen, if the largest feasible pages are less than or queal to
>>> COSTLY_ORDER, i.e. 3, then try to select the smallest feasible pages. The
>>> reason why fallbacks prefer the largest feasiable pages is to increase
>>> fallback efficiency since fallbacks are likely to happen again. By
>>> stealing the largest feasible pages, it could reduce the oppourtunities
>>> of antoher fallback. Besides, it could make consecutive allocations more
>>> approximate to each other and make system less fragment. However, if the
>>> largest feasible pages are less than or equal to order-3, fallbacks might
>>> split it and make the upcoming order-3 page allocations fail.
>>
>> In theory I don't see immediately why preferring smaller pages for
>> fallback should be a clear win. If it's Unmovable allocations stealing
>> from Movable pageblocks, the allocations will spread over larger areas
>> instead of being grouped together. Maybe, for Movable allocations
>> stealing from Unmovable allocations, preferring smallest might make
>> sense and be safe, as any extra fragmentation is fixable bycompaction.
> 
> I strongly agree that spreading the fallback allocations over a larger
> area is likely to have a negative impact. Given the age of the kernel
> being tested, it would make sense to either rebase or at the very last
> backport the patches that affect watermark calculations and the
> treatment of high-order pages.
> 

Is it the feature of MIGRATE_HIGHATOMIC?

Thanks,
Xishi Qiu

WARNING: multiple messages have this Message-ID (diff)
From: Xishi Qiu <qiuxishi@huawei.com>
To: Mel Gorman <mgorman@techsingularity.net>
Cc: Vlastimil Babka <vbabka@suse.cz>,
	ChengYi He <chengyihetaipei@gmail.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Michal Hocko <mhocko@suse.com>,
	David Rientjes <rientjes@google.com>,
	Joonsoo Kim <js1304@gmail.com>, Yaowei Bai <bywxiaobai@163.com>,
	Alexander Duyck <alexander.h.duyck@redhat.com>,
	"'Kirill A . Shutemov'" <kirill.shutemov@linux.intel.com>,
	Johannes Weiner <hannes@cmpxchg.org>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [RFC PATCH 0/2] avoid external fragmentation related to migration fallback
Date: Tue, 2 Feb 2016 09:01:56 +0800	[thread overview]
Message-ID: <56B00004.1070706@huawei.com> (raw)
In-Reply-To: <20160201135351.GB8337@techsingularity.net>

On 2016/2/1 21:53, Mel Gorman wrote:

> On Fri, Jan 29, 2016 at 10:03:52PM +0100, Vlastimil Babka wrote:
>>> Since the root cause is that fallbacks might frequently split order-2
>>> and order-3 pages of the other migration types. This patch tweaks
>>> fallback mechanism to avoid splitting order-2 and order-3 pages. while
>>> fallbacks happen, if the largest feasible pages are less than or queal to
>>> COSTLY_ORDER, i.e. 3, then try to select the smallest feasible pages. The
>>> reason why fallbacks prefer the largest feasiable pages is to increase
>>> fallback efficiency since fallbacks are likely to happen again. By
>>> stealing the largest feasible pages, it could reduce the oppourtunities
>>> of antoher fallback. Besides, it could make consecutive allocations more
>>> approximate to each other and make system less fragment. However, if the
>>> largest feasible pages are less than or equal to order-3, fallbacks might
>>> split it and make the upcoming order-3 page allocations fail.
>>
>> In theory I don't see immediately why preferring smaller pages for
>> fallback should be a clear win. If it's Unmovable allocations stealing
>> from Movable pageblocks, the allocations will spread over larger areas
>> instead of being grouped together. Maybe, for Movable allocations
>> stealing from Unmovable allocations, preferring smallest might make
>> sense and be safe, as any extra fragmentation is fixable bycompaction.
> 
> I strongly agree that spreading the fallback allocations over a larger
> area is likely to have a negative impact. Given the age of the kernel
> being tested, it would make sense to either rebase or at the very last
> backport the patches that affect watermark calculations and the
> treatment of high-order pages.
> 

Is it the feature of MIGRATE_HIGHATOMIC?

Thanks,
Xishi Qiu


--
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:[~2016-02-02  1:04 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-29 19:23 [RFC PATCH 0/2] avoid external fragmentation related to migration fallback ChengYi He
2016-01-29 19:23 ` ChengYi He
2016-01-29 19:24 ` [RFC PATCH 1/2] mm/page_alloc: let migration fallback support pages of requested order ChengYi He
2016-01-29 19:24   ` ChengYi He
2016-01-29 19:25 ` [RFC PATCH 2/2] mm/page_alloc: avoid splitting pages of order 2 and 3 in migration fallback ChengYi He
2016-01-29 19:25   ` ChengYi He
2016-01-30 10:41   ` Xishi Qiu
2016-01-30 10:41     ` Xishi Qiu
2016-01-29 21:03 ` [RFC PATCH 0/2] avoid external fragmentation related to " Vlastimil Babka
2016-01-29 21:03   ` Vlastimil Babka
2016-01-30 10:21   ` Xishi Qiu
2016-01-30 10:21     ` Xishi Qiu
2016-02-01 13:53   ` Mel Gorman
2016-02-01 13:53     ` Mel Gorman
2016-02-02  1:01     ` Xishi Qiu [this message]
2016-02-02  1:01       ` Xishi Qiu

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=56B00004.1070706@huawei.com \
    --to=qiuxishi@huawei.com \
    --cc=akpm@linux-foundation.org \
    --cc=alexander.h.duyck@redhat.com \
    --cc=bywxiaobai@163.com \
    --cc=chengyihetaipei@gmail.com \
    --cc=hannes@cmpxchg.org \
    --cc=js1304@gmail.com \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mgorman@techsingularity.net \
    --cc=mhocko@suse.com \
    --cc=rientjes@google.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 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.