From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Zijlstra Subject: Re: [PATCH v8 4/5] locking/qspinlock: Introduce starvation avoidance into CNA Date: Mon, 3 Feb 2020 14:45:40 +0100 Message-ID: <20200203134540.GA14879@hirez.programming.kicks-ass.net> References: <3862F8A1-FF9B-40AD-A88E-2C0BA7AF6F58@oracle.com> <20200124075235.GX14914@hirez.programming.kicks-ass.net> <2c6741c5-d89d-4b2c-cebe-a7c7f6eed884@redhat.com> <48ce49e5-98a7-23cd-09f4-8290a65abbb5@redhat.com> <8D3AFB47-B595-418C-9568-08780DDC58FF@oracle.com> <714892cd-d96f-4d41-ae8b-d7b7642a6e3c@redhat.com> <1669BFDE-A1A5-4ED8-B586-035460BBF68A@oracle.com> <20200125111931.GW11457@worktop.programming.kicks-ass.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane-mx.org@lists.infradead.org To: Alex Kogan Cc: linux-arch@vger.kernel.org, Hanjun Guo , Arnd Bergmann , dave.dice@oracle.com, Jan Glauber , x86@kernel.org, Will Deacon , linux@armlinux.org.uk, Steven Sistare , linux-kernel@vger.kernel.org, Ingo Molnar , Borislav Petkov , hpa@zytor.com, Waiman Long , Thomas Gleixner , Daniel Jordan , linux-arm-kernel List-Id: linux-arch.vger.kernel.org T24gVGh1LCBKYW4gMzAsIDIwMjAgYXQgMDU6MDU6MjhQTSAtMDUwMCwgQWxleCBLb2dhbiB3cm90 ZToKPiAKPiA+IE9uIEphbiAyNSwgMjAyMCwgYXQgNjoxOSBBTSwgUGV0ZXIgWmlqbHN0cmEgPHBl dGVyekBpbmZyYWRlYWQub3JnPiB3cm90ZToKPiA+IAo+ID4gT24gRnJpLCBKYW4gMjQsIDIwMjAg YXQgMDE6MTk6MDVQTSAtMDUwMCwgQWxleCBLb2dhbiB3cm90ZToKPiA+IAo+ID4+IElzIHRoZXJl IGEgbGlnaHR3ZWlnaHQgd2F5IHRvIGlkZW50aWZ5IHN1Y2ggYSDigJxwcmlvcml0aXplZOKAnSB0 aHJlYWQ/Cj4gPiAKPiA+IE5vOyBwZW9wbGUgbWlnaHQgZm9yIGluc3RhbmNlIGNhcmUgYWJvdXQg dGFpbCBsYXRlbmNpZXMgYmV0d2VlbiB0aGVpcgo+ID4gaWRlbnRpY2FsbHkgc3BlYydlZCB3b3Jr ZXIgdGFza3MuCj4gCj4gSSB3b3VsZCBhcmd1ZSB0aGF0IHRob3NlIHVzZXJzIG5lZWQgdG8gdHVu ZS9yZWR1Y2UgdGhlIGludHJhLW5vZGUgaGFuZG9mZgo+IHRocmVzaG9sZCBmb3IgdGhlaXIgbmVl ZHMuIE9yIGRpc2FibGUgQ05BIGFsdG9nZXRoZXIuCgpJIHJlYWxseSBkb24ndCBsaWtlIGJvb3Qg dGltZSBhcmd1bWVudHMgKG9yIHR1bmFibGVzIGluIGdlbmVyaWMpIGZvciBhCm1hY2hpbmUgdG8g d29yayBhcyBpdCBzaG91bGQuCgpUaGUgZGVmYXVsdCByZWFsbHkgc2hvdWxkICdqdXN0IHdvcmsn LgoKPiBJbiBnZW5lcmFsLCBQZXRlciwgc2VlbXMgbGlrZSB5b3UgYXJlIG5vdCBvbiBib2FyZCB3 aXRoIHRoZSB3YXkgTG9uZ21hbgo+IHN1Z2dlc3RlZCB0byBoYW5kbGUgcHJpb3JpdGl6ZWQgdGhy ZWFkcy4gQW0gSSByaWdodD8KClJpZ2h0LgoKUHJlc3VtYWJseSB5b3UgaGF2ZSBhIHdvcmtsb2Fk IHdoZXJlIENOQSBpcyBhY3R1YWxseSBhIHdpbj8gVGhhdCBpcywKd2hhdCBpbnNwaXJlZCB5b3Ug dG8gZ28gZG93biB0aGlzIHJvYWQ/IFdoaWNoIGFjdHVhbCBrZXJuZWwgbG9jayBpcyBzbwpjb250 ZW5kZWQgb24gTlVNQSBtYWNoaW5lcyB0aGF0IHdlIG5lZWQgdG8gZG8gdGhpcz8KCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwg bWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8v bGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from merlin.infradead.org ([205.233.59.134]:40260 "EHLO merlin.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728143AbgBCNqW (ORCPT ); Mon, 3 Feb 2020 08:46:22 -0500 Date: Mon, 3 Feb 2020 14:45:40 +0100 From: Peter Zijlstra Subject: Re: [PATCH v8 4/5] locking/qspinlock: Introduce starvation avoidance into CNA Message-ID: <20200203134540.GA14879@hirez.programming.kicks-ass.net> References: <3862F8A1-FF9B-40AD-A88E-2C0BA7AF6F58@oracle.com> <20200124075235.GX14914@hirez.programming.kicks-ass.net> <2c6741c5-d89d-4b2c-cebe-a7c7f6eed884@redhat.com> <48ce49e5-98a7-23cd-09f4-8290a65abbb5@redhat.com> <8D3AFB47-B595-418C-9568-08780DDC58FF@oracle.com> <714892cd-d96f-4d41-ae8b-d7b7642a6e3c@redhat.com> <1669BFDE-A1A5-4ED8-B586-035460BBF68A@oracle.com> <20200125111931.GW11457@worktop.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Sender: linux-arch-owner@vger.kernel.org List-ID: To: Alex Kogan Cc: Waiman Long , linux@armlinux.org.uk, Ingo Molnar , Will Deacon , Arnd Bergmann , linux-arch@vger.kernel.org, linux-arm-kernel , linux-kernel@vger.kernel.org, Thomas Gleixner , Borislav Petkov , hpa@zytor.com, x86@kernel.org, Hanjun Guo , Jan Glauber , Steven Sistare , Daniel Jordan , dave.dice@oracle.com Message-ID: <20200203134540.fea6t6tRfEqEpVK5lSlgBKGg7Uttek_0TQNdQ00x-lE@z> On Thu, Jan 30, 2020 at 05:05:28PM -0500, Alex Kogan wrote: > > > On Jan 25, 2020, at 6:19 AM, Peter Zijlstra 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?