[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20201120151948.c3f4175ed18ed74e46760b87@linux-foundation.org>
Date: Fri, 20 Nov 2020 15:19:48 -0800
From: Andrew Morton <akpm@...ux-foundation.org>
To: Alex Shi <alex.shi@...ux.alibaba.com>
Cc: Konstantin Khlebnikov <koct9i@...il.com>,
Hugh Dickins <hughd@...gle.com>, Yu Zhao <yuzhao@...gle.com>,
Michal Hocko <mhocko@...e.com>, linux-mm@...ck.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH next] mm/swap.c: reduce lock contention in lru_cache_add
On Fri, 20 Nov 2020 16:27:27 +0800 Alex Shi <alex.shi@...ux.alibaba.com> wrote:
> The current relock logical will change lru_lock when found a new
> lruvec, so if 2 memcgs are reading file or alloc page at same time,
> they could hold the lru_lock alternately, and wait for each other for
> fairness attribute of ticket spin lock.
>
> This patch will sort that all lru_locks and only hold them once in
> above scenario. That could reduce fairness waiting for lock reget.
> Than, vm-scalability/case-lru-file-readtwice could get ~5% performance
> gain on my 2P*20core*HT machine.
But what happens when all or most of the pages belong to the same
lruvec? This sounds like the common case - won't it suffer?
Powered by blists - more mailing lists