From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754450AbbCXPyH (ORCPT ); Tue, 24 Mar 2015 11:54:07 -0400 Received: from bombadil.infradead.org ([198.137.202.9]:47781 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754434AbbCXPyF (ORCPT ); Tue, 24 Mar 2015 11:54:05 -0400 Date: Tue, 24 Mar 2015 16:53:52 +0100 From: Peter Zijlstra To: Morten Rasmussen Cc: "mingo@redhat.com" , "vincent.guittot@linaro.org" , Dietmar Eggemann , "yuyang.du@intel.com" , "preeti@linux.vnet.ibm.com" , "mturquette@linaro.org" , "nico@linaro.org" , "rjw@rjwysocki.net" , Juri Lelli , "linux-kernel@vger.kernel.org" Subject: Re: [RFCv3 PATCH 33/48] sched: Energy-aware wake-up task placement Message-ID: <20150324155352.GR21418@twins.programming.kicks-ass.net> References: <1423074685-6336-1-git-send-email-morten.rasmussen@arm.com> <1423074685-6336-34-git-send-email-morten.rasmussen@arm.com> <20150324130058.GN23123@twins.programming.kicks-ass.net> <20150324154242.GG18994@e105550-lin.cambridge.arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150324154242.GG18994@e105550-lin.cambridge.arm.com> User-Agent: Mutt/1.5.21 (2012-12-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Mar 24, 2015 at 03:42:42PM +0000, Morten Rasmussen wrote: > Right, I agree that we should preferably do the normal thing for U ~= 1. > We can restructure the wake-up path to follow that pattern, but we need > to know U beforehand to choose the right path. U isn't just > get_cpu_usage(prev_cpu) but some broader view of the of the cpu > utilizations. For example, prev_cpu might be full, but everyone else is > idle so we still want to try to do an energy aware wake-up on some other > cpu. U could be the minium utilization of all cpus in prev_cpu's > sd_llc, which is somewhat similar to what energy_aware_wake_cpu() does. Yeah, or a setting in the root domain set by the regular periodic load balancer; that already grew some mojo to determine this in a patch I recently commented on. > I guess energy_aware_wake_cpu() could be refactored to call > select_idle_sibling() if it find U ~= 1? Sure yeah, that's not the hard part I think.