From: Waiman Long <longman@redhat.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Alex Kogan <alex.kogan@oracle.com>,
linux@armlinux.org.uk, Ingo Molnar <mingo@redhat.com>,
Will Deacon <will.deacon@arm.com>, Arnd Bergmann <arnd@arndb.de>,
linux-arch@vger.kernel.org,
linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
Borislav Petkov <bp@alien8.de>,
hpa@zytor.com, x86@kernel.org, Hanjun Guo <guohanjun@huawei.com>,
Jan Glauber <jglauber@marvell.com>,
Steven Sistare <steven.sistare@oracle.com>,
Daniel Jordan <daniel.m.jordan@oracle.com>,
dave.dice@oracle.com
Subject: Re: [PATCH v8 4/5] locking/qspinlock: Introduce starvation avoidance into CNA
Date: Mon, 3 Feb 2020 10:47:15 -0500 [thread overview]
Message-ID: <15fa978d-bd41-3ecb-83d5-896187e11244@redhat.com> (raw)
In-Reply-To: <20200203152807.GK14914@hirez.programming.kicks-ass.net>
On 2/3/20 10:28 AM, Peter Zijlstra wrote:
> On Mon, Feb 03, 2020 at 09:59:12AM -0500, Waiman Long wrote:
>> On 2/3/20 8:45 AM, Peter Zijlstra wrote:
>>> Presumably you have a workload where CNA is actually a win? That is,
>>> what inspired you to go down this road? Which actual kernel lock is so
>>> contended on NUMA machines that we need to do this?
>> Today, a 2-socket Rome server can have 128 cores and 256 threads. If we
>> scale up more, we could easily have more than 1000 threads in a system.
>> With that many logical cpus available, it is easy to envision some heavy
>> spinlock contention can happen fairly regularly. This patch can
>> alleviate the congestion and improve performance under that
>> circumstance. Of course, the specific locks that are contended will
>> depend on the workloads.
> Not the point. If there isn't an issue today, we don't have anything to
> fix.
>
> Furthermore, we've always adressed specific issues by looking at the
> locking granularity, first.
You are right in that. Unlike ticket spinlock where performance can drop
precipitately over a cliff when there is heavy contention, qspinlock
won't have this kind of performance drop. My suspicion is that slowdowns
caused by heavy spinlock contention in actual workloads are likely to be
more transient in nature and harder to pinpoint. These days, I seldom
get bug report that is related to heavy spinlock contention.
>
> So again, what specific lock inspired all these patches?
>
Maybe Alex has some data to share.
Cheers,
Longman
next prev parent reply other threads:[~2020-02-03 15:47 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-30 19:40 [PATCH v8 0/5] Add NUMA-awareness to qspinlock Alex Kogan
2019-12-30 19:40 ` Alex Kogan
2019-12-30 19:40 ` [PATCH v8 1/5] locking/qspinlock: Rename mcs lock/unlock macros and make them more generic Alex Kogan
2019-12-30 19:40 ` Alex Kogan
2019-12-30 19:40 ` [PATCH v8 2/5] locking/qspinlock: Refactor the qspinlock slow path Alex Kogan
2019-12-30 19:40 ` Alex Kogan
2019-12-30 19:40 ` [PATCH v8 3/5] locking/qspinlock: Introduce CNA into the slow path of qspinlock Alex Kogan
2019-12-30 19:40 ` Alex Kogan
2020-01-03 22:14 ` Waiman Long
2020-01-03 22:14 ` Waiman Long
2020-01-06 15:02 ` Alex Kogan
2020-01-06 15:02 ` Alex Kogan
2020-01-21 13:48 ` Peter Zijlstra
2020-01-21 13:48 ` Peter Zijlstra
2020-01-21 14:42 ` Peter Zijlstra
2020-01-21 14:42 ` Peter Zijlstra
2019-12-30 19:40 ` [PATCH v8 4/5] locking/qspinlock: Introduce starvation avoidance into CNA Alex Kogan
2019-12-30 19:40 ` Alex Kogan
2020-01-06 15:33 ` Waiman Long
2020-01-06 15:33 ` Waiman Long
2020-01-21 13:29 ` Peter Zijlstra
2020-01-21 13:29 ` Peter Zijlstra
2020-01-21 13:50 ` Peter Zijlstra
2020-01-21 13:50 ` Peter Zijlstra
2020-01-21 21:19 ` Daniel Bristot de Oliveira
2020-01-21 21:19 ` Daniel Bristot de Oliveira
2020-01-21 15:45 ` Waiman Long
2020-01-21 15:45 ` Waiman Long
[not found] ` <3862F8A1-FF9B-40AD-A88E-2C0BA7AF6F58@oracle.com>
2020-01-24 7:52 ` Peter Zijlstra
2020-01-24 7:52 ` Peter Zijlstra
2020-01-24 14:42 ` Waiman Long
2020-01-24 15:13 ` Peter Zijlstra
2020-01-24 15:13 ` Peter Zijlstra
2020-01-24 15:19 ` Waiman Long
2020-01-24 15:19 ` Waiman Long
[not found] ` <8D3AFB47-B595-418C-9568-08780DDC58FF@oracle.com>
[not found] ` <714892cd-d96f-4d41-ae8b-d7b7642a6e3c@redhat.com>
2020-01-25 11:16 ` Peter Zijlstra
2020-01-25 11:16 ` Peter Zijlstra
[not found] ` <1669BFDE-A1A5-4ED8-B586-035460BBF68A@oracle.com>
[not found] ` <45660873-731a-a810-8c57-1a5a19d266b4@redhat.com>
2020-01-24 18:51 ` Waiman Long
2020-01-24 18:51 ` Waiman Long
2020-01-25 11:20 ` Peter Zijlstra
2020-01-25 11:20 ` Peter Zijlstra
2020-01-25 19:57 ` Waiman Long
[not found] ` <693E6287-E37C-4C5D-BE33-B3D813BE505D@oracle.com>
2020-01-24 21:12 ` Waiman Long
2020-01-24 21:12 ` Waiman Long
2020-01-24 21:27 ` Alex Kogan
2020-01-25 0:38 ` Waiman Long
2020-01-25 0:38 ` Waiman Long
2020-01-25 11:19 ` Peter Zijlstra
2020-01-25 11:19 ` Peter Zijlstra
2020-01-30 22:05 ` Alex Kogan
2020-02-03 13:45 ` Peter Zijlstra
2020-02-03 13:45 ` Peter Zijlstra
2020-02-03 14:59 ` Waiman Long
2020-02-03 14:59 ` Waiman Long
2020-02-03 15:28 ` Peter Zijlstra
2020-02-03 15:28 ` Peter Zijlstra
2020-02-03 15:47 ` Waiman Long [this message]
[not found] ` <83762715-F68C-42DF-9B41-C4C48DF6762F@oracle.com>
2020-02-04 17:27 ` Peter Zijlstra
2020-02-04 17:27 ` Peter Zijlstra
2020-02-04 17:39 ` Waiman Long
2020-02-04 17:39 ` Waiman Long
2020-02-04 17:53 ` Alex Kogan
2019-12-30 19:40 ` [PATCH v8 5/5] locking/qspinlock: Introduce the shuffle reduction optimization " Alex Kogan
2019-12-30 19:40 ` Alex Kogan
2020-01-22 9:56 ` Peter Zijlstra
2020-01-22 9:56 ` Peter Zijlstra
2020-01-06 15:48 ` [PATCH v8 0/5] Add NUMA-awareness to qspinlock Waiman Long
2020-01-06 15:48 ` Waiman Long
2020-01-08 5:09 ` Shijith Thotton
2020-01-08 5:09 ` Shijith Thotton
2020-01-21 9:21 ` Shijith Thotton
2020-01-21 9:21 ` Shijith Thotton
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=15fa978d-bd41-3ecb-83d5-896187e11244@redhat.com \
--to=longman@redhat.com \
--cc=alex.kogan@oracle.com \
--cc=arnd@arndb.de \
--cc=bp@alien8.de \
--cc=daniel.m.jordan@oracle.com \
--cc=dave.dice@oracle.com \
--cc=guohanjun@huawei.com \
--cc=hpa@zytor.com \
--cc=jglauber@marvell.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=steven.sistare@oracle.com \
--cc=tglx@linutronix.de \
--cc=will.deacon@arm.com \
--cc=x86@kernel.org \
/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