From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753071AbdKWQAK (ORCPT ); Thu, 23 Nov 2017 11:00:10 -0500 Received: from mail-qk0-f195.google.com ([209.85.220.195]:38049 "EHLO mail-qk0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753013AbdKWQAJ (ORCPT ); Thu, 23 Nov 2017 11:00:09 -0500 X-Google-Smtp-Source: AGs4zMYoDCMM4JfoHVFg/xKp1omCWrQwjXTWC6pahNiMmrW50iANNHQEphT0oy0sRLutjt0kYmhYwA== Date: Thu, 23 Nov 2017 11:00:07 -0500 From: Josef Bacik To: Mike Galbraith Cc: Uladzislau Rezki , Atish Patra , Peter Zijlstra , Joel Fernandes , LKML , Brendan Jackman , Josef Bacik , Ingo Molnar Subject: Re: [PATCH RFC 1/2] sched: Minimize the idle cpu selection race window. Message-ID: <20171123160006.tik2loyzzlavf5ub@destiny> References: <1509427662-25114-1-git-send-email-atish.patra@oracle.com> <1509427662-25114-2-git-send-email-atish.patra@oracle.com> <20171031082009.rxxa57goto6q5xld@hirez.programming.kicks-ass.net> <49e98b00-80c7-b3a4-30fd-bccb382d002b@oracle.com> <20171123105247.wcl2fiypge2pvile@pc636> <1511442781.6505.26.camel@gmx.de> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1511442781.6505.26.camel@gmx.de> User-Agent: NeoMutt/20170714 (1.8.3) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Nov 23, 2017 at 02:13:01PM +0100, Mike Galbraith wrote: > On Thu, 2017-11-23 at 11:52 +0100, Uladzislau Rezki wrote: > > Hello, Atish, Peter, all. > > > > I have a question about if a task's nr_cpus_allowed is 1. > > In that scenario we do not call select_task_rq. Therefore > > even thought a task "p" is placed on idle CPU that CPU > > will not be marked as claimed for wake-up. > > > > What do you think about adding per_cpu(claim_wakeup, cpu) = 1; > > to select_task_rq() instead and possibly get rid of them from > > other places (increases a race window a bit)? > > My thoughts on all of this is that we need less SIS, not more.  Rather > than trying so hard for the absolute lowest wakeup latency, which > induces throughput/efficiency robbing bouncing, I think we'd be better > of considering leaving an already llc affine task where it is if the > average cycle time is sufficiently low that it will likely hit the CPU > RSN.  Completely ignoring low utilization kernel threads would go a > long way to getting rid of bouncing userspace (which tends to have a > meaningful footprint), all over hell and creation. > > You could also periodically send mobile kthreads down the slow path to > try to keep them the hell away from partially busy CPUs, as well as > anything else that hasn't run for a while, to keep background cruft > from continually injecting itself into the middle of a cross core > cyber-sex. > And on this thanksgiving I'm thankful for Mike, and his entertaining early morning emails. Josef