[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170103043411.GA15657@bbox>
Date: Tue, 3 Jan 2017 13:34:11 +0900
From: Minchan Kim <minchan@...nel.org>
To: Jan Kara <jack@...e.cz>
CC: Tim Chen <tim.c.chen@...ux.intel.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Ying Huang <ying.huang@...el.com>, <dave.hansen@...el.com>,
<ak@...ux.intel.com>, <aaron.lu@...el.com>, <linux-mm@...ck.org>,
<linux-kernel@...r.kernel.org>, Hugh Dickins <hughd@...gle.com>,
Shaohua Li <shli@...nel.org>, Rik van Riel <riel@...hat.com>,
Andrea Arcangeli <aarcange@...hat.com>,
"Kirill A . Shutemov" <kirill.shutemov@...ux.intel.com>,
Vladimir Davydov <vdavydov.dev@...il.com>,
Johannes Weiner <hannes@...xchg.org>,
Michal Hocko <mhocko@...nel.org>,
Hillf Danton <hillf.zj@...baba-inc.com>,
Christian Borntraeger <borntraeger@...ibm.com>,
Jonathan Corbet <corbet@....net>,
Peter Zijlstra <peterz@...radead.org>,
Nicholas Piggin <npiggin@...il.com>
Subject: Re: [PATCH v4 0/9] mm/swap: Regular page swap optimizations
Hi Jan,
On Mon, Jan 02, 2017 at 04:48:41PM +0100, Jan Kara wrote:
> Hi,
>
> On Tue 27-12-16 16:45:03, Minchan Kim wrote:
> > > Patch 3 splits the swap cache radix tree into 64MB chunks, reducing
> > > the rate that we have to contende for the radix tree.
> >
> > To me, it's rather hacky. I think it might be common problem for page cache
> > so can we think another generalized way like range_lock? Ccing Jan.
>
> I agree on the hackyness of the patch and that page cache would suffer with
> the same contention (although the files are usually smaller than swap so it
> would not be that visible I guess). But I don't see how range lock would
> help here - we need to serialize modifications of the tree structure itself
> and that is difficult to achieve with the range lock. So what you would
> need is either a different data structure for tracking swap cache entries
> or a finer grained locking of the radix tree.
Thanks for the comment, Jan.
I think there are more general options. One is to shrink batching pages like
Mel and Tim had approached.
https://patchwork.kernel.org/patch/9008421/
https://patchwork.kernel.org/patch/9322793/
Or concurrent page cache by peter.
https://www.kernel.org/doc/ols/2007/ols2007v2-pages-311-318.pdf
Ccing Nick who might have an interest on lockless page cache.
Thanks.
Powered by blists - more mailing lists