Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756691AbcJSGin (ORCPT ); Wed, 19 Oct 2016 02:38:43 -0400 Received: from mail-wm0-f51.google.com ([74.125.82.51]:37882 "EHLO mail-wm0-f51.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750741AbcJSGif (ORCPT ); Wed, 19 Oct 2016 02:38:35 -0400 MIME-Version: 1.0 In-Reply-To: <20161018121557.GA3142@twins.programming.kicks-ass.net> References: <20160928101422.GR5016@twins.programming.kicks-ass.net> <20160928193731.GD16071@codeblueprint.co.uk> <20161010100107.GZ16071@codeblueprint.co.uk> <20161010173440.GA28945@linaro.org> <20161011102453.GA16071@codeblueprint.co.uk> <20161018102937.GI16071@codeblueprint.co.uk> <20161018111017.GY3142@twins.programming.kicks-ass.net> <20161018112957.GJ16071@codeblueprint.co.uk> <20161018121557.GA3142@twins.programming.kicks-ass.net> From: Vincent Guittot Date: Wed, 19 Oct 2016 08:38:12 +0200 Message-ID: Subject: Re: [PATCH] sched/fair: Do not decay new task load on first enqueue To: Peter Zijlstra Cc: Matt Fleming , Wanpeng Li , Ingo Molnar , "linux-kernel@vger.kernel.org" , Mike Galbraith , Yuyang Du , Dietmar Eggemann Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1603 Lines: 42 On 18 October 2016 at 14:15, Peter Zijlstra wrote: > On Tue, Oct 18, 2016 at 12:29:57PM +0100, Matt Fleming wrote: >> On Tue, 18 Oct, at 01:10:17PM, Peter Zijlstra wrote: >> > >> > I'm entirely lost as to which patch we're talking about by now ;-) >> >> Heh, this one from Vincent, >> >> https://lkml.kernel.org/r/20161010173440.GA28945@linaro.org > > Ah, right. > > Seems like a sensible thing to do, and I suppose I should go finish my > (and yours) update_rq_clock() patches that supersede the patch referred > to in that thing and is depended upon. > > > It might make sense to have helper functions to evaluate those The main issue is the number of parameters used in these conditions that makes helper function not really more readable. > conditions, because currently there's two instances of each, once in the > branch selection and then again (but inverted, we miss the == case fwiw) not sure to catch the comment about inverted and miss the == case The test splits runnable_load_avg is 3 ranges: [0 .. (min_runnable_load - imbalance)] : use the runnable_loab_avg/this_runnable_load which is significantly smaller ] (min_runnable_load - imbalance) .. (min_runnable_load + imbalance) [ : min_runnable_load and runnable_loab_avg/this_runnable_load are close so we compare min_load_avg with avg_load/this_avg_load to choose [(min_runnable_load + imbalance) .. ULONG_MAX] : use min_runnable_load The condition is used when we look for the best other group in the sched_domain and to compare the local group with this best other group > in the return NULL case. > > >