Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756222AbdLVS4j (ORCPT ); Fri, 22 Dec 2017 13:56:39 -0500 Received: from merlin.infradead.org ([205.233.59.134]:50674 "EHLO merlin.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750864AbdLVS4i (ORCPT ); Fri, 22 Dec 2017 13:56:38 -0500 Date: Fri, 22 Dec 2017 19:56:29 +0100 From: Peter Zijlstra To: Vincent Guittot Cc: Ingo Molnar , linux-kernel , Brendan Jackman , Dietmar Eggemann , Morten Rasmussen Subject: Re: [RFC PATCH 2/5] sched: Add NOHZ_STATS_KICK Message-ID: <20171222185629.lysjebfifgdwvvhu@hirez.programming.kicks-ass.net> References: <20171221102139.177253391@infradead.org> <20171221102235.088181011@infradead.org> <20171222075934.f6yenvcb2zkf2ysd@hirez.programming.kicks-ass.net> <20171222082915.4lcb7xyyooqyjpia@hirez.programming.kicks-ass.net> <20171222091221.ow5vn3ydx3hj4nht@hirez.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20170609 (1.8.3) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mail.home.local id vBMIv5Ve029555 Content-Length: 1399 Lines: 31 On Fri, Dec 22, 2017 at 03:32:53PM +0100, Vincent Guittot wrote: > > The only thing I could come up with is running a timer for this :/ That > > would keep the ILB thing running until all load is decayed (have a patch > > for that somewhere). > > IMHO running a timer doesn't sound really great I tend to agree.. > When we have enough activity on the system, the tick and the periodic > load balance will ensure the update of load of all cpus (including the > idle cpus) at the load balance period pace. > But if we don't have enough activity to trig the periodic update > through ilb or because the system is not overloaded or even almost > idle, we don't have these periodic update anymore. > The goal is to do a lazy update of the blocked load to not hurt too > much power consumption of idle CPUs. When a task wakes up and the > blocked idle load have not been updated for a while, we trig the > update of these blocked loads in parallel to the wake up so the data > will be more accurate for the next events. > It's already too late for the current wake up but that's not a big > deal because the wake up path of a light loaded system is mainly > choosing between previous and current cpu and the load_avg_contrib and > the utilization will have been updated for next events. Right; but I figured we'd try and do it 'right' and see how horrible it is before we try and do funny things.