Re: [PATCH v8 4/5] locking/qspinlock: Introduce starvation avoidance into CNA

From: Peter Zijlstra
Date: Mon Feb 03 2020 - 08:46:26 EST


On Thu, Jan 30, 2020 at 05:05:28PM -0500, Alex Kogan wrote:
>
> > On Jan 25, 2020, at 6:19 AM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> >
> > On Fri, Jan 24, 2020 at 01:19:05PM -0500, Alex Kogan wrote:
> >
> >> Is there a lightweight way to identify such a âprioritizedâ thread?
> >
> > No; people might for instance care about tail latencies between their
> > identically spec'ed worker tasks.
>
> I would argue that those users need to tune/reduce the intra-node handoff
> threshold for their needs. Or disable CNA altogether.

I really don't like boot time arguments (or tunables in generic) for a
machine to work as it should.

The default really should 'just work'.

> In general, Peter, seems like you are not on board with the way Longman
> suggested to handle prioritized threads. Am I right?

Right.

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?